summaryrefslogtreecommitdiffstats
path: root/content/browser/browser_plugin/browser_plugin_guest.cc
diff options
context:
space:
mode:
authorfsamuel <fsamuel@chromium.org>2014-09-10 07:25:44 -0700
committerCommit bot <commit-bot@chromium.org>2014-09-10 14:30:52 +0000
commit90e100b3b8d6149cce60045aea28ff7eb41f3483 (patch)
treef5026dcf351ee354f8418994f06e304c30750d35 /content/browser/browser_plugin/browser_plugin_guest.cc
parent5dc661941cd63a94cca1026ac9783b6382de9ae3 (diff)
downloadchromium_src-90e100b3b8d6149cce60045aea28ff7eb41f3483.zip
chromium_src-90e100b3b8d6149cce60045aea28ff7eb41f3483.tar.gz
chromium_src-90e100b3b8d6149cce60045aea28ff7eb41f3483.tar.bz2
Browser Plugin: Move input to RWHVGuest to support interstitial pages
BUG=273089 Review URL: https://codereview.chromium.org/554733003 Cr-Commit-Position: refs/heads/master@{#294170}
Diffstat (limited to 'content/browser/browser_plugin/browser_plugin_guest.cc')
-rw-r--r--content/browser/browser_plugin/browser_plugin_guest.cc56
1 files changed, 10 insertions, 46 deletions
diff --git a/content/browser/browser_plugin/browser_plugin_guest.cc b/content/browser/browser_plugin/browser_plugin_guest.cc
index 09db70f..89ab8fc 100644
--- a/content/browser/browser_plugin/browser_plugin_guest.cc
+++ b/content/browser/browser_plugin/browser_plugin_guest.cc
@@ -128,6 +128,16 @@ WebContentsImpl* BrowserPluginGuest::CreateNewGuestWindow(
bool BrowserPluginGuest::OnMessageReceivedFromEmbedder(
const IPC::Message& message) {
+ RenderWidgetHostViewGuest* rwhv = static_cast<RenderWidgetHostViewGuest*>(
+ web_contents()->GetRenderWidgetHostView());
+ if (rwhv &&
+ rwhv->OnMessageReceivedFromEmbedder(
+ message,
+ static_cast<RenderViewHostImpl*>(
+ embedder_web_contents()->GetRenderViewHost()))) {
+ return true;
+ }
+
bool handled = true;
IPC_BEGIN_MESSAGE_MAP(BrowserPluginGuest, message)
IPC_MESSAGE_HANDLER(BrowserPluginHostMsg_CompositorFrameSwappedACK,
@@ -140,8 +150,6 @@ bool BrowserPluginGuest::OnMessageReceivedFromEmbedder(
OnExecuteEditCommand)
IPC_MESSAGE_HANDLER(BrowserPluginHostMsg_ExtendSelectionAndDelete,
OnExtendSelectionAndDelete)
- IPC_MESSAGE_HANDLER(BrowserPluginHostMsg_HandleInputEvent,
- OnHandleInputEvent)
IPC_MESSAGE_HANDLER(BrowserPluginHostMsg_ImeConfirmComposition,
OnImeConfirmComposition)
IPC_MESSAGE_HANDLER(BrowserPluginHostMsg_ImeSetComposition,
@@ -631,50 +639,6 @@ void BrowserPluginGuest::OnReclaimCompositorResources(
params.ack);
}
-void BrowserPluginGuest::OnHandleInputEvent(
- int browser_plugin_instance_id,
- const gfx::Rect& guest_window_rect,
- const blink::WebInputEvent* event) {
- RenderViewHostImpl* guest_rvh = static_cast<RenderViewHostImpl*>(
- GetWebContents()->GetRenderViewHost());
-
- if (blink::WebInputEvent::isMouseEventType(event->type)) {
- guest_rvh->ForwardMouseEvent(
- *static_cast<const blink::WebMouseEvent*>(event));
- return;
- }
-
- if (event->type == blink::WebInputEvent::MouseWheel) {
- guest_rvh->ForwardWheelEvent(
- *static_cast<const blink::WebMouseWheelEvent*>(event));
- return;
- }
-
- if (blink::WebInputEvent::isKeyboardEventType(event->type)) {
- RenderViewHostImpl* embedder_rvh = static_cast<RenderViewHostImpl*>(
- embedder_web_contents_->GetRenderViewHost());
- if (!embedder_rvh->GetLastKeyboardEvent())
- return;
- NativeWebKeyboardEvent keyboard_event(
- *embedder_rvh->GetLastKeyboardEvent());
- guest_rvh->ForwardKeyboardEvent(keyboard_event);
- return;
- }
-
- if (blink::WebInputEvent::isTouchEventType(event->type)) {
- guest_rvh->ForwardTouchEventWithLatencyInfo(
- *static_cast<const blink::WebTouchEvent*>(event),
- ui::LatencyInfo());
- return;
- }
-
- if (blink::WebInputEvent::isGestureEventType(event->type)) {
- guest_rvh->ForwardGestureEvent(
- *static_cast<const blink::WebGestureEvent*>(event));
- return;
- }
-}
-
void BrowserPluginGuest::OnLockMouse(bool user_gesture,
bool last_unlocked_by_target,
bool privileged) {