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

Issue 2381503003: PlzNav: Fix NavigationControllerBrowserTest.EnsureSamePageNavigationUpdatesFrameNaviga… (Closed)

Created:
4 years, 2 months ago by scottmg
Modified:
4 years, 1 month ago
Reviewers:
clamy, Charlie Reis, nasko, boliu
CC:
chromium-reviews, jam, nasko+codewatch_chromium.org, darin-cc_chromium.org, creis+watch_chromium.org, Takashi Toyoshima, Avi (use Gerrit)
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

PlzNav: Fix NavigationControllerBrowserTest.EnsureSamePageNavigationUpdatesFrameNaviga… This test is failing in PlzNav because https://cs.chromium.org/chromium/src/content/browser/frame_host/navigation_controller_impl_browsertest.cc?q=%22Simulate+the+user+hitting+Enter%22&sq=package:chromium&l=5943&dr=C is creating a new navigation entry, so the GoBack() goes to the wrong place. It's doing that because FrameHostMsg_DidCommitProvisionalLoad_Params.did_create_new_entry is true. That in turn is because SendDidCommitProvisionalLoad is getting a commit type of WebStandardCommit (not WebHistoryInertCommit like it does in non-PlzNav). *That* is because here https://cs.chromium.org/chromium/src/third_party/WebKit/Source/core/loader/FrameLoader.cpp?rcl=0&l=839 the url being checked is the already-redirected one in the PlzNavigate case (sub.a.com), but m_documentLoader->urlForHistory() is the pre-redirected one (a.com/server-redirect?sub...). So, this works in non-PlzNav because Blink tells us that it should replace the current entry (i.e. it's like a reload). Instead of relying on Blink to determine that, check if the render frame node's last committed url is the original url we navigated to there, and that we're not just mucking with history navigation, in which case we convert the normal load to a reload. R=nasko@chromium.org,clamy@chromium.org BUG=630103, 475027, 536102 Committed: https://crrev.com/28bbbb16194c7337e22c3e0bda752ae6b4b681cf Cr-Commit-Position: refs/heads/master@{#429302}

Patch Set 1 #

Patch Set 2 : . #

Patch Set 3 : get correct reload behaviour #

Patch Set 4 : . #

Patch Set 5 : . #

Total comments: 5

Patch Set 6 : . #

Patch Set 7 : try reload in requestnav #

Patch Set 8 : . #

Patch Set 9 : . #

Total comments: 4

Patch Set 10 : change for both plznav and non-plznav (2) #

Patch Set 11 : add virtual url test that fails with change #

Patch Set 12 : fix for data url with virtual entry #

Patch Set 13 : improve test (3) #

Total comments: 8

Patch Set 14 : rebase #

Patch Set 15 : test on android again #

Patch Set 16 : try in navigation controller impl instead #

Patch Set 17 : another try #

Patch Set 18 : disable logging #

Patch Set 19 : android webview fix #

Patch Set 20 : remove logging #

Total comments: 4

Patch Set 21 : update comment #

Unified diffs Side-by-side diffs Delta from patch set Stats (+16 lines, -1 line) Patch
M content/browser/frame_host/navigation_controller_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +16 lines, -0 lines 0 comments Download
M testing/buildbot/filters/browser-side-navigation.linux.content_browsertests.filter View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +0 lines, -1 line 0 comments Download

Messages

