Index: chrome/browser/ui/panels/panel.h |
=================================================================== |
--- chrome/browser/ui/panels/panel.h (revision 85003) |
+++ chrome/browser/ui/panels/panel.h (working copy) |
@@ -9,9 +9,11 @@ |
#include "chrome/browser/ui/browser_window.h" |
#include "base/memory/scoped_ptr.h" |
+#include "chrome/browser/ui/panels/panel_originator_delegate.h" |
#include "ui/gfx/rect.h" |
class PanelManager; |
+class PanelOriginatorDelegate; |
// A platform independent implementation of BrowserWindow for Panels. This |
// class would get the first crack at all the BrowserWindow calls for Panels and |
@@ -128,11 +130,17 @@ |
#if defined(OS_CHROMEOS) |
virtual void ShowKeyboardOverlay(gfx::NativeWindow owning_window) OVERRIDE; |
#endif |
+ virtual Panel* GetAsPanel() OVERRIDE; |
// Construct a native panel BrowserWindow implementation for the specified |
// |browser|. |
static BrowserWindow* CreateNativePanel(Browser* browser, Panel* panel); |
+ PanelOriginatorDelegate* originator() const { return originator_.get(); } |
+ void set_originator(PanelOriginatorDelegate* originator) { |
+ originator_.reset(originator); |
+ } |
+ |
#ifdef UNIT_TEST |
BrowserWindow* browser_window() { return browser_window_.get(); } |
#endif |
@@ -152,6 +160,8 @@ |
// not allowed for Panel. |
void SetPanelBounds(const gfx::Rect& bounds); |
+ scoped_ptr<PanelOriginatorDelegate> originator_; |
+ |
// Platform specifc BrowserWindow implementation for panels. It'd be one of |
// PanelBrowserWindowGtk/PanelBrowserView/PanelBrowserWindowCocoa. |
scoped_ptr<BrowserWindow> browser_window_; |