New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 633270 link

Starred by 2 users

Issue metadata

Status: Archived
Owner:
Closed: Aug 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

Any accelerators added by mus should not conflict with accelerators added by wm

Project Member Reported by jamescook@chromium.org, Aug 1 2016

Issue description

There's a duplicate keyboard shortcut for Ctrl+Alt+Shift+S

out_oxygen/Default/chrome --user-data-dir=/tmp/foo --ash-debug-shortcuts --no-sandbox --ash-host-window-bounds="1000+0-1024x768" --mash

[23286:23286:0801/091153:3626927988:FATAL:accelerator_controller_registrar.cc(28)] Check failed: added. 
#0 0x7f1dc014507e base::debug::StackTrace::StackTrace()
#1 0x7f1dc01a0a4c logging::LogMessage::~LogMessage()
#2 0x7f1dc2afba12 ash::mus::(anonymous namespace)::OnAcceleratorAdded()
#3 0x7f1dc143028f _ZN4base8internal13FunctorTraitsIPFvbEvE6InvokeIJbEEEvS3_DpOT_
#4 0x7f1dc1430258 _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKPFvbEJbEEEvOT_DpOT0_
#5 0x7f1dc1430216 _ZN4base8internal7InvokerINS0_9BindStateIPFvbEJEEES3_E7RunImplIRKS4_RKSt5tupleIJEEJEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEEOb
#6 0x7f1dc14301cc _ZN4base8internal7InvokerINS0_9BindStateIPFvbEJEEES3_E3RunEPNS0_13BindStateBaseEOb
#7 0x7f1dc0efdb47 base::Callback<>::Run()
#8 0x7f1dc27c169e ui::mojom::WindowManagerClient_AddAccelerator_ForwardToCallback::Accept()
#9 0x7f1dc4339a88 mojo::InterfaceEndpointClient::HandleValidatedMessage()
#10 0x7f1dc43395a1 mojo::InterfaceEndpointClient::HandleIncomingMessageThunk::Accept()
#11 0x7f1dc27c5c6e ui::mojom::WindowManagerClientResponseValidator::Accept()
#12 0x7f1dc433b1f2 mojo::InterfaceEndpointClient::HandleIncomingMessage()
#13 0x7f1dc434846a mojo::internal::MultiplexRouter::ProcessIncomingMessage()
#14 0x7f1dc4347cd4 mojo::internal::MultiplexRouter::Accept()
#15 0x7f1dc4344941 mojo::MessageHeaderValidator::Accept()
#16 0x7f1dc4334748 mojo::Connector::ReadSingleMessage()
#17 0x7f1dc43351fc mojo::Connector::ReadAllAvailableMessages()
#18 0x7f1dc4335123 mojo::Connector::OnHandleReadyInternal()
#19 0x7f1dc4334ffb mojo::Connector::OnWatcherHandleReady()
#20 0x7f1dc10af8e8 _ZN4base8internal13FunctorTraitsIMN10extensions3api12cast_channel14CastSocketImplEFviEvE6InvokeIPS5_JRKiEEEvS7_OT_DpOT0_
#21 0x7f1dc10af806 _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKMN10extensions3api12cast_channel14CastSocketImplEFviEJPS7_RKiEEEvOT_DpOT0_
#22 0x7f1dc4335e37 _ZN4base8internal7InvokerINS0_9BindStateIMN4mojo9ConnectorEFvjEJNS0_17UnretainedWrapperIS4_EEEEEFvjEE7RunImplIRKS6_RKSt5tupleIJS8_EEJLm0EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEEOj
#23 0x7f1dc4335d8c _ZN4base8internal7InvokerINS0_9BindStateIMN4mojo9ConnectorEFvjEJNS0_17UnretainedWrapperIS4_EEEEEFvjEE3RunEPNS0_13BindStateBaseEOj
#24 0x7f1dc0ef3fe2 base::Callback<>::Run()
#25 0x7f1dc0f592a1 mojo::Watcher::OnHandleReady()
#26 0x7f1dc0ef91da _ZN4base8internal13FunctorTraitsIMN11google_apis19UrlFetchRequestBaseEFvNS2_17DriveApiErrorCodeEEvE6InvokeIRKNS_7WeakPtrIS3_EEJRKS4_EEEvS6_OT_DpOT0_
#27 0x7f1dc0f59b6f _ZN4base8internal12InvokeHelperILb1EvE8MakeItSoIRKMN4mojo7WatcherEFvjERKNS_7WeakPtrIS5_EEJRKjEEEvOT_OT0_DpOT1_
#28 0x7f1dc0f59ae3 _ZN4base8internal7InvokerINS0_9BindStateIMN4mojo7WatcherEFvjEJNS_7WeakPtrIS4_EEjEEEFvvEE7RunImplIRKS6_RKSt5tupleIJS8_jEEJLm0ELm1EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEE
#29 0x7f1dc0f598fc _ZN4base8internal7InvokerINS0_9BindStateIMN4mojo7WatcherEFvjEJNS_7WeakPtrIS4_EEjEEEFvvEE3RunEPNS0_13BindStateBaseE
#30 0x7f1dc0128c8e base::Callback<>::Run()
#31 0x7f1dc014a97e base::debug::TaskAnnotator::RunTask()
#32 0x7f1dc01bd481 base::MessageLoop::RunTask()
#33 0x7f1dc01bd704 base::MessageLoop::DeferOrRunPendingTask()
#34 0x7f1dc01bd9ce base::MessageLoop::DoWork()
#35 0x7f1dc01d426c base::MessagePumpLibevent::Run()
#36 0x7f1dc01bceea base::MessageLoop::RunHandler()
#37 0x7f1dc02545a4 base::RunLoop::Run()
#38 0x7f1dc01bc091 base::MessageLoop::Run()
#39 0x7f1dc0e7dcdb MashRunner::StartChildApp()
 
