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

Side by Side Diff: components/plugins/renderer/mobile_youtube_plugin.h

Issue 116163008: Move the plugin placeholder from CppBoundClass to gin::Wrappable (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef COMPONENTS_PLUGINS_RENDERER_MOBILE_YOUTUBE_PLUGIN_H_ 5 #ifndef COMPONENTS_PLUGINS_RENDERER_MOBILE_YOUTUBE_PLUGIN_H_
6 #define COMPONENTS_PLUGINS_RENDERER_MOBILE_YOUTUBE_PLUGIN_H_ 6 #define COMPONENTS_PLUGINS_RENDERER_MOBILE_YOUTUBE_PLUGIN_H_
7 7
8 #include "components/plugins/renderer/plugin_placeholder.h" 8 #include "components/plugins/renderer/plugin_placeholder.h"
9 #include "gin/wrappable.h"
9 10
10 namespace plugins { 11 namespace plugins {
11 12
12 // Class representing placeholders for old style embedded youtube video on 13 // Class representing placeholders for old style embedded youtube video on
13 // mobile device. For old style embedded youtube video, it has a url in the form 14 // mobile device. For old style embedded youtube video, it has a url in the form
14 // of http://www.youtube.com/v/VIDEO_ID. This placeholder replaces the url with 15 // of http://www.youtube.com/v/VIDEO_ID. This placeholder replaces the url with
15 // a simple html page and clicking the play image redirects the user to the 16 // a simple html page and clicking the play image redirects the user to the
16 // mobile youtube app. 17 // mobile youtube app.
17 class MobileYouTubePlugin : public PluginPlaceholder { 18 class MobileYouTubePlugin : public PluginPlaceholder,
19 public gin::Wrappable<MobileYouTubePlugin> {
18 public: 20 public:
21 static gin::WrapperInfo kWrapperInfo;
22 static v8::Local<v8::ObjectTemplate> GetObjectTemplate(v8::Isolate* isolate);
23
19 MobileYouTubePlugin(content::RenderFrame* render_frame, 24 MobileYouTubePlugin(content::RenderFrame* render_frame,
20 blink::WebFrame* frame, 25 blink::WebFrame* frame,
21 const blink::WebPluginParams& params, 26 const blink::WebPluginParams& params,
22 base::StringPiece& template_html, 27 base::StringPiece& template_html,
23 GURL placeholderDataUrl); 28 GURL placeholderDataUrl);
24 29
25 // Whether this is a youtube url. 30 // Whether this is a youtube url.
26 static bool IsYouTubeURL(const GURL& url, const std::string& mime_type); 31 static bool IsYouTubeURL(const GURL& url, const std::string& mime_type);
27 32
28 private: 33 private:
34 virtual ~MobileYouTubePlugin();
35
29 // Opens a youtube app in the current tab. 36 // Opens a youtube app in the current tab.
30 void OpenYoutubeUrlCallback(const webkit_glue::CppArgumentList& args, 37 void OpenYoutubeUrlCallback();
31 webkit_glue::CppVariant* result);
32 38
33 // WebViewPlugin::Delegate (via PluginPlaceholder) method 39 // WebViewPlugin::Delegate (via PluginPlaceholder) method
34 virtual void BindWebFrame(blink::WebFrame* frame) OVERRIDE; 40 virtual void BindWebFrame(blink::WebFrame* frame) OVERRIDE;
35 41
36 DISALLOW_COPY_AND_ASSIGN(MobileYouTubePlugin); 42 DISALLOW_COPY_AND_ASSIGN(MobileYouTubePlugin);
37 }; 43 };
38 44
39 } // namespace plugins 45 } // namespace plugins
40 46
41 #endif // COMPONENTS_PLUGINS_RENDERER_MOBILE_YOUTUBE_PLUGIN_H_ 47 #endif // COMPONENTS_PLUGINS_RENDERER_MOBILE_YOUTUBE_PLUGIN_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698