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

Issue 1422333009: OOPIF: History navigations for new child frames. (Closed)

Created:
5 years, 1 month ago by Charlie Reis
Modified:
5 years ago
CC:
Avi (use Gerrit), blink-reviews, chromium-reviews, creis+watch_chromium.org, darin-cc_chromium.org, jam, mkwst+moarreviews-renderer_chromium.org, mlamouri+watch-content_chromium.org, nasko+codewatch_chromium.org, nasko, site-isolation-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

OOPIF: History navigations for new child frames. When a subframe is created during a history navigation, we now make an OpenURL call to the browser process that looks up which FrameNavigationEntry matches the new frame (based on Blink's unique name approach). If no matching entry is found, we will fall back to the original URL for the frame. BUG=502317 TEST=See bug for repro steps. Committed: https://crrev.com/e18ce07ccb40aa6097764dc73ca0ebc3cf624c03 Cr-Commit-Position: refs/heads/master@{#362579}

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : Rebase and clean up #

Patch Set 4 : Rebase #

Patch Set 5 : Add test, clean up #

Patch Set 6 : Better DidStartLoading fix, disable restore test #

Total comments: 6

Patch Set 7 : Update comment #

Total comments: 2

Patch Set 8 : Rebase #

Patch Set 9 : Support fallback case (and add test) #

Patch Set 10 : Fix merge conflicts in fyi.json #

Total comments: 2

Patch Set 11 : Add comment, fix check #

Patch Set 12 : Rebase #

Patch Set 13 : Improve comment. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+509 lines, -37 lines) Patch
M content/browser/frame_host/frame_navigation_entry.h View 1 2 3 1 chunk +3 lines, -0 lines 0 comments Download
M content/browser/frame_host/navigation_controller_impl_browsertest.cc View 1 2 3 4 5 6 7 8 5 chunks +348 lines, -4 lines 0 comments Download
M content/browser/frame_host/navigation_controller_impl_unittest.cc View 1 2 3 4 5 6 7 3 chunks +4 lines, -1 line 0 comments Download
M content/browser/frame_host/navigation_entry_impl.h View 1 2 3 4 1 chunk +9 lines, -0 lines 0 comments Download
M content/browser/frame_host/navigation_entry_impl.cc View 1 2 1 chunk +18 lines, -0 lines 0 comments Download
M content/browser/frame_host/navigator.h View 1 2 3 4 5 6 7 8 1 chunk +8 lines, -0 lines 0 comments Download
M content/browser/frame_host/navigator.cc View 1 2 3 4 5 6 7 8 1 chunk +5 lines, -0 lines 0 comments Download
M content/browser/frame_host/navigator_impl.h View 1 2 3 4 5 6 7 8 2 chunks +7 lines, -3 lines 0 comments Download
M content/browser/frame_host/navigator_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 6 chunks +34 lines, -8 lines 0 comments Download
M content/browser/frame_host/render_frame_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +11 lines, -0 lines 0 comments Download
M content/common/frame_messages.h View 1 2 3 4 5 6 7 8 9 1 chunk +5 lines, -0 lines 0 comments Download
M content/renderer/render_frame_impl.h View 1 2 3 4 5 6 7 8 9 2 chunks +7 lines, -3 lines 0 comments Download
M content/renderer/render_frame_impl.cc View 1 2 3 4 5 6 7 8 9 8 chunks +31 lines, -12 lines 0 comments Download
M testing/buildbot/chromium.fyi.json View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +4 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +11 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/WebLocalFrameImpl.cpp View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/public/web/WebFrameClient.h View 1 2 3 4 5 6 7 8 9 3 chunks +3 lines, -1 line 0 comments Download

Messages

