Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(539)

Unified Diff: chrome/browser/ui/views/extensions/shell_window_views.h

Issue 10825240: Refactor ShellWindow to separate platform-specific code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: gtk Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/views/extensions/shell_window_views.h
diff --git a/chrome/browser/ui/views/extensions/shell_window_views.h b/chrome/browser/ui/views/extensions/shell_window_views.h
index b20d24d768b6c3b6ee5d2847f3c3139d85ffbeb8..8749b134f0ab5e62f9b5ea810ee2ebdd5d23ea2a 100644
--- a/chrome/browser/ui/views/extensions/shell_window_views.h
+++ b/chrome/browser/ui/views/extensions/shell_window_views.h
@@ -5,6 +5,8 @@
#ifndef CHROME_BROWSER_UI_VIEWS_EXTENSIONS_SHELL_WINDOW_VIEWS_H_
#define CHROME_BROWSER_UI_VIEWS_EXTENSIONS_SHELL_WINDOW_VIEWS_H_
+#include "chrome/browser/ui/base_window.h"
+#include "chrome/browser/ui/extensions/native_shell_window.h"
#include "chrome/browser/ui/extensions/shell_window.h"
#include "third_party/skia/include/core/SkRegion.h"
#include "ui/gfx/rect.h"
@@ -12,6 +14,10 @@
class Profile;
+namespace content {
+class WebContents;
+}
+
namespace extensions {
class Extension;
struct DraggableRegion;
@@ -21,13 +27,11 @@ namespace views {
class WebView;
}
-class ShellWindowViews : public ShellWindow,
+class ShellWindowViews : public NativeShellWindow,
public views::WidgetDelegateView {
public:
- ShellWindowViews(Profile* profile,
- const extensions::Extension* extension,
- const GURL& url,
- const CreateParams& params);
+ ShellWindowViews(ShellWindow* shell_window,
+ const ShellWindow::CreateParams& params);
bool frameless() const { return frameless_; }
SkRegion* draggable_region() { return draggable_region_.get(); }
@@ -73,6 +77,19 @@ class ShellWindowViews : public ShellWindow,
virtual gfx::Size GetMaximumSize() OVERRIDE;
virtual void OnFocus() OVERRIDE;
+ // NativeShellWindow implementation.
+ virtual void UpdateWindowTitle() OVERRIDE;
+ virtual void SetFullscreen(bool fullscreen) OVERRIDE;
+ virtual bool IsFullscreenOrPending() const OVERRIDE;
+
+ Profile* profile() { return shell_window_->profile(); }
+ content::WebContents* web_contents() {
+ return shell_window_->web_contents();
+ }
+ const extensions::Extension* extension() {
+ return shell_window_->extension();
+ }
+
private:
friend class ShellWindowFrameView;
@@ -97,6 +114,8 @@ class ShellWindowViews : public ShellWindow,
gfx::Size minimum_size_;
gfx::Size maximum_size_;
+ ShellWindow* shell_window_;
+
DISALLOW_COPY_AND_ASSIGN(ShellWindowViews);
};

Powered by Google App Engine
This is Rietveld 408576698