1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "content/renderer/render_widget_fullscreen.h"
7 #include "content/common/view_messages.h"
8 #include "third_party/WebKit/Source/WebKit/chromium/public/WebWidget.h"
10 using WebKit::WebWidget
;
13 RenderWidgetFullscreen
* RenderWidgetFullscreen::Create(int32 opener_id
) {
14 DCHECK_NE(MSG_ROUTING_NONE
, opener_id
);
15 scoped_refptr
<RenderWidgetFullscreen
> widget(
16 new RenderWidgetFullscreen());
17 widget
->Init(opener_id
);
18 return widget
.release();
21 WebWidget
* RenderWidgetFullscreen::CreateWebWidget() {
22 // TODO(boliu): Handle full screen render widgets here.
23 return RenderWidget::CreateWebWidget(this);
26 void RenderWidgetFullscreen::Init(int32 opener_id
) {
32 new ViewHostMsg_CreateFullscreenWidget(
33 opener_id
, &routing_id_
, &surface_id_
));
36 void RenderWidgetFullscreen::show(WebKit::WebNavigationPolicy
) {
37 DCHECK(!did_show_
) << "received extraneous Show call";
38 DCHECK_NE(MSG_ROUTING_NONE
, routing_id_
);
39 DCHECK_NE(MSG_ROUTING_NONE
, opener_id_
);
43 Send(new ViewHostMsg_ShowFullscreenWidget(opener_id_
, routing_id_
));
44 SetPendingWindowRect(initial_pos_
);
48 RenderWidgetFullscreen::RenderWidgetFullscreen()
49 : RenderWidget(WebKit::WebPopupTypeNone
) {