Total messages: 30 (12 generated)
Charlie Reis
Nasko, can you take a look? The main TODOs for followup CLs are handling the ...
5 years, 1 month ago (2015-11-23 22:56:36 UTC) #2
Charlie Reis
Sounds like Nasko is busy. Avi, can you take a look? (I left some intro ...
5 years ago (2015-11-24 18:53:42 UTC) #4
Avi (use Gerrit)
lgtm https://codereview.chromium.org/1422333009/diff/100001/content/browser/frame_host/navigator_impl.cc File content/browser/frame_host/navigator_impl.cc (right): https://codereview.chromium.org/1422333009/diff/100001/content/browser/frame_host/navigator_impl.cc#newcode404 content/browser/frame_host/navigator_impl.cc:404: controller_->GetEntryWithUniqueID(render_frame_host->nav_entry_id()); Boy, this "last commit" nav entry id ...
5 years ago (2015-11-24 22:09:47 UTC) #5
Charlie Reis
Thanks! https://codereview.chromium.org/1422333009/diff/100001/content/browser/frame_host/navigator_impl.cc File content/browser/frame_host/navigator_impl.cc (right): https://codereview.chromium.org/1422333009/diff/100001/content/browser/frame_host/navigator_impl.cc#newcode404 content/browser/frame_host/navigator_impl.cc:404: controller_->GetEntryWithUniqueID(render_frame_host->nav_entry_id()); On 2015/11/24 22:09:47, Avi wrote: > Boy, ...
5 years ago (2015-11-24 23:05:54 UTC) #6
Avi (use Gerrit)
SLGTM
5 years ago (2015-11-25 03:39:14 UTC) #7
dcheng
https://codereview.chromium.org/1422333009/diff/120001/third_party/WebKit/Source/web/WebLocalFrameImpl.cpp File third_party/WebKit/Source/web/WebLocalFrameImpl.cpp (right): https://codereview.chromium.org/1422333009/diff/120001/third_party/WebKit/Source/web/WebLocalFrameImpl.cpp#newcode1770 third_party/WebKit/Source/web/WebLocalFrameImpl.cpp:1770: child->loader().progress().progressStarted(); I feel a bit sad about this: we ...
5 years ago (2015-11-25 06:18:55 UTC) #8
Charlie Reis
https://codereview.chromium.org/1422333009/diff/120001/third_party/WebKit/Source/web/WebLocalFrameImpl.cpp File third_party/WebKit/Source/web/WebLocalFrameImpl.cpp (right): https://codereview.chromium.org/1422333009/diff/120001/third_party/WebKit/Source/web/WebLocalFrameImpl.cpp#newcode1770 third_party/WebKit/Source/web/WebLocalFrameImpl.cpp:1770: child->loader().progress().progressStarted(); On 2015/11/25 06:18:55, dcheng wrote: > I feel ...
5 years ago (2015-11-25 18:41:16 UTC) #9
Charlie Reis
Ok, I've restructured this CL to go through decidePolicyForNavigation instead of sending a new IPC. ...
5 years ago (2015-12-01 00:17:22 UTC) #12
Avi (use Gerrit)
I'm still happy with the CL.
5 years ago (2015-12-01 15:04:39 UTC) #13
dcheng
LGTM https://codereview.chromium.org/1422333009/diff/200001/third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp File third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp (right): https://codereview.chromium.org/1422333009/diff/200001/third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp#newcode586 third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp:586: bool isHistoryNavigationInNewChildFrame = m_webFrame->parent() Do you mind adding ...
5 years ago (2015-12-01 19:47:53 UTC) #14
Charlie Reis
https://codereview.chromium.org/1422333009/diff/200001/third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp File third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp (right): https://codereview.chromium.org/1422333009/diff/200001/third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp#newcode586 third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp:586: bool isHistoryNavigationInNewChildFrame = m_webFrame->parent() On 2015/12/01 19:47:53, dcheng wrote: ...
5 years ago (2015-12-01 22:11:51 UTC) #15
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1422333009/240001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1422333009/240001
5 years ago (2015-12-01 22:16:08 UTC) #18
Charlie Reis
Improved comment in patch 13, per offline request.
5 years ago (2015-12-01 22:19:52 UTC) #20
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1422333009/260001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1422333009/260001
5 years ago (2015-12-01 22:24:42 UTC) #23
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_asan_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_asan_rel_ng/builds/85941)
5 years ago (2015-12-02 00:08:19 UTC) #25
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1422333009/260001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1422333009/260001
5 years ago (2015-12-02 00:12:07 UTC) #27
commit-bot: I haz the power
Committed patchset #13 (id:260001)
5 years ago (2015-12-02 02:00:11 UTC) #28
commit-bot: I haz the power
5 years ago (2015-12-02 02:01:00 UTC) #30
Message was sent while issue was closed.
Patchset 13 (id:??) landed as
https://crrev.com/e18ce07ccb40aa6097764dc73ca0ebc3cf624c03
Cr-Commit-Position: refs/heads/master@{#362579}

Powered by Google App Engine
This is Rietveld 408576698