summaryrefslogtreecommitdiffstats
path: root/views/widget/widget.h
diff options
context:
space:
mode:
authorjcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-30 18:48:00 +0000
committerjcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-30 18:48:00 +0000
commit82166b65c8cdd7cb855c2d018be8c6c815324af6 (patch)
treef96034ed91ce66d6a3ba2afa07cdd4be1e55b264 /views/widget/widget.h
parent7811b768ff61d58153a198a273cdb39581a77542 (diff)
downloadchromium_src-82166b65c8cdd7cb855c2d018be8c6c815324af6.zip
chromium_src-82166b65c8cdd7cb855c2d018be8c6c815324af6.tar.gz
chromium_src-82166b65c8cdd7cb855c2d018be8c6c815324af6.tar.bz2
This CL removes the last (major) Windows specific part out of the focus manager.
It was previously landed and reverted because it broke the reliability tests. http://codereview.chromium.org/125148 The breakage was caused by constrained windows not getting a hold of the FocusManager when in unparented tabs. The fix is to ensure unparented tab still have a way to access their FocusManager for proper closure. Files changed from the previous patch that need reviewing: native_tab_contents_container_win.cc tab_contents_view_win.h tab_contents_view_win.cc BUG=None TEST=Run all tests (unit, ui, interactive). Extensively test the focus in Chrome. Review URL: http://codereview.chromium.org/146093 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19617 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views/widget/widget.h')
-rw-r--r--views/widget/widget.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/views/widget/widget.h b/views/widget/widget.h
index 1dabf08..9c4c5ef 100644
--- a/views/widget/widget.h
+++ b/views/widget/widget.h
@@ -17,6 +17,7 @@ class Rect;
namespace views {
class Accelerator;
+class FocusManager;
class RootView;
class TooltipManager;
class Window;
@@ -105,13 +106,17 @@ class Widget {
virtual Window* GetWindow() { return NULL; }
virtual const Window* GetWindow() const { return NULL; }
- // Get the theme provider.
+ // Gets the theme provider.
virtual ThemeProvider* GetThemeProvider() const { return NULL; }
- // Get the default theme provider; this is necessary for when a widget has
+ // Gets the default theme provider; this is necessary for when a widget has
// no profile (and ThemeProvider) associated with it. The default theme
// provider provides a default set of bitmaps that such widgets can use.
virtual ThemeProvider* GetDefaultThemeProvider() { return NULL; }
+
+ // Returns the FocusManager for this widget.
+ // Note that all widgets in a widget hierarchy share the same focus manager.
+ virtual FocusManager* GetFocusManager() { return NULL; }
};
} // namespace views