diff options
Diffstat (limited to 'chrome/browser/chromeos')
-rw-r--r-- | chrome/browser/chromeos/frame/browser_view.cc | 14 | ||||
-rw-r--r-- | chrome/browser/chromeos/frame/browser_view.h | 8 | ||||
-rw-r--r-- | chrome/browser/chromeos/status/status_area_view.h | 3 |
3 files changed, 24 insertions, 1 deletions
diff --git a/chrome/browser/chromeos/frame/browser_view.cc b/chrome/browser/chromeos/frame/browser_view.cc index c03141a..124ecca 100644 --- a/chrome/browser/chromeos/frame/browser_view.cc +++ b/chrome/browser/chromeos/frame/browser_view.cc @@ -490,6 +490,11 @@ void BrowserView::SetFocusToLocationBar(bool select_all) { ::BrowserView::SetFocusToLocationBar(select_all); } +void BrowserView::FocusChromeOSStatus() { + SaveFocusedView(); + status_area_->SetToolbarFocus(last_focused_view_storage_id(), NULL); +} + void BrowserView::ToggleCompactNavigationBar() { UIStyle new_style = static_cast<UIStyle>((ui_style_ + 1) % 2); if (new_style != StandardStyle && UseVerticalTabs()) @@ -595,6 +600,15 @@ void BrowserView::ShowCompactLocationBarUnderSelectedTab(bool select_all) { } //////////////////////////////////////////////////////////////////////////////// +// BrowserView protected: + +void BrowserView::GetAccessibleToolbars( + std::vector<AccessibleToolbarView*>* toolbars) { + ::BrowserView::GetAccessibleToolbars(toolbars); + toolbars->push_back(status_area_); +} + +//////////////////////////////////////////////////////////////////////////////// // BrowserView private: void BrowserView::InitSystemMenu() { diff --git a/chrome/browser/chromeos/frame/browser_view.h b/chrome/browser/chromeos/frame/browser_view.h index 2bdb029..8a53c97 100644 --- a/chrome/browser/chromeos/frame/browser_view.h +++ b/chrome/browser/chromeos/frame/browser_view.h @@ -5,9 +5,12 @@ #ifndef CHROME_BROWSER_CHROMEOS_FRAME_BROWSER_VIEW_H_ #define CHROME_BROWSER_CHROMEOS_FRAME_BROWSER_VIEW_H_ +#include <vector> + #include "chrome/browser/chromeos/status/status_area_host.h" #include "chrome/browser/views/frame/browser_view.h" +class AccessibleToolbarView; class TabStripModel; namespace menus { @@ -59,6 +62,7 @@ class BrowserView : public ::BrowserView, virtual void Show(); virtual bool IsToolbarVisible() const; virtual void SetFocusToLocationBar(bool select_all); + virtual void FocusChromeOSStatus(); virtual void ToggleCompactNavigationBar(); virtual views::LayoutManager* CreateLayoutManager() const; virtual void InitTabStrip(TabStripModel* tab_strip_model); @@ -88,6 +92,10 @@ class BrowserView : public ::BrowserView, return ui_style_ == CompactStyle; } + protected: + virtual void GetAccessibleToolbars( + std::vector<AccessibleToolbarView*>* toolbars); + private: friend class CompactLocationBarHostTest; diff --git a/chrome/browser/chromeos/status/status_area_view.h b/chrome/browser/chromeos/status/status_area_view.h index c760779..076ed34 100644 --- a/chrome/browser/chromeos/status/status_area_view.h +++ b/chrome/browser/chromeos/status/status_area_view.h @@ -6,6 +6,7 @@ #define CHROME_BROWSER_CHROMEOS_STATUS_STATUS_AREA_VIEW_H_ #include "base/basictypes.h" +#include "chrome/browser/views/accessible_toolbar_view.h" #include "views/view.h" namespace chromeos { @@ -19,7 +20,7 @@ class StatusAreaHost; // This class is used to wrap the small informative widgets in the upper-right // of the window title bar. It is used on ChromeOS only. -class StatusAreaView : public views::View { +class StatusAreaView : public AccessibleToolbarView { public: enum OpenTabsMode { OPEN_TABS_ON_LEFT = 1, |