Total messages: 129 (94 generated)
scottmg
Long CL description, since I don't really know what the right fix is. :) I ...
4 years, 2 months ago (2016-09-29 06:22:29 UTC) #6
clamy
I think the FrameLoader should receive a FrameLoadType that we determine based on the information ...
4 years, 2 months ago (2016-09-29 15:37:44 UTC) #7
clamy
I think the FrameLoader should receive a FrameLoadType that we determine based on the information ...
4 years, 2 months ago (2016-09-29 15:37:45 UTC) #8
scottmg
I think this is ready for a look. It's a bit of an ugly condition, ...
4 years, 2 months ago (2016-10-04 19:51:40 UTC) #27
clamy
+creis whose opinion I'd like on this. https://codereview.chromium.org/2381503003/diff/80001/content/browser/frame_host/navigation_controller_impl_browsertest.cc File content/browser/frame_host/navigation_controller_impl_browsertest.cc (right): https://codereview.chromium.org/2381503003/diff/80001/content/browser/frame_host/navigation_controller_impl_browsertest.cc#newcode6054 content/browser/frame_host/navigation_controller_impl_browsertest.cc:6054: ui::PAGE_TRANSITION_RELOAD, std::string()); ...
4 years, 2 months ago (2016-10-05 12:47:04 UTC) #30
nasko
I'm not sure that the hash based navigation is what is throwing this off. I ...
4 years, 2 months ago (2016-10-05 22:07:09 UTC) #31
scottmg
On 2016/10/05 22:07:09, nasko (slow) wrote: > I'm not sure that the hash based navigation ...
4 years, 2 months ago (2016-10-05 22:27:57 UTC) #32
scottmg
On 2016/10/05 22:27:57, scottmg wrote: > On 2016/10/05 22:07:09, nasko (slow) wrote: > > I'm ...
4 years, 2 months ago (2016-10-06 00:20:19 UTC) #33
scottmg
On 2016/10/06 00:20:19, scottmg wrote: > On 2016/10/05 22:27:57, scottmg wrote: > > On 2016/10/05 ...
4 years, 2 months ago (2016-10-06 00:39:47 UTC) #34
Charlie Reis
Sorry for missing most of this discussion, and I'm finding it a bit hard to ...
4 years, 2 months ago (2016-10-07 17:25:03 UTC) #36
scottmg
On 2016/10/07 17:25:03, Charlie Reis (OOO soon) wrote: > Sorry for missing most of this ...
4 years, 2 months ago (2016-10-07 17:39:24 UTC) #37
scottmg
On 2016/10/07 17:39:24, scottmg wrote: > On 2016/10/07 17:25:03, Charlie Reis (OOO soon) wrote: > ...
4 years, 2 months ago (2016-10-07 17:41:02 UTC) #38
nasko
On 2016/10/07 17:41:02, scottmg wrote: > On 2016/10/07 17:39:24, scottmg wrote: > > On 2016/10/07 ...
4 years, 2 months ago (2016-10-07 18:12:29 UTC) #41
scottmg
Hi again, I think this approach is nicer now. We can just switch to a ...
4 years, 2 months ago (2016-10-08 00:41:09 UTC) #52
clamy
Thanks! Lgtm. https://codereview.chromium.org/2381503003/diff/180001/content/browser/frame_host/navigator_impl.cc File content/browser/frame_host/navigator_impl.cc (right): https://codereview.chromium.org/2381503003/diff/180001/content/browser/frame_host/navigator_impl.cc#newcode1101 content/browser/frame_host/navigator_impl.cc:1101: if (navigation_type == FrameMsg_Navigate_Type::NORMAL && nit: add ...
4 years, 2 months ago (2016-10-10 11:48:02 UTC) #53
nasko
Please wait another day, as I'd like Charlie to have a chance to look at ...
4 years, 2 months ago (2016-10-10 22:04:22 UTC) #54
scottmg
https://codereview.chromium.org/2381503003/diff/180001/content/browser/frame_host/navigator_impl.cc File content/browser/frame_host/navigator_impl.cc (right): https://codereview.chromium.org/2381503003/diff/180001/content/browser/frame_host/navigator_impl.cc#newcode1101 content/browser/frame_host/navigator_impl.cc:1101: if (navigation_type == FrameMsg_Navigate_Type::NORMAL && On 2016/10/10 11:48:02, clamy ...
4 years, 2 months ago (2016-10-11 19:52:32 UTC) #64
scottmg
On 2016/10/11 19:52:32, scottmg (ooo until 11oct2016) wrote: > https://codereview.chromium.org/2381503003/diff/180001/content/browser/frame_host/navigator_impl.cc > File content/browser/frame_host/navigator_impl.cc (right): > ...
4 years, 2 months ago (2016-10-11 21:10:12 UTC) #65
nasko
On 2016/10/11 21:10:12, scottmg (ooo until 11oct2016) wrote: > On 2016/10/11 19:52:32, scottmg (ooo until ...
4 years, 2 months ago (2016-10-11 21:19:03 UTC) #66
scottmg
On 2016/10/11 21:19:03, nasko (slow) wrote: > On 2016/10/11 21:10:12, scottmg (ooo until 11oct2016) wrote: ...
4 years, 2 months ago (2016-10-11 21:37:52 UTC) #67
scottmg
On 2016/10/11 21:37:52, scottmg wrote: > On 2016/10/11 21:19:03, nasko (slow) wrote: > > On ...
4 years, 2 months ago (2016-10-11 23:52:22 UTC) #82
clamy
https://codereview.chromium.org/2381503003/diff/320001/content/browser/frame_host/navigator_impl.cc File content/browser/frame_host/navigator_impl.cc (right): https://codereview.chromium.org/2381503003/diff/320001/content/browser/frame_host/navigator_impl.cc#newcode85 content/browser/frame_host/navigator_impl.cc:85: if (frame_tree_node->current_url() == entry.GetURL() && Sanity check: this is ...
4 years, 2 months ago (2016-10-12 11:28:32 UTC) #83
nasko
It looks like this version is causing http/tests/navigation/post-goback-same-url.html to fail with --site-per-process. Overall I like ...
4 years, 2 months ago (2016-10-13 00:06:16 UTC) #84
Charlie Reis
[+boliu for LoadDataWithBaseURL behavior question] Putting the extra logic to decide reload behavior in NavigatorImpl ...
4 years, 2 months ago (2016-10-15 00:00:50 UTC) #86
boliu
https://codereview.chromium.org/2381503003/diff/320001/content/browser/frame_host/navigation_controller_impl_browsertest.cc File content/browser/frame_host/navigation_controller_impl_browsertest.cc (right): https://codereview.chromium.org/2381503003/diff/320001/content/browser/frame_host/navigation_controller_impl_browsertest.cc#newcode6244 content/browser/frame_host/navigation_controller_impl_browsertest.cc:6244: // All of these cause history entries. On 2016/10/15 ...
4 years, 2 months ago (2016-10-17 17:42:43 UTC) #87
scottmg
Sorry for the really slow turnaround on this change. It's been at the bottom of ...
4 years, 1 month ago (2016-10-31 21:32:11 UTC) #113
Charlie Reis
Wow, it looks so simple in retrospect! (Granted, with a long list of conditions to ...
4 years, 1 month ago (2016-11-01 21:18:39 UTC) #114
scottmg
On 2016/11/01 21:18:39, Charlie Reis wrote: > Wow, it looks so simple in retrospect! (Granted, ...
4 years, 1 month ago (2016-11-01 22:14:18 UTC) #115
scottmg
https://codereview.chromium.org/2381503003/diff/480001/content/browser/frame_host/navigation_controller_impl.cc File content/browser/frame_host/navigation_controller_impl.cc (right): https://codereview.chromium.org/2381503003/diff/480001/content/browser/frame_host/navigation_controller_impl.cc#newcode1792 content/browser/frame_host/navigation_controller_impl.cc:1792: // Note that we don't want to convert to ...
4 years, 1 month ago (2016-11-01 22:14:30 UTC) #116
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2381503003/500001
4 years, 1 month ago (2016-11-01 22:15:13 UTC) #119
commit-bot: I haz the power
Try jobs failed on following builders: linux_site_isolation on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_site_isolation/builds/4395)
4 years, 1 month ago (2016-11-02 00:39:02 UTC) #121
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2381503003/500001
4 years, 1 month ago (2016-11-02 16:32:31 UTC) #124
commit-bot: I haz the power
Committed patchset #21 (id:500001)
4 years, 1 month ago (2016-11-02 16:38:06 UTC) #126
commit-bot: I haz the power
Patchset 21 (id:??) landed as https://crrev.com/28bbbb16194c7337e22c3e0bda752ae6b4b681cf Cr-Commit-Position: refs/heads/master@{#429302}
4 years, 1 month ago (2016-11-02 16:51:23 UTC) #128
scottmg
4 years, 1 month ago (2016-11-14 17:59:47 UTC) #129
Message was sent while issue was closed.
A revert of this CL (patchset #21 id:500001) has been created in
https://codereview.chromium.org/2495373002/ by scottmg@chromium.org.

The reason for reverting is: https://crbug.com/664319..

Powered by Google App Engine
This is Rietveld 408576698