summaryrefslogtreecommitdiffstats
path: root/chrome/browser/ui/views/constrained_window_views.h
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/ui/views/constrained_window_views.h')
-rw-r--r--chrome/browser/ui/views/constrained_window_views.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/chrome/browser/ui/views/constrained_window_views.h b/chrome/browser/ui/views/constrained_window_views.h
index 98d1047..c09740c 100644
--- a/chrome/browser/ui/views/constrained_window_views.h
+++ b/chrome/browser/ui/views/constrained_window_views.h
@@ -10,11 +10,15 @@
#include "content/browser/tab_contents/constrained_window.h"
#include "ui/gfx/native_widget_types.h"
#include "ui/gfx/rect.h"
+#include "views/window/window.h"
class ConstrainedTabContentsWindowDelegate;
class ConstrainedWindowAnimation;
class ConstrainedWindowFrameView;
namespace views {
+namespace internal {
+class NativeWindowDelegate;
+}
class NativeWindow;
class NonClientFrameView;
class Window;
@@ -35,6 +39,8 @@ class NativeConstrainedWindowDelegate {
// Creates the frame view for the constrained window.
// TODO(beng): remove once ConstrainedWindowViews is-a views::Window.
virtual views::NonClientFrameView* CreateFrameViewForWindow() = 0;
+
+ virtual views::internal::NativeWindowDelegate* AsNativeWindowDelegate() = 0;
};
class NativeConstrainedWindow {
@@ -54,7 +60,8 @@ class NativeConstrainedWindow {
// A ConstrainedWindow implementation that implements a Constrained Window as
// a child HWND with a custom window frame.
//
-class ConstrainedWindowViews : public ConstrainedWindow,
+class ConstrainedWindowViews : public views::Window,
+ public ConstrainedWindow,
public NativeConstrainedWindowDelegate {
public:
ConstrainedWindowViews(TabContents* owner,
@@ -72,10 +79,14 @@ class ConstrainedWindowViews : public ConstrainedWindow,
virtual void FocusConstrainedWindow() OVERRIDE;
private:
+ // Overridden from views::Window:
+ virtual views::NonClientFrameView* CreateFrameViewForWindow() OVERRIDE;
+
// Overridden from NativeConstrainedWindowDelegate:
virtual void OnNativeConstrainedWindowDestroyed() OVERRIDE;
virtual void OnNativeConstrainedWindowMouseActivate() OVERRIDE;
- virtual views::NonClientFrameView* CreateFrameViewForWindow() OVERRIDE;
+ virtual views::internal::NativeWindowDelegate*
+ AsNativeWindowDelegate() OVERRIDE;
// The TabContents that owns and constrains this ConstrainedWindow.
TabContents* owner_;