electron/brightray/browser/win/devtools_window.h
Adam Roben 9ad77c4a38 Implement undocked dev tools on Windows
DevToolsWindow represents a vanilla top-level window that shows the dev tools.
It uses ui::WindowImpl to implement window functionality, which requires a
newer libchromiumcontent which contains the necessary headers for using that
class, and requires some modifications to brightray.gypi to make WTL's  headers
available.

* vendor/libchromiumcontent 2f53a96...fc02d93 (4):
  > Export third_party/wtl/include headers
  > Export test_support_base.pdb and test_support_content.pdb
  > Fix linker errors with test_support_base on Windows
  > Fix linker errors with base_prefs_test_support on Windows
2013-06-04 14:33:29 -04:00

36 lines
955 B
C++

#ifndef BRIGHTRAY_BROWSER_WIN_DEVTOOLS_WINDOW_H_
#define BRIGHTRAY_BROWSER_WIN_DEVTOOLS_WINDOW_H_
#include "base/memory/weak_ptr.h"
#include "ui/base/win/window_impl.h"
namespace brightray {
class InspectableWebContentsViewWin;
class DevToolsWindow : public ui::WindowImpl, public base::SupportsWeakPtr<DevToolsWindow> {
public:
static DevToolsWindow* Create(InspectableWebContentsViewWin*);
BEGIN_MSG_MAP_EX(DevToolsWindow)
MESSAGE_HANDLER(WM_CREATE, OnCreate)
MESSAGE_HANDLER(WM_DESTROY, OnDestroy)
MESSAGE_HANDLER(WM_SIZE, OnSize)
END_MSG_MAP()
private:
DevToolsWindow(InspectableWebContentsViewWin*);
~DevToolsWindow();
LRESULT OnCreate(UINT message, WPARAM, LPARAM, BOOL& handled);
LRESULT OnDestroy(UINT message, WPARAM, LPARAM, BOOL& handled);
LRESULT OnSize(UINT message, WPARAM, LPARAM, BOOL& handled);
InspectableWebContentsViewWin* controller_;
DISALLOW_COPY_AND_ASSIGN(DevToolsWindow);
};
}
#endif