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

Issue 753028 link

Starred by 1 user

Issue metadata

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



Sign in to add a comment

After clicking a shelf context menu, the next click on the shelf is not processed.

Project Member Reported by newcomer@chromium.org, Aug 7 2017

Issue description

Chrome Version: (copy from chrome://version)
OS: (e.g. Win7, OSX 10.9.5, etc...)

What steps will reproduce the problem?
(1) Open a context menu
(2) Click on any menu item, the context menu will dismiss.
(3) Click anything on the shelf

What is the expected result?
If the app list button is clicked, the launcher should show. If a pinned app is clicked, the pinned app should show.

What happens instead?
Nothing. You have to click twice because the first click is not being used.


Please use labels and text to provide additional information.


For graphics-related bugs, please copy/paste the contents of the about:gpu
page at the end of this report.

 
Cc: -abodenha@chromium.org minch@chromium.org
Owner: msw@chromium.org
MSW@, any idea who to forward this to? It's a context menu bug we think.

Comment 2 by msw@chromium.org, Aug 8 2017

Labels: OS-Chrome
Status: Assigned (was: Untriaged)
I can repro, and that's pretty strange. I'll take a look, a bisect might help.
FYI: Only shelf-view menus trigger repro, shelf-item/desktop/content/etc. don't.
Cc: newcomer@chromium.org
Thanks. CCing myself because I'm interested.

Comment 4 by msw@chromium.org, Aug 8 2017

Labels: Needs-Bisect
This also repros if you don't select a context menu item. (ie. clicking a shelf item, while the shelf-view context menu is open, also does nothing)

Comment 5 by msw@chromium.org, Aug 9 2017

Status: Started (was: Assigned)
My latest patch sets for a tangentially related CL fixes this issue:
https://chromium-review.googlesource.com/c/571517/20..21/ash/shelf/shelf_view.cc
I don't know the underlying defect's cause, but this workaround is simple.
Project Member

Comment 6 by bugdroid1@chromium.org, Aug 18 2017

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

commit 47bf178b9802260a023f43f3170ca7b4e6242163
Author: Michael Wasserman <msw@chromium.org>
Date: Fri Aug 18 23:17:10 2017

mash: Add shelf context menu support.

Chrome serializes its shelf item context menus for Ash.
Ash displays the menus and reports invocations to Chrome.

Add an ash-side ShelfContextMenu class that supports:
-Local menu items to set shelf & wallpaper prefs/settings.
-Proxies Chrome's menu items via mojo structs/interfaces.
-Also used for wallpaper/desktop context menus (via RWC).

Add ash::mojom::ShelfItemDelegate::GetContextMenuItems, etc.:
-Extend ExecuteCommand, MenuItem, etc. to support context menus.
-Denote the command's origin (context/app menu) and display id.
-Allow 64-bit int command and radio-group ids; null images.
-Add ash::mojom::MenuItemType=ui::MenuModel::ItemType traits.

Add common ash::ShelfItemDelegate context menu handling:
-Subclasses override new virtual GetContextMenu() helper.
-GetContextMenuItems() stores the MenuModel for execution.
-ExecuteContextMenuCommand() handles context menu invocation.

Wire up chrome's launcher item subclass context menus.
Make minor launcher context menu class simplifications.
Add a ShelfWindowWatcher context menu item for closing.

Remove mus, ash_shell, test, and desktop context menu classes.
Remove ShellDelegate::CreateContextMenu and ash::ShelfAlignmentMenu.
Inline CanChangeShelfAlignment; move CanUserModifyShelfAutoHideBehavior.
Add unit tests, flip TestWallpaperDelegate::CanOpenSetWallpaperPage.

Bug:  640693 ,  753028 
Test: No Chrome OS shelf/desktop context menu behavior changes.
Change-Id: I3afb93095b4042dca57d16844c5b05308f06a384
TBR: caitkp@chromium.org
Reviewed-on: https://chromium-review.googlesource.com/571517
Commit-Queue: Michael Wasserman <msw@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/master@{#495735}
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/BUILD.gn
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/DEPS
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/mus/BUILD.gn
[delete] https://crrev.com/4abd415249b454c1520f6ab9465564edcb3bb974/ash/mus/context_menu_mus.cc
[delete] https://crrev.com/4abd415249b454c1520f6ab9465564edcb3bb974/ash/mus/context_menu_mus.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/mus/shell_delegate_mus.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/mus/shell_delegate_mus.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/public/cpp/remote_shelf_item_delegate.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/public/cpp/remote_shelf_item_delegate.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/public/cpp/shelf_item_delegate.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/public/cpp/shelf_item_delegate.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/public/cpp/shelf_prefs.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/public/cpp/shelf_prefs.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/public/cpp/shelf_struct_traits.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/public/interfaces/shelf.mojom
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/public/interfaces/shelf.typemap
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/root_window_controller.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/app_list_shelf_item_delegate.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/app_list_shelf_item_delegate.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf.h
[delete] https://crrev.com/4abd415249b454c1520f6ab9465564edcb3bb974/ash/shelf/shelf_alignment_menu.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf_application_menu_model.cc
[add] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf_context_menu_model.cc
[add] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf_context_menu_model.h
[add] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf_context_menu_model_unittest.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf_view.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf_view.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf_view_test_api.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf_view_test_api.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf_view_unittest.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf_window_watcher_item_delegate.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shelf/shelf_window_watcher_item_delegate.h
[delete] https://crrev.com/4abd415249b454c1520f6ab9465564edcb3bb974/ash/shell/context_menu.cc
[delete] https://crrev.com/4abd415249b454c1520f6ab9465564edcb3bb974/ash/shell/context_menu.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shell/shell_delegate_impl.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shell/shell_delegate_impl.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shell/window_watcher_shelf_item_delegate.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shell/window_watcher_shelf_item_delegate.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shell_delegate.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/shell_port.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/strings/BUILD.gn
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/test_shell_delegate.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/test_shell_delegate.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/wallpaper/test_wallpaper_delegate.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/ash/wallpaper/test_wallpaper_delegate.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/BUILD.gn
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/chrome_shell_delegate.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/chrome_shell_delegate.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/app_shortcut_launcher_item_controller.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/app_shortcut_launcher_item_controller.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/app_window_launcher_item_controller.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/app_window_launcher_item_controller.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/arc_app_deferred_launcher_item_controller.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/arc_app_deferred_launcher_item_controller.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/arc_app_window_launcher_item_controller.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/arc_app_window_launcher_item_controller.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/arc_launcher_context_menu.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/arc_launcher_context_menu.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/browser_shortcut_launcher_item_controller.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/browser_shortcut_launcher_item_controller.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/chrome_launcher_controller_browsertest.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/chrome_launcher_controller_unittest.cc
[delete] https://crrev.com/4abd415249b454c1520f6ab9465564edcb3bb974/chrome/browser/ui/ash/launcher/desktop_shell_launcher_context_menu.cc
[delete] https://crrev.com/4abd415249b454c1520f6ab9465564edcb3bb974/chrome/browser/ui/ash/launcher/desktop_shell_launcher_context_menu.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/extension_app_window_launcher_item_controller.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/extension_app_window_launcher_item_controller.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/extension_launcher_context_menu.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/extension_launcher_context_menu.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/launcher_context_menu.cc
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/launcher_context_menu.h
[modify] https://crrev.com/47bf178b9802260a023f43f3170ca7b4e6242163/chrome/browser/ui/ash/launcher/launcher_context_menu_unittest.cc

Comment 7 by msw@chromium.org, Aug 18 2017

Status: Fixed (was: Started)
MSW@, can we merge this into 61?

Comment 9 by msw@chromium.org, Aug 22 2017

No, that change is extensive and needs time to bake; it should not be merged.

Comment 10 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Sign in to add a comment