| Index: extensions/renderer/dispatcher.cc
|
| diff --git a/extensions/renderer/dispatcher.cc b/extensions/renderer/dispatcher.cc
|
| index f210e27e2b0f290c16be549822ba72fb78076561..dcf6176bab2b02e3f0aa02ef3b18c544cc4488da 100644
|
| --- a/extensions/renderer/dispatcher.cc
|
| +++ b/extensions/renderer/dispatcher.cc
|
| @@ -30,6 +30,7 @@
|
| #include "extensions/common/feature_switch.h"
|
| #include "extensions/common/features/feature.h"
|
| #include "extensions/common/features/feature_provider.h"
|
| +#include "extensions/common/guest_view/extensions_guest_view_messages.h"
|
| #include "extensions/common/manifest.h"
|
| #include "extensions/common/manifest_constants.h"
|
| #include "extensions/common/manifest_handlers/background_info.h"
|
| @@ -57,6 +58,7 @@
|
| #include "extensions/renderer/extension_helper.h"
|
| #include "extensions/renderer/extensions_renderer_client.h"
|
| #include "extensions/renderer/file_system_natives.h"
|
| +#include "extensions/renderer/guest_view/extensions_guest_view_container.h"
|
| #include "extensions/renderer/guest_view/guest_view_internal_custom_bindings.h"
|
| #include "extensions/renderer/i18n_custom_bindings.h"
|
| #include "extensions/renderer/id_generator_custom_bindings.h"
|
| @@ -709,6 +711,8 @@ bool Dispatcher::OnControlMessageReceived(const IPC::Message& message) {
|
| IPC_MESSAGE_HANDLER(ExtensionMsg_ClearTabSpecificPermissions,
|
| OnClearTabSpecificPermissions)
|
| IPC_MESSAGE_HANDLER(ExtensionMsg_UsingWebRequestAPI, OnUsingWebRequestAPI)
|
| + IPC_MESSAGE_HANDLER_GENERIC(ExtensionsGuestViewMsg_ContentWindowReady,
|
| + OnGuestContentWindowReady(message))
|
| IPC_MESSAGE_FORWARD(ExtensionMsg_WatchPages,
|
| content_watcher_.get(),
|
| ContentWatcher::OnWatchPages)
|
| @@ -1033,6 +1037,22 @@ void Dispatcher::OnUsingWebRequestAPI(bool webrequest_used) {
|
| webrequest_used_ = webrequest_used;
|
| }
|
|
|
| +void Dispatcher::OnGuestContentWindowReady(const IPC::Message& message) {
|
| + ExtensionsGuestViewMsg_ContentWindowReady::Param param;
|
| + bool read_status =
|
| + ExtensionsGuestViewMsg_ContentWindowReady::Read(&message, ¶m);
|
| + DCHECK(read_status);
|
| + // We do not have a BrowserPluginManager to route this message,
|
| + // do it here.
|
| + // TODO(lazyboy): dispatcher.cc is too generic to handle this message, find
|
| + // a better way to route the message.
|
| + int element_instance_id = get<0>(param);
|
| + auto container = static_cast<ExtensionsGuestViewContainer*>(
|
| + GuestViewContainer::FromID(element_instance_id));
|
| + DCHECK(container);
|
| + container->OnMessage(message);
|
| +}
|
| +
|
| void Dispatcher::OnUserScriptsUpdated(const std::set<HostID>& changed_hosts,
|
| const std::vector<UserScript*>& scripts) {
|
| UpdateActiveExtensions();
|
|
|