Hmm. Even after rebinding the key to not be a duplicate I get a DCHECK failure in the window server. At least it doesn't crash on startup with the rebind. https://codereview.chromium.org/2197203003

Perhaps accelerators registered inside the WS are somehow different than those registered by ash.

[12577:12577:0801/110458:10411992822:FATAL:platform_display.cc(225)] Check failed: key_press_event->GetCharacter() == char_event.GetCharacter() (13 vs. 10)
#0 0x7f89adf9f07e base::debug::StackTrace::StackTrace()
#1 0x7f89adffaa4c logging::LogMessage::~LogMessage()
#2 0x7f89b448b4c8 ui::ws::DefaultPlatformDisplay::DispatchEvent()
#3 0x7f899a458d59 _ZN4base8internal13FunctorTraitsIMN2ui22PlatformWindowDelegateEFvPNS2_5EventEEvE6InvokeIPS3_JS5_EEEvS7_OT_DpOT0_
#4 0x7f899a458c96 _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKMN2ui22PlatformWindowDelegateEFvPNS4_5EventEEJPS5_S7_EEEvOT_DpOT0_
#5 0x7f899a458c27 _ZN4base8internal7InvokerINS0_9BindStateIMN2ui22PlatformWindowDelegateEFvPNS3_5EventEEJNS0_17UnretainedWrapperIS4_EEEEEFvS6_EE7RunImplIRKS8_RKSt5tupleIJSA_EEJLm0EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEEOS6_
#6 0x7f899a458a1c _ZN4base8internal7InvokerINS0_9BindStateIMN2ui22PlatformWindowDelegateEFvPNS3_5EventEEJNS0_17UnretainedWrapperIS4_EEEEEFvS6_EE3RunEPNS0_13BindStateBaseEOS6_
#7 0x7f89a2402ed6 base::Callback<>::Run()
#8 0x7f89a2402caa ui::DispatchEventFromNativeUiEvent()
#9 0x7f899a4582f7 ui::X11WindowOzone::DispatchEvent()
#10 0x7f89ae40ebbf ui::PlatformEventSource::DispatchEvent()
#11 0x7f899a4c5cbb ui::X11EventSourceLibevent::ProcessXEvent()
#12 0x7f899a4b8cca ui::X11EventSource::ExtractCookieDataDispatchEvent()
#13 0x7f899a4b8c01 ui::X11EventSource::DispatchXEvents()
#14 0x7f899a4c61ff ui::X11EventSourceLibevent::OnFileCanReadWithoutBlocking()
#15 0x7f89ae02ceb1 base::MessagePumpLibevent::FileDescriptorWatcher::OnFileCanReadWithoutBlocking()
#16 0x7f89ae02e1cf base::MessagePumpLibevent::OnLibeventNotification()
#17 0x7f89ae22a5de event_process_active
#18 0x7f89ae229c27 event_base_loop
#19 0x7f89ae02e4a0 base::MessagePumpLibevent::Run()
#20 0x7f89ae016eea base::MessageLoop::RunHandler()
#21 0x7f89ae0ae5a4 base::RunLoop::Run()
#22 0x7f89ae016091 base::MessageLoop::Run()
#23 0x7f89aecd7cdb MashRunner::StartChildApp()

