Index: ui/views/view.cc |
diff --git a/ui/views/view.cc b/ui/views/view.cc |
index 0e733ad6a898f01863c3eccbda30c5de2bc15237..be3bbf5b7ed29370ae2f344bf04420ee029dbe93 100644 |
--- a/ui/views/view.cc |
+++ b/ui/views/view.cc |
@@ -1226,8 +1226,13 @@ const FocusManager* View::GetFocusManager() const { |
void View::RequestFocus() { |
FocusManager* focus_manager = GetFocusManager(); |
- if (focus_manager && IsAccessibilityFocusable()) |
- focus_manager->SetFocusedView(this); |
+ if (focus_manager) { |
+ bool focusable = focus_manager->keyboard_accessible() |
+ ? IsAccessibilityFocusable() |
+ : IsFocusable(); |
+ if (focusable) |
+ focus_manager->SetFocusedView(this); |
+ } |
} |
bool View::SkipDefaultKeyEventProcessing(const ui::KeyEvent& event) { |