OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 CHROME_RENDERER_PLUGINS_PLUGIN_PREROLLER_H_ | 5 #ifndef CHROME_RENDERER_PLUGINS_PLUGIN_PREROLLER_H_ |
6 #define CHROME_RENDERER_PLUGINS_PLUGIN_PREROLLER_H_ | 6 #define CHROME_RENDERER_PLUGINS_PLUGIN_PREROLLER_H_ |
7 | 7 |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "content/public/common/webplugininfo.h" | 9 #include "content/public/common/webplugininfo.h" |
10 #include "content/public/renderer/plugin_instance_throttler.h" | 10 #include "content/public/renderer/plugin_instance_throttler.h" |
11 #include "content/public/renderer/render_frame_observer.h" | 11 #include "content/public/renderer/render_frame_observer.h" |
12 #include "third_party/WebKit/public/web/WebPluginParams.h" | 12 #include "third_party/WebKit/public/web/WebPluginParams.h" |
13 #include "url/gurl.h" | 13 #include "url/gurl.h" |
14 | 14 |
15 namespace blink { | 15 namespace blink { |
16 class WebLocalFrame; | 16 class WebLocalFrame; |
17 class WebPlugin; | |
18 } | 17 } |
19 | 18 |
20 class SkBitmap; | 19 class SkBitmap; |
21 | 20 |
22 // This class manages a plugin briefly for the purposes of keyframe extraction. | 21 // This class manages a plugin briefly for the purposes of keyframe extraction. |
23 // Once a keyframe has been extracted, this class will replace the plugin with | 22 // Once a keyframe has been extracted, this class will replace the plugin with |
24 // a ChromePluginPlaceholder. The actual plugin will continue to live in a | 23 // a ChromePluginPlaceholder. The actual plugin will continue to live in a |
25 // throttled state. This class manages its own lifetime. | 24 // throttled state. This class manages its own lifetime. |
26 class PluginPreroller : public content::PluginInstanceThrottler::Observer, | 25 class PluginPreroller : public content::PluginInstanceThrottler::Observer, |
27 public content::RenderFrameObserver { | 26 public content::RenderFrameObserver { |
(...skipping 27 matching lines...) Expand all Loading... |
55 base::string16 message_; | 54 base::string16 message_; |
56 | 55 |
57 content::PluginInstanceThrottler* throttler_; | 56 content::PluginInstanceThrottler* throttler_; |
58 | 57 |
59 GURL keyframe_data_url_; | 58 GURL keyframe_data_url_; |
60 | 59 |
61 DISALLOW_COPY_AND_ASSIGN(PluginPreroller); | 60 DISALLOW_COPY_AND_ASSIGN(PluginPreroller); |
62 }; | 61 }; |
63 | 62 |
64 #endif // CHROME_RENDERER_PLUGINS_PLUGIN_PREROLLER_H_ | 63 #endif // CHROME_RENDERER_PLUGINS_PLUGIN_PREROLLER_H_ |
OLD | NEW |