Chromium Code Reviews| Index: content/renderer/render_view.cc |
| diff --git a/content/renderer/render_view.cc b/content/renderer/render_view.cc |
| index 012594724e5e9c40e78a31a48657a470a5eb1e6d..98716da8f6042b0eec880873cd616271221f61ed 100644 |
| --- a/content/renderer/render_view.cc |
| +++ b/content/renderer/render_view.cc |
| @@ -717,6 +717,13 @@ void RenderView::OnNavigate(const ViewMsg_Navigate_Params& params) { |
| is_reload = false; |
| } |
| + // Correct the visible state of the webview before loading a document. |
| + if (params.is_hidden) { |
|
brettw
2011/05/18 22:11:38
Prefer no {} for single-line conditionals (prevail
Shishir
2011/05/20 03:48:19
Removed {} around condition.
At this point the is
|
| + webview()->setVisibilityState(WebKit::WebPageVisibilityStateHidden, true); |
| + } else { |
| + webview()->setVisibilityState(WebKit::WebPageVisibilityStateVisible, true); |
| + } |
| + |
| // A navigation resulting from loading a javascript URL should not be treated |
| // as a browser initiated event. Instead, we want it to look as if the page |
| // initiated any load resulting from JS execution. |
| @@ -3879,6 +3886,7 @@ void RenderView::OnWasHidden() { |
| if (webview()) { |
| webview()->settings()->setMinimumTimerInterval( |
| webkit_glue::kBackgroundTabTimerInterval); |
| + webview()->setVisibilityState(WebKit::WebPageVisibilityStateHidden, false); |
| } |
| #if defined(OS_MACOSX) |
| @@ -3897,6 +3905,7 @@ void RenderView::OnWasRestored(bool needs_repainting) { |
| if (webview()) { |
| webview()->settings()->setMinimumTimerInterval( |
| webkit_glue::kForegroundTabTimerInterval); |
| + webview()->setVisibilityState(WebKit::WebPageVisibilityStateVisible, false); |
| } |
| #if defined(OS_MACOSX) |
| @@ -4097,6 +4106,14 @@ void RenderView::registerProtocolHandler(const WebString& scheme, |
| title)); |
| } |
| +WebKit::WebPageVisibilityState RenderView::visibilityState() const { |
| + if (is_hidden()) { |
|
brettw
2011/05/18 22:11:38
Ditto remove the {}
Shishir
2011/05/20 03:48:19
Done.
|
| + return WebKit::WebPageVisibilityStateHidden; |
| + } else { |
| + return WebKit::WebPageVisibilityStateVisible; |
| + } |
| +} |
| + |
| bool RenderView::IsNonLocalTopLevelNavigation( |
| const GURL& url, WebKit::WebFrame* frame, WebKit::WebNavigationType type) { |
| // Must be a top level frame. |