Index: ash/system/tray/system_tray_bubble.cc |
diff --git a/ash/system/tray/system_tray_bubble.cc b/ash/system/tray/system_tray_bubble.cc |
index 76f0a02e87b3f6afea549df598f94522ce3057aa..bf94470ed85f0c75f6784d3d8513fc6c2e1cc0de 100644 |
--- a/ash/system/tray/system_tray_bubble.cc |
+++ b/ash/system/tray/system_tray_bubble.cc |
@@ -84,7 +84,7 @@ |
DestroyItemViews(); |
// Reset the host pointer in bubble_view_ in case its destruction is deferred. |
if (bubble_view_) |
- bubble_view_->ResetDelegate(); |
+ bubble_view_->reset_delegate(); |
} |
void SystemTrayBubble::UpdateView( |
@@ -210,6 +210,17 @@ |
} |
} |
+void SystemTrayBubble::FocusDefaultIfNeeded() { |
+ views::FocusManager* manager = bubble_view_->GetFocusManager(); |
+ if (!manager || manager->GetFocusedView()) |
+ return; |
+ |
+ views::View* view = |
+ manager->GetNextFocusableView(nullptr, nullptr, false, false); |
+ if (view) |
+ view->RequestFocus(); |
+} |
+ |
void SystemTrayBubble::DestroyItemViews() { |
for (std::vector<ash::SystemTrayItem*>::iterator it = items_.begin(); |
it != items_.end(); ++it) { |