OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 #include "chrome/renderer/render_widget_fullscreen.h" | 5 #include "chrome/renderer/render_widget_fullscreen.h" |
6 | 6 |
7 #include "chrome/common/render_messages.h" | 7 #include "chrome/common/render_messages.h" |
8 #include "chrome/renderer/render_thread.h" | 8 #include "chrome/renderer/render_thread.h" |
| 9 #include "third_party/WebKit/WebKit/chromium/public/WebFullscreenMediaPlayerClie
nt.h" |
9 #include "third_party/WebKit/WebKit/chromium/public/WebWidget.h" | 10 #include "third_party/WebKit/WebKit/chromium/public/WebWidget.h" |
10 | 11 |
| 12 using WebKit::WebFullscreenMediaPlayerClient; |
11 using WebKit::WebWidget; | 13 using WebKit::WebWidget; |
12 | 14 |
13 // static | 15 // static |
14 RenderWidgetFullscreen* RenderWidgetFullscreen::Create( | 16 RenderWidgetFullscreen* RenderWidgetFullscreen::Create( |
15 int32 opener_id, RenderThreadBase* render_thread, | 17 int32 opener_id, RenderThreadBase* render_thread, |
16 WebKit::WebPopupType popup_type) { | 18 WebKit::WebPopupType popup_type) { |
17 DCHECK_NE(MSG_ROUTING_NONE, opener_id); | 19 DCHECK_NE(MSG_ROUTING_NONE, opener_id); |
18 scoped_refptr<RenderWidgetFullscreen> widget = new RenderWidgetFullscreen( | 20 scoped_refptr<RenderWidgetFullscreen> widget = new RenderWidgetFullscreen( |
19 render_thread, popup_type); | 21 render_thread, popup_type); |
20 widget->Init(opener_id); | 22 widget->Init(opener_id); |
21 return widget.release(); | 23 return widget.release(); |
22 } | 24 } |
23 | 25 |
24 // static | 26 // static |
25 WebWidget* RenderWidgetFullscreen::CreateWebWidget( | 27 WebWidget* RenderWidgetFullscreen::CreateWebWidget( |
26 RenderWidgetFullscreen* render_widget) { | 28 RenderWidgetFullscreen* render_widget) { |
27 switch (render_widget->popup_type_) { | 29 switch (render_widget->popup_type_) { |
28 // TODO(boliu): Add full screen render widgets here. | 30 case WebKit::WebPopupTypeFullscreenMediaPlayer: |
| 31 return WebKit::WebFullscreenMediaPlayerClient::create(render_widget); |
29 default: | 32 default: |
30 return RenderWidget::CreateWebWidget(render_widget); | 33 return RenderWidget::CreateWebWidget(render_widget); |
31 } | 34 } |
32 return NULL; | 35 return NULL; |
33 } | 36 } |
34 | 37 |
35 void RenderWidgetFullscreen::Init(int32 opener_id) { | 38 void RenderWidgetFullscreen::Init(int32 opener_id) { |
36 DCHECK(!webwidget_); | 39 DCHECK(!webwidget_); |
37 | 40 |
38 RenderWidget::DoInit( | 41 RenderWidget::DoInit( |
(...skipping 12 matching lines...) Expand all Loading... |
51 did_show_ = true; | 54 did_show_ = true; |
52 Send(new ViewHostMsg_ShowFullscreenWidget(opener_id_, routing_id_)); | 55 Send(new ViewHostMsg_ShowFullscreenWidget(opener_id_, routing_id_)); |
53 SetPendingWindowRect(initial_pos_); | 56 SetPendingWindowRect(initial_pos_); |
54 } | 57 } |
55 } | 58 } |
56 | 59 |
57 RenderWidgetFullscreen::RenderWidgetFullscreen(RenderThreadBase* render_thread, | 60 RenderWidgetFullscreen::RenderWidgetFullscreen(RenderThreadBase* render_thread, |
58 WebKit::WebPopupType popup_type) | 61 WebKit::WebPopupType popup_type) |
59 : RenderWidget(render_thread, popup_type) { | 62 : RenderWidget(render_thread, popup_type) { |
60 } | 63 } |
OLD | NEW |