#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"
#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"
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_;
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