Comment 2 by sky@chromium.org, Aug 1 2016

Cc: e...@chromium.org
I believe Elliot added the DCHECK we're hitting here: https://codereview.chromium.org/1234623004 . 
Cc: jamescook@chromium.org
Owner: ----
Status: Untriaged (was: Started)
Abandoning my CL, since it sounds like we want WM accelerators to co-exist with app accelerators.

Could one of you guys take this bug? This isn't actually blocking me, I was just trying a quick fix.

Comment 4 by sky@chromium.org, Aug 1 2016

Owner: sky@chromium.org
Status: Started (was: Untriaged)
Summary: Any accelerators added by mus should not conflict with accelerators added by wm (was: mash DCHECK on startup in OnAcceleratorAdded with --ash-debug-shortcuts)
I will handle the 

Comment 5 by sky@chromium.org, Aug 1 2016

Sorry for my poor previous description. I'll handle fixing accelerators (and morphed this bug into that). I filed 633401 for the display DCHECK.
Project Member

Comment 6 by bugdroid1@chromium.org, Aug 3 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5aafc35e42348c0aedfee277e27d7c4f920b3122

commit 5aafc35e42348c0aedfee277e27d7c4f920b3122
Author: sky <sky@chromium.org>
Date: Wed Aug 03 21:44:58 2016

Changes accelerators registered by mus to not interfere with those of client

Also converts away from using EventMatcher for these accelerators as
EventMatcher is overkill here. If we really need to use EventMatcher
we can do that later on.

This results in a bit of duplication for ctrl-alt-shift-s, but I think
that's ok.

BUG= 633270 
TEST=none
R=jamescook@chromium.org

Review-Url: https://codereview.chromium.org/2208443002
Cr-Commit-Position: refs/heads/master@{#409629}

[modify] https://crrev.com/5aafc35e42348c0aedfee277e27d7c4f920b3122/ash/mus/accelerators/accelerator_controller_registrar.cc
[modify] https://crrev.com/5aafc35e42348c0aedfee277e27d7c4f920b3122/services/ui/ws/window_manager_state.cc
[modify] https://crrev.com/5aafc35e42348c0aedfee277e27d7c4f920b3122/services/ui/ws/window_manager_state.h

Comment 7 by sky@chromium.org, Aug 3 2016

Status: Fixed (was: Started)
Labels: VerifyIn-54

Comment 9 by dchan@chromium.org, Oct 7 2016

Labels: VerifyIn-55

Comment 10 by dchan@google.com, Nov 19 2016

Labels: VerifyIn-56

Comment 11 by dchan@google.com, Jan 21 2017

Labels: VerifyIn-57

Comment 12 by dchan@google.com, Mar 4 2017

Labels: VerifyIn-58

Comment 13 by dchan@google.com, Apr 17 2017

Labels: VerifyIn-59

Comment 14 by dchan@google.com, May 30 2017

Labels: VerifyIn-60
Labels: VerifyIn-61

Comment 16 by dchan@chromium.org, Oct 14 2017

Status: Archived (was: Fixed)
Components: -MUS Internals>Services>WindowService

Sign in to add a comment