summaryrefslogtreecommitdiffstats
path: root/content/renderer
diff options
context:
space:
mode:
authordarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-14 19:34:09 +0000
committerdarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-14 19:34:09 +0000
commitee41e7d259c691dc90299f1f78e7739903cd403c (patch)
tree338406743d0dce6dfb8ac40efbfad0485213cd13 /content/renderer
parent22b88064b6053fd06ee6fc092fa55fef6bd3c28c (diff)
downloadchromium_src-ee41e7d259c691dc90299f1f78e7739903cd403c.zip
chromium_src-ee41e7d259c691dc90299f1f78e7739903cd403c.tar.gz
chromium_src-ee41e7d259c691dc90299f1f78e7739903cd403c.tar.bz2
Add an is_fullscreen to ViewMsg_Resize, and make it available as a property of
RenderWidget. This enables the RenderWidget to know when it has been placed into fullscreen mode (which will be hooked up to Pepper in a subsequent change). BUG=100264 Review URL: http://codereview.chromium.org/8283029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105544 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/renderer')
-rw-r--r--content/renderer/render_view_impl.cc5
-rw-r--r--content/renderer/render_view_impl.h3
-rw-r--r--content/renderer/render_widget.cc5
-rw-r--r--content/renderer/render_widget.h12
-rw-r--r--content/renderer/render_widget_fullscreen_pepper.cc5
-rw-r--r--content/renderer/render_widget_fullscreen_pepper.h3
6 files changed, 21 insertions, 12 deletions
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
index 9e65677..3e74151 100644
--- a/content/renderer/render_view_impl.cc
+++ b/content/renderer/render_view_impl.cc
@@ -3922,7 +3922,8 @@ void RenderViewImpl::OnMoveOrResizeStarted() {
}
void RenderViewImpl::OnResize(const gfx::Size& new_size,
- const gfx::Rect& resizer_rect) {
+ const gfx::Rect& resizer_rect,
+ bool is_fullscreen) {
if (webview()) {
webview()->hidePopups();
if (send_preferred_size_changes_) {
@@ -3932,7 +3933,7 @@ void RenderViewImpl::OnResize(const gfx::Size& new_size,
UpdateScrollState(webview()->mainFrame());
}
- RenderWidget::OnResize(new_size, resizer_rect);
+ RenderWidget::OnResize(new_size, resizer_rect, is_fullscreen);
}
void RenderViewImpl::DidInitiatePaint() {
diff --git a/content/renderer/render_view_impl.h b/content/renderer/render_view_impl.h
index 5ab8f8c..638e95d 100644
--- a/content/renderer/render_view_impl.h
+++ b/content/renderer/render_view_impl.h
@@ -617,7 +617,8 @@ class RenderViewImpl : public RenderWidget,
// RenderWidget overrides:
virtual void Close();
virtual void OnResize(const gfx::Size& new_size,
- const gfx::Rect& resizer_rect);
+ const gfx::Rect& resizer_rect,
+ bool is_fullscreen);
virtual void DidInitiatePaint();
virtual webkit::ppapi::PluginInstance* GetBitmapForOptimizedPluginPaint(
const gfx::Rect& paint_bounds,
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
index e4333a9..8a5709f 100644
--- a/content/renderer/render_widget.cc
+++ b/content/renderer/render_widget.cc
@@ -77,6 +77,7 @@ RenderWidget::RenderWidget(WebKit::WebPopupType popup_type)
num_swapbuffers_complete_pending_(0),
did_show_(false),
is_hidden_(false),
+ is_fullscreen_(false),
needs_repainting_on_restore_(false),
has_focus_(false),
handling_input_event_(false),
@@ -257,7 +258,8 @@ void RenderWidget::OnClose() {
}
void RenderWidget::OnResize(const gfx::Size& new_size,
- const gfx::Rect& resizer_rect) {
+ const gfx::Rect& resizer_rect,
+ bool is_fullscreen) {
// During shutdown we can just ignore this message.
if (!webwidget_)
return;
@@ -276,6 +278,7 @@ void RenderWidget::OnResize(const gfx::Size& new_size,
needs_repainting_on_restore_ = false;
size_ = new_size;
+ is_fullscreen_ = is_fullscreen;
// We should not be sent a Resize message if we have not ACK'd the previous
DCHECK(!next_paint_is_resize_ack());
diff --git a/content/renderer/render_widget.h b/content/renderer/render_widget.h
index ddc3d9c..1a900ca 100644
--- a/content/renderer/render_widget.h
+++ b/content/renderer/render_widget.h
@@ -91,13 +91,11 @@ class CONTENT_EXPORT RenderWidget
// May return NULL when the window is closing.
WebKit::WebWidget* webwidget() const { return webwidget_; }
+
gfx::NativeViewId host_window() const { return host_window_; }
gfx::Size size() const { return size_; }
bool has_focus() const { return has_focus_; }
- // TODO(darin): add a boolean flag to ViewMsg_Resize indicating whether or
- // not we are in fullscreen mode. Return the value that was reported via the
- // ViewMsg_Resize IPC here.
- bool is_fullscreen() const { return true; }
+ bool is_fullscreen() const { return is_fullscreen_; }
// IPC::Channel::Listener
virtual bool OnMessageReceived(const IPC::Message& msg);
@@ -197,7 +195,8 @@ class CONTENT_EXPORT RenderWidget
void OnClose();
void OnCreatingNewAck(gfx::NativeViewId parent);
virtual void OnResize(const gfx::Size& new_size,
- const gfx::Rect& resizer_rect);
+ const gfx::Rect& resizer_rect,
+ bool is_fullscreen);
virtual void OnWasHidden();
virtual void OnWasRestored(bool needs_repainting);
virtual void OnWasSwappedOut();
@@ -397,6 +396,9 @@ class CONTENT_EXPORT RenderWidget
// Indicates that we shouldn't bother generated paint events.
bool is_hidden_;
+ // Indicates that we are in fullscreen mode.
+ bool is_fullscreen_;
+
// Indicates that we should be repainted when restored. This flag is set to
// true if we receive an invalidation / scroll event from webkit while our
// is_hidden_ flag is set to true. This is used to force a repaint once we
diff --git a/content/renderer/render_widget_fullscreen_pepper.cc b/content/renderer/render_widget_fullscreen_pepper.cc
index 5e7bb20..088be94 100644
--- a/content/renderer/render_widget_fullscreen_pepper.cc
+++ b/content/renderer/render_widget_fullscreen_pepper.cc
@@ -323,13 +323,14 @@ RenderWidgetFullscreenPepper::GetBitmapForOptimizedPluginPaint(
}
void RenderWidgetFullscreenPepper::OnResize(const gfx::Size& size,
- const gfx::Rect& resizer_rect) {
+ const gfx::Rect& resizer_rect,
+ bool is_fullscreen) {
if (context_) {
gpu::gles2::GLES2Implementation* gl = context_->GetImplementation();
gl->ResizeCHROMIUM(size.width(), size.height());
gl->Viewport(0, 0, size.width(), size.height());
}
- RenderWidget::OnResize(size, resizer_rect);
+ RenderWidget::OnResize(size, resizer_rect, is_fullscreen);
}
WebWidget* RenderWidgetFullscreenPepper::CreateWebWidget() {
diff --git a/content/renderer/render_widget_fullscreen_pepper.h b/content/renderer/render_widget_fullscreen_pepper.h
index eaddecf..867de9b 100644
--- a/content/renderer/render_widget_fullscreen_pepper.h
+++ b/content/renderer/render_widget_fullscreen_pepper.h
@@ -59,7 +59,8 @@ class RenderWidgetFullscreenPepper : public RenderWidgetFullscreen,
gfx::Rect* location,
gfx::Rect* clip);
virtual void OnResize(const gfx::Size& new_size,
- const gfx::Rect& resizer_rect);
+ const gfx::Rect& resizer_rect,
+ bool is_fullscreen);
// RenderWidgetFullscreen API.
virtual WebKit::WebWidget* CreateWebWidget();