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

Issue 2697753002: PlzNavigate: Fix dynamic iframe back forward layout test failure (Closed)

Created:
3 years, 10 months ago by ananta
Modified:
3 years, 10 months ago
Reviewers:
clamy, jam, Charlie Reis, nasko
CC:
chromium-reviews, blink-reviews, nasko+codewatch_chromium.org, darin-cc_chromium.org, creis+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

PlzNavigate: Fix dynamic iframe back forward layout test failure This test creates an iframe and changes the src of the iframe to different URLs based on the session storage property. Additionally it also moves back in history in the process. We get renderer initiated navigations initially followed by a browser navigation for the history and then a subsequent navigation for the child frame which is treated as a history navigation in Blink as the history navigation initated above is still incomplete. For PlzNavigate the history navigation initiated for the frame waits for the unload handler on the iframe to complete. This is a browser navigation. Before the unload ack comes in we receive a navigation IPC which is ignored as the pending navigation is a browser navigation and the new navigation does not have user_gesture. The attempted fix is to treat child frame history navigations as renderer navigations if they are not initiated by a user action. BUG=691168 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation

Patch Set 1 #

Patch Set 2 : Remove DCHECK #

Patch Set 3 : Fix compile failures #

Patch Set 4 : Fix browser tests redness #

Patch Set 5 : Refactor #

Total comments: 6

Patch Set 6 : Set the flag in the navigation entry which indicates if the navigation originated from the renderer #

Patch Set 7 : Remove includes #

Patch Set 8 : Add comments #

Patch Set 9 : Fix unittest compile failures #

Patch Set 10 : Renamed is_user_gesture to has_user_gesture #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+63 lines, -24 lines) Patch
M content/browser/frame_host/navigation_request.h View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/frame_host/navigation_request.cc View 1 2 3 4 5 6 7 8 9 2 chunks +4 lines, -2 lines 0 comments Download
M content/browser/frame_host/navigator.h View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -0 lines 0 comments Download
M content/browser/frame_host/navigator.cc View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -0 lines 0 comments Download
M content/browser/frame_host/navigator_impl.h View 1 2 3 4 5 6 7 8 9 3 chunks +4 lines, -0 lines 0 comments Download
M content/browser/frame_host/navigator_impl.cc View 1 2 3 4 5 6 7 8 9 9 chunks +38 lines, -14 lines 1 comment Download
M content/browser/frame_host/render_frame_host_impl.cc View 1 2 3 4 5 6 7 1 chunk +6 lines, -2 lines 0 comments Download
M content/browser/frame_host/render_frame_host_manager_unittest.cc View 1 2 3 4 5 6 7 8 4 chunks +5 lines, -5 lines 0 comments Download
M third_party/WebKit/LayoutTests/FlagExpectations/enable-browser-side-navigation View 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 38 (28 generated)
ananta
3 years, 10 months ago (2017-02-14 03:03:51 UTC) #3
jam
I defer to Camille or Nasko on this
3 years, 10 months ago (2017-02-14 17:52:04 UTC) #8
ananta
+creis
3 years, 10 months ago (2017-02-14 23:01:47 UTC) #12
clamy
Thanks! A few questions and comments below. https://codereview.chromium.org/2697753002/diff/80001/content/browser/frame_host/navigation_request.cc File content/browser/frame_host/navigation_request.cc (right): https://codereview.chromium.org/2697753002/diff/80001/content/browser/frame_host/navigation_request.cc#newcode211 content/browser/frame_host/navigation_request.cc:211: bool browser_initiated ...
3 years, 10 months ago (2017-02-15 16:27:55 UTC) #21
ananta
https://codereview.chromium.org/2697753002/diff/80001/content/browser/frame_host/navigation_request.cc File content/browser/frame_host/navigation_request.cc (right): https://codereview.chromium.org/2697753002/diff/80001/content/browser/frame_host/navigation_request.cc#newcode211 content/browser/frame_host/navigation_request.cc:211: bool browser_initiated = !entry.is_renderer_initiated(); On 2017/02/15 16:27:55, clamy wrote: ...
3 years, 10 months ago (2017-02-15 23:45:03 UTC) #22
Charlie Reis
Sorry for the delay-- I'll try to take a look tomorrow as well. I think ...
3 years, 10 months ago (2017-02-16 01:05:50 UTC) #25
ananta
On 2017/02/16 01:05:50, Charlie Reis wrote: > Sorry for the delay-- I'll try to take ...
3 years, 10 months ago (2017-02-16 01:34:22 UTC) #28
clamy
Thanks! The patch looks good, just one question below. https://codereview.chromium.org/2697753002/diff/180001/content/browser/frame_host/navigator_impl.cc File content/browser/frame_host/navigator_impl.cc (right): https://codereview.chromium.org/2697753002/diff/180001/content/browser/frame_host/navigator_impl.cc#newcode998 content/browser/frame_host/navigator_impl.cc:998: ...
3 years, 10 months ago (2017-02-21 13:46:36 UTC) #35
Charlie Reis
This one should be closed now that https://codereview.chromium.org/2701093002 has landed, right?
3 years, 10 months ago (2017-02-21 17:40:00 UTC) #36
ananta
3 years, 10 months ago (2017-02-21 19:05:51 UTC) #37
On 2017/02/21 17:40:00, Charlie Reis wrote:
> This one should be closed now that https://codereview.chromium.org/2701093002
> has landed, right?

Yes. Sorry I missed this.

Powered by Google App Engine
This is Rietveld 408576698