New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 792662 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 3
Type: Bug



Sign in to add a comment

Need UKM SourceUrlRecorder for iOS

Project Member Reported by holte@chromium.org, Dec 6 2017

Issue description

We need an iOS equivalent of components/ukm/content/source_url_recorder.h, which handles recording URLs for NavigationHandle and getting SourceIds for WebContents objects.

We probably need something similar as a WebStateObserver, and some way of getting a SourceId for last document on WebState.

 

Comment 1 by holte@chromium.org, Jan 20 2018

Owner: holte@chromium.org
Status: Started (was: Available)
Just a note that the current (in progress) implementation doesn't assign navigation ids until commit. The change notes:

  // TODO( crbug.com/792662 ): Assign these to navigations earlier and retrieve
  // them here.

https://chromium-review.googlesource.com/c/chromium/src/+/877398

we should keep this bug open after that change lands, so we continue to track that issue (or open a new issue specific to it).
Project Member

Comment 3 by bugdroid1@chromium.org, Feb 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ed7ba25bf1ed9cb8ce2964c7fb046d2094d403b7

commit ed7ba25bf1ed9cb8ce2964c7fb046d2094d403b7
Author: Steven Holte <holte@chromium.org>
Date: Sat Feb 10 22:11:28 2018

Add NavigationId and IsDownload to NavigationContext

These will be required for implementing UKMs SourceUrlRecorder for iOS.

Bug:  792662 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: I110d51ddf79dd1e08e4759721387d21cf280c439
Reviewed-on: https://chromium-review.googlesource.com/887954
Commit-Queue: Steven Holte <holte@chromium.org>
Reviewed-by: Eugene But <eugenebut@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535987}
[modify] https://crrev.com/ed7ba25bf1ed9cb8ce2964c7fb046d2094d403b7/ios/web/public/test/fakes/fake_navigation_context.h
[modify] https://crrev.com/ed7ba25bf1ed9cb8ce2964c7fb046d2094d403b7/ios/web/public/test/fakes/fake_navigation_context.mm
[modify] https://crrev.com/ed7ba25bf1ed9cb8ce2964c7fb046d2094d403b7/ios/web/public/web_state/navigation_context.h
[modify] https://crrev.com/ed7ba25bf1ed9cb8ce2964c7fb046d2094d403b7/ios/web/web_state/navigation_and_load_callbacks_inttest.mm
[modify] https://crrev.com/ed7ba25bf1ed9cb8ce2964c7fb046d2094d403b7/ios/web/web_state/navigation_context_impl.h
[modify] https://crrev.com/ed7ba25bf1ed9cb8ce2964c7fb046d2094d403b7/ios/web/web_state/navigation_context_impl.mm
[modify] https://crrev.com/ed7ba25bf1ed9cb8ce2964c7fb046d2094d403b7/ios/web/web_state/navigation_context_impl_unittest.mm
[modify] https://crrev.com/ed7ba25bf1ed9cb8ce2964c7fb046d2094d403b7/ios/web/web_state/ui/crw_web_controller.mm

Project Member

Comment 4 by bugdroid1@chromium.org, Feb 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/99efb451d533b01638941766f3bd4e08c62cc22f

commit 99efb451d533b01638941766f3bd4e08c62cc22f
Author: Steven Holte <holte@chromium.org>
Date: Tue Feb 13 22:31:00 2018

Add HasCommitted to NavigationContext.

This is needed for UKM to capture navigation URLs.

Bug:  792662 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: Iadd121f8fa0ff6cb94851c1c83a2063d2c82338b
Reviewed-on: https://chromium-review.googlesource.com/915015
Commit-Queue: Steven Holte <holte@chromium.org>
Reviewed-by: Eugene But <eugenebut@chromium.org>
Cr-Commit-Position: refs/heads/master@{#536516}
[modify] https://crrev.com/99efb451d533b01638941766f3bd4e08c62cc22f/ios/web/public/test/fakes/fake_navigation_context.h
[modify] https://crrev.com/99efb451d533b01638941766f3bd4e08c62cc22f/ios/web/public/test/fakes/fake_navigation_context.mm
[modify] https://crrev.com/99efb451d533b01638941766f3bd4e08c62cc22f/ios/web/public/web_state/navigation_context.h
[modify] https://crrev.com/99efb451d533b01638941766f3bd4e08c62cc22f/ios/web/web_state/navigation_and_load_callbacks_inttest.mm
[modify] https://crrev.com/99efb451d533b01638941766f3bd4e08c62cc22f/ios/web/web_state/navigation_context_impl.h
[modify] https://crrev.com/99efb451d533b01638941766f3bd4e08c62cc22f/ios/web/web_state/navigation_context_impl.mm
[modify] https://crrev.com/99efb451d533b01638941766f3bd4e08c62cc22f/ios/web/web_state/navigation_context_impl_unittest.mm
[modify] https://crrev.com/99efb451d533b01638941766f3bd4e08c62cc22f/ios/web/web_state/ui/crw_web_controller.mm

Project Member

Comment 5 by bugdroid1@chromium.org, Feb 26 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9ee27abfd52a6fc4951be5010f1ed884823d7c12

commit 9ee27abfd52a6fc4951be5010f1ed884823d7c12
Author: Steven Holte <holte@chromium.org>
Date: Mon Feb 26 22:07:05 2018

UKM SourceUrlRecorder for iOS.

Records URLs of all NavigationContexts for URL whitelisting, and makes
last committed IDs available for WebState objects.

Bug:  792662 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: If512086a73a893e8e0c4c49df28b4ef624764761
Reviewed-on: https://chromium-review.googlesource.com/877398
Commit-Queue: Steven Holte <holte@chromium.org>
Reviewed-by: Eugene But <eugenebut@chromium.org>
Reviewed-by: Brian White <bcwhite@chromium.org>
Cr-Commit-Position: refs/heads/master@{#539281}
[modify] https://crrev.com/9ee27abfd52a6fc4951be5010f1ed884823d7c12/ios/chrome/browser/history/history_tab_helper.mm
[modify] https://crrev.com/9ee27abfd52a6fc4951be5010f1ed884823d7c12/ios/chrome/browser/metrics/BUILD.gn
[add] https://crrev.com/9ee27abfd52a6fc4951be5010f1ed884823d7c12/ios/chrome/browser/metrics/ukm_url_recorder.h
[add] https://crrev.com/9ee27abfd52a6fc4951be5010f1ed884823d7c12/ios/chrome/browser/metrics/ukm_url_recorder.mm
[add] https://crrev.com/9ee27abfd52a6fc4951be5010f1ed884823d7c12/ios/chrome/browser/metrics/ukm_url_recorder_unittest.mm
[modify] https://crrev.com/9ee27abfd52a6fc4951be5010f1ed884823d7c12/ios/chrome/browser/tabs/tab_helper_util.mm
[modify] https://crrev.com/9ee27abfd52a6fc4951be5010f1ed884823d7c12/services/metrics/public/cpp/ukm_recorder.h

Comment 6 by holte@chromium.org, Feb 27 2018

Status: Fixed (was: Started)
Project Member

Comment 7 by bugdroid1@chromium.org, Oct 4

Sign in to add a comment