Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(127)

Issue 2702433002: Clear renderer compositor trees if new page does not render in 4 seconds (Closed)

Created:
3 years, 10 months ago by kenrb
Modified:
3 years, 10 months ago
Reviewers:
CC:
chromium-reviews, jam, cc-bugs_chromium.org, darin-cc_chromium.org, piman+watch_chromium.org, mlamouri+watch-content_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Clear renderer compositor trees if new page does not render in 4 seconds Since r348902, there has been a timer in the browser process that clears a displayed page after a navigation, if the new page does not produce a compositor frame within 4 seconds of the navigation committing. However, if the user flipped to another tab and then back again after the timer fires, the previous content would reappear because the WasShown message would cause a new compositor frame to be sent, still showing the unloaded content. This adds a browser-to-renderer IPC message that is sent when the timer fires, and causes the renderer to reset the trees in its LayerTreeHostImpl, preventing the unloaded content from being re-displayed. BUG=672847 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel

Patch Set 1 #

Patch Set 2 : Removed a semicolon #

Unified diffs Side-by-side diffs Delta from patch set Stats (+46 lines, -3 lines) Patch
M cc/test/fake_proxy.h View 1 chunk +1 line, -0 lines 0 comments Download
M cc/tiles/tile_manager_perftest.cc View 1 chunk +1 line, -1 line 0 comments Download
M cc/trees/layer_tree_host.h View 1 chunk +2 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host_impl.h View 1 chunk +1 line, -1 line 0 comments Download
M cc/trees/layer_tree_host_impl.cc View 1 chunk +1 line, -1 line 0 comments Download
M cc/trees/proxy.h View 1 chunk +2 lines, -0 lines 0 comments Download
M cc/trees/proxy_impl.h View 1 chunk +1 line, -0 lines 0 comments Download
M cc/trees/proxy_impl.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M cc/trees/proxy_main.h View 1 chunk +1 line, -0 lines 0 comments Download
M cc/trees/proxy_main.cc View 1 chunk +7 lines, -0 lines 0 comments Download
M cc/trees/single_thread_proxy.h View 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_impl.cc View 1 chunk +1 line, -0 lines 0 comments Download
M content/common/view_messages.h View 1 1 chunk +5 lines, -0 lines 0 comments Download
M content/renderer/gpu/render_widget_compositor.h View 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/gpu/render_widget_compositor.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M content/renderer/render_widget.h View 1 chunk +2 lines, -0 lines 0 comments Download
M content/renderer/render_widget.cc View 2 chunks +7 lines, -0 lines 0 comments Download

Messages

Total messages: 10 (10 generated)
kenrb
Description was changed from ========== Clear renderer compositor trees if new page does not render ...
3 years, 10 months ago (2017-02-15 21:20:51 UTC) #1
kenrb
The CQ bit was checked by kenrb@chromium.org to run a CQ dry run
3 years, 10 months ago (2017-02-15 21:20:57 UTC) #2
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2702433002/1
3 years, 10 months ago (2017-02-15 21:22:28 UTC) #3
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
3 years, 10 months ago (2017-02-15 22:19:05 UTC) #4
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/391060)
3 years, 10 months ago (2017-02-15 22:19:06 UTC) #5
kenrb
The CQ bit was checked by kenrb@chromium.org to run a CQ dry run
3 years, 10 months ago (2017-02-15 22:23:21 UTC) #6
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2702433002/20001
3 years, 10 months ago (2017-02-15 22:24:39 UTC) #7
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
3 years, 10 months ago (2017-02-15 23:12:02 UTC) #8
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/389273) win_clang on ...
3 years, 10 months ago (2017-02-15 23:12:03 UTC) #9
kenrb
3 years, 10 months ago (2017-02-16 15:46:12 UTC) #10
Description was changed from

==========
Clear renderer compositor trees if new page does not render in 4 seconds

Since r348902, there has been a timer in the browser process that
clears a displayed page after a navigation, if the new page does not
produce a compositor frame within 4 seconds of the navigation
committing. However, if the user flipped to another tab and then back
again after the timer fires, the previous content would reappear
because the WasShown message would cause a new compositor frame to be
sent, still showing the unloaded content.

This adds a browser-to-renderer IPC message that is sent when the timer
fires, and causes the renderer to reset the trees in its
LayerTreeHostImpl, preventing the unloaded content from being
re-displayed.

BUG=672847
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel
==========

to

==========
Clear renderer compositor trees if new page does not render in 4 seconds

Since r348902, there has been a timer in the browser process that
clears a displayed page after a navigation, if the new page does not
produce a compositor frame within 4 seconds of the navigation
committing. However, if the user flipped to another tab and then back
again after the timer fires, the previous content would reappear
because the WasShown message would cause a new compositor frame to be
sent, still showing the unloaded content.

This adds a browser-to-renderer IPC message that is sent when the timer
fires, and causes the renderer to reset the trees in its
LayerTreeHostImpl, preventing the unloaded content from being
re-displayed.

BUG=672847
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel
==========

Powered by Google App Engine
This is Rietveld 408576698