Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / extensions / shell / renderer / shell_content_renderer_client.cc
index 17f8b10..216eac6 100644 (file)
@@ -4,6 +4,7 @@
 
 #include "extensions/shell/renderer/shell_content_renderer_client.h"
 
+#include "content/public/common/content_constants.h"
 #include "content/public/renderer/render_frame.h"
 #include "content/public/renderer/render_frame_observer.h"
 #include "content/public/renderer/render_frame_observer_tracker.h"
@@ -12,7 +13,8 @@
 #include "extensions/renderer/default_dispatcher_delegate.h"
 #include "extensions/renderer/dispatcher.h"
 #include "extensions/renderer/extension_helper.h"
-#include "extensions/renderer/guest_view/guest_view_container.h"
+#include "extensions/renderer/guest_view/extensions_guest_view_container.h"
+#include "extensions/renderer/guest_view/mime_handler_view_container.h"
 #include "extensions/shell/common/shell_extensions_client.h"
 #include "extensions/shell/renderer/shell_extensions_renderer_client.h"
 #include "third_party/WebKit/public/web/WebLocalFrame.h"
@@ -39,11 +41,10 @@ class ShellFrameHelper
  public:
   ShellFrameHelper(content::RenderFrame* render_frame,
                    Dispatcher* extension_dispatcher);
-  virtual ~ShellFrameHelper();
+  ~ShellFrameHelper() override;
 
   // RenderFrameObserver implementation.
-  virtual void WillReleaseScriptContext(v8::Handle<v8::Context>,
-                                        int world_id) OVERRIDE;
+  void WillReleaseScriptContext(v8::Handle<v8::Context>, int world_id) override;
 
  private:
   Dispatcher* extension_dispatcher_;
@@ -178,8 +179,14 @@ bool ShellContentRendererClient::ShouldEnableSiteIsolationPolicy() const {
 content::BrowserPluginDelegate*
 ShellContentRendererClient::CreateBrowserPluginDelegate(
     content::RenderFrame* render_frame,
-    const std::string& mime_type) {
-  return new extensions::GuestViewContainer(render_frame, mime_type);
+    const std::string& mime_type,
+    const GURL& original_url) {
+  if (mime_type == content::kBrowserPluginMimeType) {
+    return new extensions::ExtensionsGuestViewContainer(render_frame);
+  } else {
+    return new extensions::MimeHandlerViewContainer(
+        render_frame, mime_type, original_url);
+  }
 }
 
 }  // namespace extensions