Add InspectableWebContents

This class can be used to create a content::WebContents that can be inspected
by the Chrome Dev Tools. This requires embedding applications to copy
content_shell.pak into their resource bundle.

Right now the dev tools are always docked to the bottom of the view; we don't
yet support undocking or changing the docked side.

Fixes #1.
This commit is contained in:
Adam Roben 2013-03-14 09:03:50 -04:00
parent e1b5e5e1bf
commit b2a79856ef
22 changed files with 601 additions and 5 deletions

View file

@ -0,0 +1,32 @@
#ifndef BRIGHTRAY_BROWSER_INSPECTABLE_WEB_CONTENTS_IMPL_H_
#define BRIGHTRAY_BROWSER_INSPECTABLE_WEB_CONTENTS_IMPL_H_
#include "browser/inspectable_web_contents.h"
namespace brightray {
class InspectableWebContentsView;
class InspectableWebContentsImpl : public InspectableWebContents {
public:
InspectableWebContentsImpl(const content::WebContents::CreateParams&);
virtual ~InspectableWebContentsImpl() OVERRIDE;
virtual InspectableWebContentsView* GetView() const OVERRIDE;
virtual content::WebContents* GetWebContents() const OVERRIDE;
virtual void ShowDevTools() OVERRIDE;
content::WebContents* devtools_web_contents() { return devtools_web_contents_.get(); }
private:
scoped_ptr<content::WebContents> web_contents_;
scoped_ptr<content::WebContents> devtools_web_contents_;
scoped_ptr<InspectableWebContentsView> view_;
DISALLOW_COPY_AND_ASSIGN(InspectableWebContentsImpl);
};
}
#endif