#include "base/strings/string_piece.h"
#include "chrome/browser/chrome_notification_types.h"
-#include "chrome/browser/extensions/extension_system.h"
#include "chrome/browser/extensions/window_controller.h"
#include "chrome/browser/file_select_helper.h"
#include "chrome/browser/platform_util.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_dialogs.h"
-#include "chrome/common/extensions/extension_messages.h"
#include "components/web_modal/web_contents_modal_dialog_manager.h"
#include "content/public/browser/notification_source.h"
#include "content/public/browser/render_view_host.h"
#include "content/public/browser/web_contents.h"
-#include "content/public/browser/web_contents_view.h"
+#include "extensions/browser/extension_system.h"
#include "extensions/browser/runtime_data.h"
+#include "extensions/common/extension_messages.h"
#include "grit/browser_resources.h"
+#include "third_party/WebKit/public/web/WebInputEvent.h"
#include "ui/base/resource/resource_bundle.h"
#include "ui/events/keycodes/keyboard_codes.h"
virtual ~AssociatedWebContentsObserver() {}
// content::WebContentsObserver:
- virtual void WebContentsDestroyed(WebContents* web_contents) OVERRIDE {
+ virtual void WebContentsDestroyed() OVERRIDE {
// Deleting |this| from here is safe.
host_->SetAssociatedWebContents(NULL);
}
#elif defined(OS_MACOSX)
view_.reset(new ExtensionViewMac(this, browser));
view_->Init();
-#elif defined(TOOLKIT_GTK)
- view_.reset(new ExtensionViewGtk(this, browser));
- view_->Init();
#else
// TODO(port)
NOTREACHED();
}
void ExtensionViewHost::LoadInitialURL() {
- if (!ExtensionSystem::GetForBrowserContext(browser_context())->
+ if (!ExtensionSystem::Get(browser_context())->
runtime_data()->IsBackgroundPageReady(extension())) {
// Make sure the background page loads before any others.
registrar()->Add(this,
UnhandledKeyboardEvent(source, event);
}
+bool ExtensionViewHost::PreHandleGestureEvent(
+ content::WebContents* source,
+ const blink::WebGestureEvent& event) {
+ // Disable pinch zooming.
+ return event.type == blink::WebGestureEvent::GesturePinchBegin ||
+ event.type == blink::WebGestureEvent::GesturePinchUpdate ||
+ event.type == blink::WebGestureEvent::GesturePinchEnd;
+}
+
content::ColorChooser* ExtensionViewHost::OpenColorChooser(
WebContents* web_contents,
SkColor initial_color,
}
bool ExtensionViewHost::IsWebContentsVisible(WebContents* web_contents) {
- return platform_util::IsVisible(web_contents->GetView()->GetNativeView());
+ return platform_util::IsVisible(web_contents->GetNativeView());
}
gfx::NativeView ExtensionViewHost::GetHostView() const {
gfx::Point ExtensionViewHost::GetDialogPosition(const gfx::Size& size) {
if (!GetVisibleWebContents())
return gfx::Point();
- gfx::Rect bounds = GetVisibleWebContents()->GetView()->GetViewBounds();
+ gfx::Rect bounds = GetVisibleWebContents()->GetViewBounds();
return gfx::Point(
std::max(0, (bounds.width() - size.width()) / 2),
std::max(0, (bounds.height() - size.height()) / 2));
gfx::Size ExtensionViewHost::GetMaximumDialogSize() {
if (!GetVisibleWebContents())
return gfx::Size();
- return GetVisibleWebContents()->GetView()->GetViewBounds().size();
+ return GetVisibleWebContents()->GetViewBounds().size();
}
void ExtensionViewHost::AddObserver(
const content::NotificationSource& source,
const content::NotificationDetails& details) {
if (type == chrome::NOTIFICATION_EXTENSION_BACKGROUND_PAGE_READY) {
- DCHECK(ExtensionSystem::GetForBrowserContext(browser_context())->
+ DCHECK(ExtensionSystem::Get(browser_context())->
runtime_data()->IsBackgroundPageReady(extension()));
LoadInitialURL();
return;
ResourceBundle::GetSharedInstance().GetRawDataResource(
IDR_EXTENSIONS_INFOBAR_CSS));
- render_view_host()->InsertCSS(base::string16(), css.as_string());
+ host_contents()->InsertCSS(css.as_string());
}
} // namespace extensions