Chromium Code Reviews| Index: ui/views/controls/menu/menu_host.cc |
| diff --git a/ui/views/controls/menu/menu_host.cc b/ui/views/controls/menu/menu_host.cc |
| index 5e8593b98ab06b57bc2e780541d1fe18b8f904b4..28fb95e02a612c2cd3dc59e24f7a4ee262e8a9cc 100644 |
| --- a/ui/views/controls/menu/menu_host.cc |
| +++ b/ui/views/controls/menu/menu_host.cc |
| @@ -92,6 +92,10 @@ void MenuHost::DestroyMenuHost() { |
| destroying_ = true; |
| static_cast<MenuHostRootView*>(GetRootView())->ClearSubmenu(); |
| Close(); |
| + // Since |submenu_| is not a child view it is necessary to notify its |
| + // observers so that they can clean up the focus and drag and drop state. |
| + View::ViewHierarchyChangedDetails details(false, NULL, submenu_, NULL); |
| + ViewHierarchyChanged(details); |
|
sky
2014/03/27 21:40:43
I think this is a deficiency in how focus is clean
varkha
2014/03/27 22:05:10
In this case the menu does not have focus (the men
sky
2014/03/27 23:31:28
Isn't this happening because SubmenuView is client
|
| } |
| void MenuHost::SetMenuHostBounds(const gfx::Rect& bounds) { |