summaryrefslogtreecommitdiffstats
path: root/chrome/browser/debugger/devtools_window.h
diff options
context:
space:
mode:
authorpfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-01 07:50:04 +0000
committerpfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-01 07:50:04 +0000
commit10fb687b87f5fde62b3df3e2dd5c5d6f5533d715 (patch)
tree32440c96aec4e6fc8f4e9e11f036e599f3e73388 /chrome/browser/debugger/devtools_window.h
parentbb965d182303371fece6ca3254689d73a25e5548 (diff)
downloadchromium_src-10fb687b87f5fde62b3df3e2dd5c5d6f5533d715.zip
chromium_src-10fb687b87f5fde62b3df3e2dd5c5d6f5533d715.tar.gz
chromium_src-10fb687b87f5fde62b3df3e2dd5c5d6f5533d715.tar.bz2
DevTools: Introduce docked version of DevTools.
Review URL: http://codereview.chromium.org/149071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19713 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/debugger/devtools_window.h')
-rw-r--r--chrome/browser/debugger/devtools_window.h46
1 files changed, 27 insertions, 19 deletions
diff --git a/chrome/browser/debugger/devtools_window.h b/chrome/browser/debugger/devtools_window.h
index db6c246..ba75ea7 100644
--- a/chrome/browser/debugger/devtools_window.h
+++ b/chrome/browser/debugger/devtools_window.h
@@ -8,47 +8,55 @@
#include <string>
#include "base/basictypes.h"
-#include "base/scoped_ptr.h"
#include "chrome/browser/debugger/devtools_client_host.h"
-#include "chrome/browser/tabs/tab_strip_model.h"
+#include "chrome/common/notification_registrar.h"
+#include "chrome/common/notification_service.h"
namespace IPC {
class Message;
}
class Browser;
+class BrowserWindow;
class Profile;
class RenderViewHost;
class TabContents;
-class DevToolsWindow : public DevToolsClientHost,
- TabStripModelObserver {
+class DevToolsWindow : public DevToolsClientHost, public NotificationObserver {
public:
- // Factory method for creating platform specific devtools windows.
- DevToolsWindow(Profile* profile);
+ static DevToolsWindow* CreateDevToolsWindow(Profile* profile,
+ RenderViewHost* inspected_rvh,
+ bool docked);
virtual ~DevToolsWindow();
-
- // Show this window.
- void Show();
-
- RenderViewHost* GetRenderViewHost() const;
+ virtual void Show() = 0;
+ bool is_docked() { return docked_; };
+ RenderViewHost* GetRenderViewHost();
// DevToolsClientHost override.
virtual DevToolsWindow* AsDevToolsWindow();
- virtual void InspectedTabClosing();
virtual void SendMessageToClient(const IPC::Message& message);
- // TabStripModelObserver implementation
- virtual void TabClosingAt(TabContents* contents, int index);
- virtual void TabStripEmpty();
+ // NotificationObserver override.
+ virtual void Observe(NotificationType type,
+ const NotificationSource& source,
+ const NotificationDetails& details);
+ TabContents* tab_contents() { return tab_contents_; }
Browser* browser() { return browser_; }
- private:
- Browser* browser_;
+ protected:
+ DevToolsWindow(bool docked);
+ GURL GetContentsUrl();
+ void InitTabContents(TabContents* tab_contents);
+
TabContents* tab_contents_;
- std::string inspected_url_;
- bool inspected_tab_closing_;
+ Browser* browser_;
+
+ private:
+ static BrowserWindow* GetBrowserWindow(RenderViewHost* rvh);
+ NotificationRegistrar registrar_;
+
+ bool docked_;
DISALLOW_COPY_AND_ASSIGN(DevToolsWindow);
};