Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(23)

Unified Diff: extensions/renderer/guest_view/guest_view_request.cc

Issue 972313002: Make <webview> use out-of-process iframe architecture. (Closed) Base URL: ssh://saopaulo.wat/mnt/dev/shared/src@testoopif2z-better-chrome
Patch Set: address all comments from Nasko and Charlie, minus is_loading Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: extensions/renderer/guest_view/guest_view_request.cc
diff --git a/extensions/renderer/guest_view/guest_view_request.cc b/extensions/renderer/guest_view/guest_view_request.cc
index 78251d9cdc9b25e04bc53e94b80b4c13e6e8b74b..2ef58fb106c35bdbf01d043f3eadde77e5f7bfc7 100644
--- a/extensions/renderer/guest_view/guest_view_request.cc
+++ b/extensions/renderer/guest_view/guest_view_request.cc
@@ -7,6 +7,7 @@
#include "components/guest_view/common/guest_view_messages.h"
#include "content/public/renderer/render_frame.h"
#include "content/public/renderer/render_view.h"
+#include "extensions/common/guest_view/extensions_guest_view_messages.h"
#include "extensions/renderer/guest_view/guest_view_container.h"
#include "third_party/WebKit/public/web/WebLocalFrame.h"
#include "third_party/WebKit/public/web/WebScopedMicrotaskSuppression.h"
@@ -120,4 +121,42 @@ void GuestViewDetachRequest::HandleResponse(const IPC::Message& message) {
ExecuteCallbackIfAvailable(0 /* argc */, nullptr);
}
+GuestViewAttachIframeRequest::GuestViewAttachIframeRequest(
+ GuestViewContainer* container,
+ int render_frame_routing_id,
+ int guest_instance_id,
+ scoped_ptr<base::DictionaryValue> params,
+ v8::Local<v8::Function> callback,
+ v8::Isolate* isolate)
+ : GuestViewRequest(container, callback, isolate),
+ render_frame_routing_id_(render_frame_routing_id),
+ guest_instance_id_(guest_instance_id),
+ params_(params.Pass()) {
+}
+
+GuestViewAttachIframeRequest::~GuestViewAttachIframeRequest() {
+}
+
+void GuestViewAttachIframeRequest::PerformRequest() {
+ LOG(WARNING)
+ << "GuestViewAttachIframeRequest::PerformRequest, guest_instance_id: "
+ << guest_instance_id_;
+ // Only store callback.
+ DCHECK(container()->render_frame());
+
+ container()->render_frame()->Send(
+ new ExtensionsGuestViewHostMsg_AttachToEmbedderFrame(
+ render_frame_routing_id_, container()->element_instance_id(),
+ guest_instance_id_, *params_));
+}
+
+void GuestViewAttachIframeRequest::HandleResponse(const IPC::Message& message) {
+ ExtensionsGuestViewMsg_GuestReady::Param param;
+ bool message_read_status =
+ ExtensionsGuestViewMsg_GuestReady::Read(&message, &param);
Fady Samuel 2015/05/26 16:42:15 Why is this an ExtensionsGuestViewMsg?
+ DCHECK(message_read_status);
+
+ ExecuteCallbackIfAvailable(0, nullptr);
+}
+
} // namespace extensions

Powered by Google App Engine
This is Rietveld 408576698