[<install> Element] Build a prototype. [chromium/src : main]

0 views
Skip to first unread message

Mike West (Gerrit)

unread,
Oct 27, 2025, 6:54:50 AM (6 days ago) Oct 27
to Thomas Nguyen, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
Attention needed from Thomas Nguyen

Mike West voted and added 1 comment

Votes added by Mike West

Commit-Queue+1

1 comment

Patchset-level comments
File-level comment, Patchset 13 (Latest):
Mike West . resolved

Hey Thomas, I have a ~working prototype of `<install>` that I'd appreciate some feedback on. I still want to clean a few things up that I might split out into distinct CLs (the shared test infrastructure first and foremost), but I'll ask for your guidance now just to make sure that I'm going in even vaguely the right direction.

Thanks!

Open in Gerrit

Related details

Attention is currently required from:
  • Thomas Nguyen
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
Gerrit-Change-Number: 7079238
Gerrit-PatchSet: 13
Gerrit-Owner: Mike West <mk...@chromium.org>
Gerrit-Reviewer: Mike West <mk...@chromium.org>
Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
Gerrit-CC: Kentaro Hara <har...@chromium.org>
Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
Gerrit-Attention: Thomas Nguyen <tun...@chromium.org>
Gerrit-Comment-Date: Mon, 27 Oct 2025 10:54:38 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
satisfied_requirement
unsatisfied_requirement
open
diffy

AI Code Reviewer (Gerrit)

unread,
Oct 27, 2025, 7:44:17 AM (6 days ago) Oct 27
to Mike West, Thomas Nguyen, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
Attention needed from Mike West and Thomas Nguyen

AI Code Reviewer added 1 comment

File third_party/blink/renderer/core/html/html_install_element.h
Line 37, Patchset 14 (Latest): HeapMojoRemote<mojom::blink::WebInstallService>& GetService();
AI Code Reviewer . unresolved

nit: Per the Blink Style Guide: Naming - "use bare words for getters". Please consider renaming `GetService()` to `Service()` as it is a getter for the `service_` member and does not conflict with a type name.

To keep this interaction as brief and non-intrusive as possible, please consider responding with one of following options:
**Done** | **Won't fix**: reason | **b/<bug_id>** | **Invalid:** reason

This comment was generated by [Experimental Blink C++ Code Review Agent](http://go/blink-c++-code-review-agent).AI reviews can sometimes be inaccurate; We appreciate your 🙏 feedback 🙏 to help us improve.[File a bug](http://go/blink-c++-code-review-agent-feedback) | [Provide feedback on chat](https://chat.google.com/room/AAQA0zhQHe0?cls=4) | [Opt-out](https://ganpati2.corp.google.com/group/peep-genai-blink-agent-optout.prod)_

Open in Gerrit

Related details

Attention is currently required from:
  • Mike West
  • Thomas Nguyen
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
    Gerrit-Change-Number: 7079238
    Gerrit-PatchSet: 14
    Gerrit-Owner: Mike West <mk...@chromium.org>
    Gerrit-Reviewer: Mike West <mk...@chromium.org>
    Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
    Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
    Gerrit-CC: Kentaro Hara <har...@chromium.org>
    Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
    Gerrit-Attention: Thomas Nguyen <tun...@chromium.org>
    Gerrit-Attention: Mike West <mk...@chromium.org>
    Gerrit-Comment-Date: Mon, 27 Oct 2025 11:44:14 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Thomas Nguyen (Gerrit)

    unread,
    Oct 28, 2025, 6:54:05 AM (5 days ago) Oct 28
    to Mike West, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
    Attention needed from Mike West

    Thomas Nguyen added 9 comments

    Patchset-level comments
    File-level comment, Patchset 15 (Latest):
    Thomas Nguyen . resolved

    I've left some comments regarding the permission codes in general.

    File android_webview/test/data/web_tests/webexposed/global-interface-listing-expected.txt
    Line 4758, Patchset 15 (Latest):interface HTMLPermissionElement : HTMLElement
    Thomas Nguyen . unresolved

    I might be missing something, do we need to expose it to WebView, as we are not currently supporting Android Webview?

    If we are going to enable the Webview support, this should be addressed in a separate ticket, and all Android-related items should be reviewed.

    File third_party/blink/renderer/core/html/html_geolocation_element_test.cc
    Line 119, Patchset 15 (Latest): base::BindRepeating(&PermissionElementTestPermissionService::BindHandle,
    Thomas Nguyen . unresolved

    nits: use blink instead of base::Bind*

    Line 602, Patchset 15 (Latest): base::BindRepeating(&PermissionElementTestPermissionService::BindHandle,
    Thomas Nguyen . unresolved

    Ditto

    File third_party/blink/renderer/core/html/html_install_element.cc
    Line 60, Patchset 15 (Latest): permission_text_span()->setInnerText(inner_text);
    Thomas Nguyen . unresolved

    FYI: We had a problem with `setInnerText`, causing some layout DCHECKs. It might be not a problem here, but worth checking manually, playing around with the page contains the element.

    The DHECK is similar to https://issues.chromium.org/issues/40871466, currently we put `permission_text_span()->setInnerText(inner_text)` under `Posttask` to fix it.

    File third_party/blink/renderer/core/html/html_install_element.idl
    Line 13, Patchset 15 (Latest):// TODO: HTMLPermissionElement should shift to `InPagePermissionMixin`.
    Thomas Nguyen . unresolved

    nit: I've created a task for that, please add this bug to the comment, bug num: 455783637

    File third_party/blink/renderer/core/html/html_install_element_test.cc
    Line 141, Patchset 15 (Latest): // `UpdateText` is called via `PostTask`, so `innerText` is checked within a
    // `PostTask` to ensure it's updated.
    Thomas Nguyen . unresolved

    We only need posttask if the permission_text_span()->setInnerText(inner_text) is run in Posttask.
    So, in the previous note, if we have no problem with the SetInnerText, we can remove the posttask and runloop here.

    File third_party/blink/renderer/core/html/html_permission_element.cc
    Line 139, Patchset 15 (Latest): // - Single permission: geolocation, camera, microphone.
    Thomas Nguyen . unresolved

    nit: update this

    File third_party/blink/renderer/core/html/html_permission_element_test_helper.cc
    Line 23, Patchset 15 (Latest):PermissionElementTestPermissionService::
    Thomas Nguyen . resolved

    That makes a lot of senses, thanks for the refactoring the tests into *helper.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Mike West
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
    Gerrit-Change-Number: 7079238
    Gerrit-PatchSet: 15
    Gerrit-Owner: Mike West <mk...@chromium.org>
    Gerrit-Reviewer: Mike West <mk...@chromium.org>
    Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
    Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
    Gerrit-CC: Kentaro Hara <har...@chromium.org>
    Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
    Gerrit-Attention: Mike West <mk...@chromium.org>
    Gerrit-Comment-Date: Tue, 28 Oct 2025 10:53:45 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Mike West (Gerrit)

    unread,
    Oct 28, 2025, 9:55:35 AM (5 days ago) Oct 28
    to Kent Tamura, Arthur Sonzogni, Peter Beverloo, AI Code Reviewer, Thomas Nguyen, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
    Attention needed from Arthur Sonzogni, Kent Tamura, Peter Beverloo and Thomas Nguyen

    Mike West added 10 comments

    Patchset-level comments
    File-level comment, Patchset 16 (Latest):
    Mike West . resolved

    Thanks, Thomas! I've addressed your feedback inline below. Would you mind taking another look?

    Assuming that there are no showstoppers, I'll add some additional reviewers for relevant files you don't own:

    tkent@: Would you mind evaluating the VirtualTestSuite change (which neither adds nor removes tests, but simply adds a feature flag).

    arthursonzogni@: Could you give `RenderFrameHostImpl::GetCachedPermissionStatuses()` your review from an owners' perspective?

    peter@: Could you review the addition of this flag to the collection of similar things that are currently unsupported on WebView?

    Thanks, all!

    File android_webview/test/data/web_tests/webexposed/global-interface-listing-expected.txt
    Line 4758, Patchset 15:interface HTMLPermissionElement : HTMLElement
    Thomas Nguyen . resolved

    I might be missing something, do we need to expose it to WebView, as we are not currently supporting Android Webview?

    If we are going to enable the Webview support, this should be addressed in a separate ticket, and all Android-related items should be reviewed.

    Mike West

    Done

    File third_party/blink/renderer/core/html/html_geolocation_element_test.cc
    Line 119, Patchset 15: base::BindRepeating(&PermissionElementTestPermissionService::BindHandle,
    Thomas Nguyen . resolved

    nits: use blink instead of base::Bind*

    Mike West

    Done

    Line 602, Patchset 15: base::BindRepeating(&PermissionElementTestPermissionService::BindHandle,
    Thomas Nguyen . resolved

    Ditto

    Mike West

    Done

    File third_party/blink/renderer/core/html/html_install_element.h
    Line 37, Patchset 14: HeapMojoRemote<mojom::blink::WebInstallService>& GetService();
    AI Code Reviewer . resolved

    nit: Per the Blink Style Guide: Naming - "use bare words for getters". Please consider renaming `GetService()` to `Service()` as it is a getter for the `service_` member and does not conflict with a type name.

    To keep this interaction as brief and non-intrusive as possible, please consider responding with one of following options:
    **Done** | **Won't fix**: reason | **b/<bug_id>** | **Invalid:** reason

    This comment was generated by [Experimental Blink C++ Code Review Agent](http://go/blink-c++-code-review-agent).AI reviews can sometimes be inaccurate; We appreciate your 🙏 feedback 🙏 to help us improve.[File a bug](http://go/blink-c++-code-review-agent-feedback) | [Provide feedback on chat](https://chat.google.com/room/AAQA0zhQHe0?cls=4) | [Opt-out](https://ganpati2.corp.google.com/group/peep-genai-blink-agent-optout.prod)_

    Mike West

    Done

    File third_party/blink/renderer/core/html/html_install_element.cc
    Line 60, Patchset 15: permission_text_span()->setInnerText(inner_text);
    Thomas Nguyen . resolved

    FYI: We had a problem with `setInnerText`, causing some layout DCHECKs. It might be not a problem here, but worth checking manually, playing around with the page contains the element.

    The DHECK is similar to https://issues.chromium.org/issues/40871466, currently we put `permission_text_span()->setInnerText(inner_text)` under `Posttask` to fix it.

    Mike West

    I'll follow along with this implementation, then. I can certainly imagine rendering/layout making some assumptions about the tree that might not be true in the middle of this processing step.

    File third_party/blink/renderer/core/html/html_install_element.idl
    Line 13, Patchset 15:// TODO: HTMLPermissionElement should shift to `InPagePermissionMixin`.
    Thomas Nguyen . resolved

    nit: I've created a task for that, please add this bug to the comment, bug num: 455783637

    Mike West

    Done

    File third_party/blink/renderer/core/html/html_install_element_test.cc
    Line 141, Patchset 15: // `UpdateText` is called via `PostTask`, so `innerText` is checked within a

    // `PostTask` to ensure it's updated.
    Thomas Nguyen . resolved

    We only need posttask if the permission_text_span()->setInnerText(inner_text) is run in Posttask.
    So, in the previous note, if we have no problem with the SetInnerText, we can remove the posttask and runloop here.

    Mike West

    Erring on the side of caution, I'll follow the example HTMLGeolocationElement set. It feels like we could extract this checking code into something shared between the two test files, which I might try to do as a followup.

    File third_party/blink/renderer/core/html/html_permission_element.cc
    Line 139, Patchset 15: // - Single permission: geolocation, camera, microphone.
    Thomas Nguyen . resolved

    nit: update this

    Mike West

    Done

    File third_party/blink/renderer/core/html/html_permission_element_test_helper.cc
    Line 51, Patchset 15: client_->OnEmbeddedPermissionControlRegistered(/*allowed=*/true,
    Mike West . resolved

    Please fix this WARNING reported by ClangTidy: check: bugprone-argument-comment

    argument name 'allowed' in comment does not ma...

    check: bugprone-argument-comment

    argument name 'allowed' in comment does not match parameter name 'allow' (https://clang.llvm.org/extra/clang-tidy/checks/bugprone/argument-comment.html)

    (Note: You can add `Skip-Clang-Tidy-Checks: bugprone-argument-comment` footer to the CL description to skip the check)

    (Lint observed on `android-clang-tidy-rel` and `linux-clang-tidy-rel`)

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Arthur Sonzogni
    • Kent Tamura
    • Peter Beverloo
    • Thomas Nguyen
    Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement is not satisfiedCode-Review
      • requirement is not satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: chromium/src
      Gerrit-Branch: main
      Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
      Gerrit-Change-Number: 7079238
      Gerrit-PatchSet: 16
      Gerrit-Owner: Mike West <mk...@chromium.org>
      Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
      Gerrit-Reviewer: Kent Tamura <tk...@chromium.org>
      Gerrit-Reviewer: Mike West <mk...@chromium.org>
      Gerrit-Reviewer: Peter Beverloo <pe...@chromium.org>
      Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
      Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
      Gerrit-CC: Kentaro Hara <har...@chromium.org>
      Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
      Gerrit-Attention: Thomas Nguyen <tun...@chromium.org>
      Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
      Gerrit-Attention: Kent Tamura <tk...@chromium.org>
      Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
      Gerrit-Comment-Date: Tue, 28 Oct 2025 13:55:15 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      Comment-In-Reply-To: Thomas Nguyen <tun...@chromium.org>
      Comment-In-Reply-To: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Kent Tamura (Gerrit)

      unread,
      Oct 28, 2025, 7:23:36 PM (5 days ago) Oct 28
      to Mike West, Kent Tamura, Arthur Sonzogni, Peter Beverloo, AI Code Reviewer, Thomas Nguyen, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
      Attention needed from Arthur Sonzogni, Mike West, Peter Beverloo and Thomas Nguyen

      Kent Tamura voted and added 1 comment

      Votes added by Kent Tamura

      Code-Review+1

      1 comment

      Patchset-level comments
      Mike West . resolved

      Thanks, Thomas! I've addressed your feedback inline below. Would you mind taking another look?

      Assuming that there are no showstoppers, I'll add some additional reviewers for relevant files you don't own:

      tkent@: Would you mind evaluating the VirtualTestSuite change (which neither adds nor removes tests, but simply adds a feature flag).

      arthursonzogni@: Could you give `RenderFrameHostImpl::GetCachedPermissionStatuses()` your review from an owners' perspective?

      peter@: Could you review the addition of this flag to the collection of similar things that are currently unsupported on WebView?

      Thanks, all!

      Kent Tamura

      VirtualTesSuite LGTM.

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Arthur Sonzogni
      • Mike West
      • Peter Beverloo
      • Thomas Nguyen
      Submit Requirements:
        • requirement satisfiedCode-Coverage
        • requirement is not satisfiedCode-Owners
        • requirement satisfiedCode-Review
        • requirement is not satisfiedReview-Enforcement
        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
        Gerrit-MessageType: comment
        Gerrit-Project: chromium/src
        Gerrit-Branch: main
        Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
        Gerrit-Change-Number: 7079238
        Gerrit-PatchSet: 16
        Gerrit-Owner: Mike West <mk...@chromium.org>
        Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
        Gerrit-Reviewer: Kent Tamura <tk...@chromium.org>
        Gerrit-Reviewer: Mike West <mk...@chromium.org>
        Gerrit-Reviewer: Peter Beverloo <pe...@chromium.org>
        Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
        Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
        Gerrit-CC: Kentaro Hara <har...@chromium.org>
        Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
        Gerrit-Attention: Thomas Nguyen <tun...@chromium.org>
        Gerrit-Attention: Mike West <mk...@chromium.org>
        Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
        Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
        Gerrit-Comment-Date: Tue, 28 Oct 2025 23:22:57 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: Yes
        Comment-In-Reply-To: Mike West <mk...@chromium.org>
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy

        Thomas Nguyen (Gerrit)

        unread,
        Oct 29, 2025, 3:25:04 AM (4 days ago) Oct 29
        to Mike West, Kent Tamura, Arthur Sonzogni, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
        Attention needed from Arthur Sonzogni, Mike West and Peter Beverloo

        Thomas Nguyen voted Code-Review+1

        Code-Review+1
        Open in Gerrit

        Related details

        Attention is currently required from:
        • Arthur Sonzogni
        • Mike West
        • Peter Beverloo
        Submit Requirements:
          • requirement satisfiedCode-Coverage
          • requirement is not satisfiedCode-Owners
          • requirement satisfiedCode-Review
          • requirement satisfiedReview-Enforcement
          Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
          Gerrit-MessageType: comment
          Gerrit-Project: chromium/src
          Gerrit-Branch: main
          Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
          Gerrit-Change-Number: 7079238
          Gerrit-PatchSet: 16
          Gerrit-Owner: Mike West <mk...@chromium.org>
          Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
          Gerrit-Reviewer: Kent Tamura <tk...@chromium.org>
          Gerrit-Reviewer: Mike West <mk...@chromium.org>
          Gerrit-Reviewer: Peter Beverloo <pe...@chromium.org>
          Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
          Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
          Gerrit-CC: Kentaro Hara <har...@chromium.org>
          Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
          Gerrit-Attention: Mike West <mk...@chromium.org>
          Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
          Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
          Gerrit-Comment-Date: Wed, 29 Oct 2025 07:24:44 +0000
          Gerrit-HasComments: No
          Gerrit-Has-Labels: Yes
          satisfied_requirement
          unsatisfied_requirement
          open
          diffy

          Arthur Sonzogni (Gerrit)

          unread,
          Oct 29, 2025, 5:33:33 AM (4 days ago) Oct 29
          to Mike West, Thomas Nguyen, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
          Attention needed from Mike West and Peter Beverloo

          Arthur Sonzogni voted and added 1 comment

          Votes added by Arthur Sonzogni

          Code-Review+1

          1 comment

          File content/browser/renderer_host/render_frame_host_impl.cc
          Line 19272, Patchset 17:RenderFrameHostImpl::GetCachedPermissionStatuses() {
          Arthur Sonzogni . unresolved

          arthursonzogni@: Could you give RenderFrameHostImpl::GetCachedPermissionStatuses() your review from an owners' perspective?

          I am not deeply familiar with this specific mechanism, I've spent some time reading the [Design doc](https://docs.google.com/document/d/1pfuiJ7BIdX0dxMzboYIOvPV1mFKQ3HE_11VQNeBJSCc/edit?resourcekey=0-9el74tCe5opJXh3CIPyPGA&tab=t.0#heading=h.8zmwced28dbp) and the previous [patch](https://chromium-review.googlesource.com/c/chromium/src/+/5905369) to get up to speed.

          ---

          My understanding is that Blink needs this to style the new CSS selector:
          ```
          permission[type="install"]:granted {...}
          ```

          Because this information lives in the browser process, we must send an initial state with the CommitNavigation IPC to avoid flicker on the initial render. I don't like cache, but this all a lot of sense to me.

          I still have a couple of questions about the overall design, which I'm hoping you can clarify:

            * The state appears to be snapshotted from the *current* document and used for the *next*. Could you explain the rationale for this? I'm missing why this is the correct state to snapshot and why it isn't considered a potential information leak.
          * What's the motivation for sending only a *subset* of permissions? Is there a reason not to send them all?

          The change itself (adding `WEB_APP_INSTALLATION`) seems non-controversial, so **LGTM on that**.

          I'd appreciate the clarification on the design questions when you have a moment. It would help improve my own understanding of this.

          Open in Gerrit

          Related details

          Attention is currently required from:
          • Mike West
          • Peter Beverloo
          Submit Requirements:
            • requirement satisfiedCode-Coverage
            • requirement is not satisfiedCode-Owners
            • requirement satisfiedCode-Review
            • requirement is not satisfiedNo-Unresolved-Comments
            • requirement satisfiedReview-Enforcement
            Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
            Gerrit-MessageType: comment
            Gerrit-Project: chromium/src
            Gerrit-Branch: main
            Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
            Gerrit-Change-Number: 7079238
            Gerrit-PatchSet: 17
            Gerrit-Owner: Mike West <mk...@chromium.org>
            Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
            Gerrit-Reviewer: Kent Tamura <tk...@chromium.org>
            Gerrit-Reviewer: Mike West <mk...@chromium.org>
            Gerrit-Reviewer: Peter Beverloo <pe...@chromium.org>
            Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
            Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
            Gerrit-CC: Kentaro Hara <har...@chromium.org>
            Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
            Gerrit-Attention: Mike West <mk...@chromium.org>
            Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
            Gerrit-Comment-Date: Wed, 29 Oct 2025 09:33:17 +0000
            Gerrit-HasComments: Yes
            Gerrit-Has-Labels: Yes
            satisfied_requirement
            unsatisfied_requirement
            open
            diffy

            Mike West (Gerrit)

            unread,
            Oct 29, 2025, 5:53:00 AM (4 days ago) Oct 29
            to Arthur Sonzogni, Thomas Nguyen, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
            Attention needed from Arthur Sonzogni and Peter Beverloo

            Mike West added 1 comment

            File content/browser/renderer_host/render_frame_host_impl.cc
            Line 19272, Patchset 17:RenderFrameHostImpl::GetCachedPermissionStatuses() {
            Arthur Sonzogni . unresolved

            arthursonzogni@: Could you give RenderFrameHostImpl::GetCachedPermissionStatuses() your review from an owners' perspective?

            I am not deeply familiar with this specific mechanism, I've spent some time reading the [Design doc](https://docs.google.com/document/d/1pfuiJ7BIdX0dxMzboYIOvPV1mFKQ3HE_11VQNeBJSCc/edit?resourcekey=0-9el74tCe5opJXh3CIPyPGA&tab=t.0#heading=h.8zmwced28dbp) and the previous [patch](https://chromium-review.googlesource.com/c/chromium/src/+/5905369) to get up to speed.

            ---

            My understanding is that Blink needs this to style the new CSS selector:
            ```
            permission[type="install"]:granted {...}
            ```

            Because this information lives in the browser process, we must send an initial state with the CommitNavigation IPC to avoid flicker on the initial render. I don't like cache, but this all a lot of sense to me.

            I still have a couple of questions about the overall design, which I'm hoping you can clarify:

              * The state appears to be snapshotted from the *current* document and used for the *next*. Could you explain the rationale for this? I'm missing why this is the correct state to snapshot and why it isn't considered a potential information leak.
            * What's the motivation for sending only a *subset* of permissions? Is there a reason not to send them all?

            The change itself (adding `WEB_APP_INSTALLATION`) seems non-controversial, so **LGTM on that**.

            I'd appreciate the clarification on the design questions when you have a moment. It would help improve my own understanding of this.

            Mike West

            Thanks, Arthur!

            I'll defer to Thomas on the broader architecture questions, though I believe that a) permissions are origin-scoped, and this should only be read from cache for same-origin navigation, b) the answer to the subset question is that there's cost to monitoring these permissions, and they've decided to limit the checks to those which are supported in the current implementation of permission elements.

            Open in Gerrit

            Related details

            Attention is currently required from:
            • Arthur Sonzogni
            • Peter Beverloo
            Submit Requirements:
            • requirement satisfiedCode-Coverage
            • requirement is not satisfiedCode-Owners
            • requirement satisfiedCode-Review
            • requirement is not satisfiedNo-Unresolved-Comments
            • requirement satisfiedReview-Enforcement
            Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
            Gerrit-MessageType: comment
            Gerrit-Project: chromium/src
            Gerrit-Branch: main
            Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
            Gerrit-Change-Number: 7079238
            Gerrit-PatchSet: 18
            Gerrit-Owner: Mike West <mk...@chromium.org>
            Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
            Gerrit-Reviewer: Kent Tamura <tk...@chromium.org>
            Gerrit-Reviewer: Mike West <mk...@chromium.org>
            Gerrit-Reviewer: Peter Beverloo <pe...@chromium.org>
            Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
            Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
            Gerrit-CC: Kentaro Hara <har...@chromium.org>
            Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
            Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
            Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
            Gerrit-Comment-Date: Wed, 29 Oct 2025 09:52:41 +0000
            Gerrit-HasComments: Yes
            Gerrit-Has-Labels: No
            Comment-In-Reply-To: Arthur Sonzogni <arthurs...@chromium.org>
            satisfied_requirement
            unsatisfied_requirement
            open
            diffy

            Thomas Nguyen (Gerrit)

            unread,
            Oct 29, 2025, 6:33:18 AM (4 days ago) Oct 29
            to Mike West, Arthur Sonzogni, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
            Attention needed from Arthur Sonzogni, Mike West and Peter Beverloo

            Thomas Nguyen voted and added 1 comment

            Votes added by Thomas Nguyen

            Code-Review+1

            1 comment

            File content/browser/renderer_host/render_frame_host_impl.cc
            Line 19272, Patchset 17:RenderFrameHostImpl::GetCachedPermissionStatuses() {
            Arthur Sonzogni . unresolved

            arthursonzogni@: Could you give RenderFrameHostImpl::GetCachedPermissionStatuses() your review from an owners' perspective?

            I am not deeply familiar with this specific mechanism, I've spent some time reading the [Design doc](https://docs.google.com/document/d/1pfuiJ7BIdX0dxMzboYIOvPV1mFKQ3HE_11VQNeBJSCc/edit?resourcekey=0-9el74tCe5opJXh3CIPyPGA&tab=t.0#heading=h.8zmwced28dbp) and the previous [patch](https://chromium-review.googlesource.com/c/chromium/src/+/5905369) to get up to speed.

            ---

            My understanding is that Blink needs this to style the new CSS selector:
            ```
            permission[type="install"]:granted {...}
            ```

            Because this information lives in the browser process, we must send an initial state with the CommitNavigation IPC to avoid flicker on the initial render. I don't like cache, but this all a lot of sense to me.

            I still have a couple of questions about the overall design, which I'm hoping you can clarify:

              * The state appears to be snapshotted from the *current* document and used for the *next*. Could you explain the rationale for this? I'm missing why this is the correct state to snapshot and why it isn't considered a potential information leak.
            * What's the motivation for sending only a *subset* of permissions? Is there a reason not to send them all?

            The change itself (adding `WEB_APP_INSTALLATION`) seems non-controversial, so **LGTM on that**.

            I'd appreciate the clarification on the design questions when you have a moment. It would help improve my own understanding of this.

            Mike West

            Thanks, Arthur!

            I'll defer to Thomas on the broader architecture questions, though I believe that a) permissions are origin-scoped, and this should only be read from cache for same-origin navigation, b) the answer to the subset question is that there's cost to monitoring these permissions, and they've decided to limit the checks to those which are supported in the current implementation of permission elements.

            Thomas Nguyen

            >>> The state appears to be snapshotted from the current document and used for the next. Could you explain the rationale for this? I'm missing why this is the correct state to snapshot and why it isn't considered a potential information leak.

            My understanding of the question may be incomplete, so correct me if I might be missing. Basically the cache are initialized by an initial set of permission statuses passed down in CommitNavigationParams and it should happen at commit time, not really before.

            The existing logic for reusing windows still remains, permission statuses will be passed along with other parameters if the window is reused. I believe the reusing case should be very limited (such as same origin) and we have guaranteed it’s not the cross-leak.

            >>> What's the motivation for sending only a subset of permissions? Is there a reason not to send them all?

            I don't think we have a limit on the set of of permissions. But basically there's no motivation to use permissions from the cache early like our cases. Adding more permissions is acceptable.

            Open in Gerrit

            Related details

            Attention is currently required from:
            • Arthur Sonzogni
            • Mike West
            • Peter Beverloo
            Gerrit-Attention: Mike West <mk...@chromium.org>
            Gerrit-Attention: Arthur Sonzogni <arthurs...@chromium.org>
            Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
            Gerrit-Comment-Date: Wed, 29 Oct 2025 10:32:59 +0000
            Gerrit-HasComments: Yes
            Gerrit-Has-Labels: Yes
            Comment-In-Reply-To: Mike West <mk...@chromium.org>
            Comment-In-Reply-To: Arthur Sonzogni <arthurs...@chromium.org>
            satisfied_requirement
            unsatisfied_requirement
            open
            diffy

            Arthur Sonzogni (Gerrit)

            unread,
            Oct 29, 2025, 7:23:03 AM (4 days ago) Oct 29
            to Mike West, Thomas Nguyen, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
            Attention needed from Mike West and Peter Beverloo

            Arthur Sonzogni voted and added 1 comment

            Votes added by Arthur Sonzogni

            Code-Review+1

            1 comment

            File content/browser/renderer_host/render_frame_host_impl.cc
            Arthur Sonzogni

            See [line](https://source.chromium.org/chromium/chromium/src/+/main:content/browser/renderer_host/navigation_request.cc;l=1452;drc=ee500ed0974f48252c721fa53f41758b71309178;bpv=1;bpt=1) where the `CachedPermissionStatues` of the current document are plumbed into the navigation.

            Then the navigation will commit, we will create a **New** RenderFrameHost and call `RenderFrameHostImpl::CommitNavigation()` to commit the navigation in blink.

            I would have expected this field to be left empty until:
            `RenderFrameHostImpl::SendCommitNavigation(..)`, where I would have called [here](https://source.chromium.org/chromium/chromium/src/+/main:content/browser/renderer_host/render_frame_host_impl.cc;l=16627;drc=ee500ed0974f48252c721fa53f41758b71309178;bpv=0;bpt=1)
            ```
            commit_params->initial_permission_statuses = GetCachedPermissionStatuses()
            ```

            WDYT?

            Open in Gerrit

            Related details

            Attention is currently required from:
            • Mike West
            • Peter Beverloo
            Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
            Gerrit-Comment-Date: Wed, 29 Oct 2025 11:22:48 +0000
            Gerrit-HasComments: Yes
            Gerrit-Has-Labels: Yes
            Comment-In-Reply-To: Thomas Nguyen <tun...@chromium.org>
            satisfied_requirement
            unsatisfied_requirement
            open
            diffy

            Mike West (Gerrit)

            unread,
            Oct 30, 2025, 3:26:11 AM (3 days ago) Oct 30
            to Arthur Sonzogni, Thomas Nguyen, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
            Attention needed from Peter Beverloo and Thomas Nguyen

            Mike West added 1 comment

            Patchset-level comments
            File-level comment, Patchset 18 (Latest):
            Mike West . resolved

            Friendly ping, peter@. :)

            Thomas: Perhaps it would be worth filing a separate bug for Arthur's comment? It does look strange to me as well, but I don't know the history of it's current implementation.

            Open in Gerrit

            Related details

            Attention is currently required from:
            • Peter Beverloo
            • Thomas Nguyen
            Gerrit-Attention: Thomas Nguyen <tun...@chromium.org>
            Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
            Gerrit-Comment-Date: Thu, 30 Oct 2025 07:25:56 +0000
            Gerrit-HasComments: Yes
            Gerrit-Has-Labels: No
            satisfied_requirement
            unsatisfied_requirement
            open
            diffy

            Thomas Nguyen (Gerrit)

            unread,
            Oct 30, 2025, 4:25:31 AM (3 days ago) Oct 30
            to Mike West, Arthur Sonzogni, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
            Attention needed from Mike West and Peter Beverloo

            Thomas Nguyen added 1 comment

            File content/browser/renderer_host/render_frame_host_impl.cc
            Thomas Nguyen

            I apologize, I got sick and might have a slight delay in checking this. We can file a separate bug to revisit the old implementation, rather than blocking the progress here.

            Open in Gerrit

            Related details

            Attention is currently required from:
            • Mike West
            • Peter Beverloo
            Gerrit-Attention: Mike West <mk...@chromium.org>
            Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
            Gerrit-Comment-Date: Thu, 30 Oct 2025 08:25:10 +0000
            Gerrit-HasComments: Yes
            Gerrit-Has-Labels: No
            satisfied_requirement
            unsatisfied_requirement
            open
            diffy

            Arthur Sonzogni (Gerrit)

            unread,
            Oct 30, 2025, 8:24:57 AM (3 days ago) Oct 30
            to Mike West, Thomas Nguyen, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
            Attention needed from Mike West and Peter Beverloo

            Arthur Sonzogni added 1 comment

            File content/browser/renderer_host/render_frame_host_impl.cc
            Line 19272, Patchset 17:RenderFrameHostImpl::GetCachedPermissionStatuses() {
            Arthur Sonzogni . resolved

            Related details

            Attention is currently required from:
            • Mike West
            • Peter Beverloo
            Submit Requirements:
              • requirement satisfiedCode-Coverage
              • requirement is not satisfiedCode-Owners
              • requirement satisfiedCode-Review
              • requirement satisfiedReview-Enforcement
              Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
              Gerrit-MessageType: comment
              Gerrit-Project: chromium/src
              Gerrit-Branch: main
              Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
              Gerrit-Change-Number: 7079238
              Gerrit-PatchSet: 18
              Gerrit-Owner: Mike West <mk...@chromium.org>
              Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
              Gerrit-Reviewer: Kent Tamura <tk...@chromium.org>
              Gerrit-Reviewer: Mike West <mk...@chromium.org>
              Gerrit-Reviewer: Peter Beverloo <pe...@chromium.org>
              Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
              Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
              Gerrit-CC: Kentaro Hara <har...@chromium.org>
              Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
              Gerrit-Attention: Mike West <mk...@chromium.org>
              Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
              Gerrit-Comment-Date: Thu, 30 Oct 2025 12:24:34 +0000
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Mike West (Gerrit)

              unread,
              Oct 30, 2025, 12:37:47 PM (3 days ago) Oct 30
              to Bo Liu, Arthur Sonzogni, Thomas Nguyen, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
              Attention needed from Bo Liu and Peter Beverloo

              Mike West added 1 comment

              Patchset-level comments
              Mike West . resolved

              boliu@: Would you mind stamping the change to `//android_webview` to disable the flag added in this CL, consistent with the other flags for similar elements that are equally unsupported in that environment?

              Open in Gerrit

              Related details

              Attention is currently required from:
              • Bo Liu
              • Peter Beverloo
              Submit Requirements:
              • requirement satisfiedCode-Coverage
              • requirement is not satisfiedCode-Owners
              • requirement satisfiedCode-Review
              • requirement satisfiedReview-Enforcement
              Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
              Gerrit-MessageType: comment
              Gerrit-Project: chromium/src
              Gerrit-Branch: main
              Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
              Gerrit-Change-Number: 7079238
              Gerrit-PatchSet: 18
              Gerrit-Owner: Mike West <mk...@chromium.org>
              Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
              Gerrit-Reviewer: Bo Liu <bo...@chromium.org>
              Gerrit-Reviewer: Kent Tamura <tk...@chromium.org>
              Gerrit-Reviewer: Mike West <mk...@chromium.org>
              Gerrit-Reviewer: Peter Beverloo <pe...@chromium.org>
              Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
              Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
              Gerrit-CC: Kentaro Hara <har...@chromium.org>
              Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
              Gerrit-Attention: Bo Liu <bo...@chromium.org>
              Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
              Gerrit-Comment-Date: Thu, 30 Oct 2025 16:37:25 +0000
              Gerrit-HasComments: Yes
              Gerrit-Has-Labels: No
              satisfied_requirement
              unsatisfied_requirement
              open
              diffy

              Bo Liu (Gerrit)

              unread,
              Oct 30, 2025, 1:17:37 PM (3 days ago) Oct 30
              to Mike West, Bo Liu, Arthur Sonzogni, Thomas Nguyen, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
              Attention needed from Mike West and Peter Beverloo

              Bo Liu voted Code-Review+1

              Code-Review+1
              Open in Gerrit

              Related details

              Attention is currently required from:
              • Mike West
              • Peter Beverloo
              Submit Requirements:
              • requirement satisfiedCode-Coverage
              • requirement satisfiedCode-Owners
              • requirement satisfiedCode-Review
              • requirement satisfiedReview-Enforcement
              Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
              Gerrit-MessageType: comment
              Gerrit-Project: chromium/src
              Gerrit-Branch: main
              Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
              Gerrit-Change-Number: 7079238
              Gerrit-PatchSet: 18
              Gerrit-Owner: Mike West <mk...@chromium.org>
              Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
              Gerrit-Reviewer: Bo Liu <bo...@chromium.org>
              Gerrit-Reviewer: Kent Tamura <tk...@chromium.org>
              Gerrit-Reviewer: Mike West <mk...@chromium.org>
              Gerrit-Reviewer: Peter Beverloo <pe...@chromium.org>
              Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
              Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
              Gerrit-CC: Kentaro Hara <har...@chromium.org>
              Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
              Gerrit-Attention: Mike West <mk...@chromium.org>
              Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
              Gerrit-Comment-Date: Thu, 30 Oct 2025 17:17:30 +0000
              Gerrit-HasComments: No
              Gerrit-Has-Labels: Yes
              satisfied_requirement
              open
              diffy

              Mike West (Gerrit)

              unread,
              Oct 30, 2025, 3:10:35 PM (3 days ago) Oct 30
              to Bo Liu, Arthur Sonzogni, Thomas Nguyen, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
              Attention needed from Peter Beverloo

              Mike West voted Commit-Queue+2

              Commit-Queue+2
              Open in Gerrit

              Related details

              Attention is currently required from:
              • Peter Beverloo
              Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
              Gerrit-Comment-Date: Thu, 30 Oct 2025 19:10:11 +0000
              Gerrit-HasComments: No
              Gerrit-Has-Labels: Yes
              satisfied_requirement
              open
              diffy

              Robert Paveza (Gerrit)

              unread,
              Oct 30, 2025, 3:34:30 PM (3 days ago) Oct 30
              to Mike West, Alexander Kyereboah, Bo Liu, Arthur Sonzogni, Thomas Nguyen, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
              Attention needed from Alexander Kyereboah, Mike West and Peter Beverloo

              Robert Paveza added 1 comment

              File third_party/blink/renderer/core/html/html_install_element.cc
              Line 66, Patchset 18 (Latest): GetLocale().QueryString(message_id, String(url.Host().ToString()));
              Robert Paveza . unresolved

              I think this is a fundamental shortcoming with the approach that you had prototyped in the explainer, in that this sticks specifically to the hostname. While that might feasible for some applications, one origin or host may serve many applications.

              From a practical standpoint, I think that rendering a button will necessarily require that we fetch the manifest as part of presenting the button so that we can obtain the application's title, and we should also fetch the localized title conditioned on the browser's configured version (something that @akyer...@microsoft.com is currently working on).

              Open in Gerrit

              Related details

              Attention is currently required from:
              • Alexander Kyereboah
              • Mike West
              • Peter Beverloo
              Submit Requirements:
                • requirement satisfiedCode-Coverage
                • requirement satisfiedCode-Owners
                • requirement satisfiedCode-Review
                • requirement is not satisfiedNo-Unresolved-Comments
                • requirement satisfiedReview-Enforcement
                Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                Gerrit-MessageType: comment
                Gerrit-Project: chromium/src
                Gerrit-Branch: main
                Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
                Gerrit-Change-Number: 7079238
                Gerrit-PatchSet: 18
                Gerrit-Owner: Mike West <mk...@chromium.org>
                Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
                Gerrit-Reviewer: Bo Liu <bo...@chromium.org>
                Gerrit-Reviewer: Kent Tamura <tk...@chromium.org>
                Gerrit-Reviewer: Mike West <mk...@chromium.org>
                Gerrit-Reviewer: Peter Beverloo <pe...@chromium.org>
                Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
                Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
                Gerrit-CC: Alexander Kyereboah <akyer...@microsoft.com>
                Gerrit-CC: Kentaro Hara <har...@chromium.org>
                Gerrit-CC: Raphael Kubo da Costa <ku...@igalia.com>
                Gerrit-CC: Robert Paveza <Rob.P...@microsoft.com>
                Gerrit-Attention: Alexander Kyereboah <akyer...@microsoft.com>
                Gerrit-Attention: Mike West <mk...@chromium.org>
                Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
                Gerrit-Comment-Date: Thu, 30 Oct 2025 19:34:18 +0000
                Gerrit-HasComments: Yes
                Gerrit-Has-Labels: No
                satisfied_requirement
                unsatisfied_requirement
                open
                diffy

                Mike West (Gerrit)

                unread,
                Oct 30, 2025, 4:17:54 PM (3 days ago) Oct 30
                to Alexander Kyereboah, Robert Paveza, Bo Liu, Arthur Sonzogni, Thomas Nguyen, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, Chromium LUCI CQ, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org
                Attention needed from Alexander Kyereboah, Peter Beverloo and Robert Paveza

                Mike West voted and added 1 comment

                Votes added by Mike West

                Commit-Queue+2

                1 comment

                File third_party/blink/renderer/core/html/html_install_element.cc
                Line 66, Patchset 18 (Latest): GetLocale().QueryString(message_id, String(url.Host().ToString()));
                Robert Paveza . resolved

                I think this is a fundamental shortcoming with the approach that you had prototyped in the explainer, in that this sticks specifically to the hostname. While that might feasible for some applications, one origin or host may serve many applications.

                From a practical standpoint, I think that rendering a button will necessarily require that we fetch the manifest as part of presenting the button so that we can obtain the application's title, and we should also fetch the localized title conditioned on the browser's configured version (something that @akyer...@microsoft.com is currently working on).

                Mike West

                Thanks! As I mentioned elsewhere, I think there are downsides to rendering the title, but I agree with you that rendering the hostname might not allow enough differentiation for origins with many apps. That's something we'll certainly need to discuss a bit more to find a reasonable approach!

                Open in Gerrit

                Related details

                Attention is currently required from:
                • Alexander Kyereboah
                • Peter Beverloo
                • Robert Paveza
                Submit Requirements:
                  • requirement satisfiedCode-Coverage
                  • requirement satisfiedCode-Owners
                  • requirement satisfiedCode-Review
                  • requirement satisfiedReview-Enforcement
                  Gerrit-Attention: Robert Paveza <Rob.P...@microsoft.com>
                  Gerrit-Attention: Peter Beverloo <pe...@chromium.org>
                  Gerrit-Comment-Date: Thu, 30 Oct 2025 20:17:29 +0000
                  Gerrit-HasComments: Yes
                  Gerrit-Has-Labels: Yes
                  Comment-In-Reply-To: Robert Paveza <Rob.P...@microsoft.com>
                  satisfied_requirement
                  open
                  diffy

                  Chromium LUCI CQ (Gerrit)

                  unread,
                  Oct 30, 2025, 4:46:18 PM (3 days ago) Oct 30
                  to Mike West, Alexander Kyereboah, Robert Paveza, Bo Liu, Arthur Sonzogni, Thomas Nguyen, Kent Tamura, Peter Beverloo, AI Code Reviewer, AyeAye, chromium...@chromium.org, Kentaro Hara, Raphael Kubo da Costa, navigation...@chromium.org, creis...@chromium.org, alexmo...@chromium.org, ashleynewson+w...@chromium.org, android-web...@chromium.org, blink-re...@chromium.org, blink-revie...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org, jmedle...@chromium.org, kinuko...@chromium.org

                  Chromium LUCI CQ submitted the change

                  Change information

                  Commit message:
                  [<install> Element] Build a prototype.

                  This CL sketches out a prototype of the `<install>` element proposal at
                  https://github.com/mikewest/pepc-install. To do so, it:

                  1. Introduces an `HTMLInstallElement` inheriting from
                  `HTMLPermissionElement` that relies on the `WEB_APP_INSTALLATION`
                  permission, and hooks into the `WebInstallService` to trigger the
                  same behavior as the Web Install API on user interaction. This isn't
                  quite the same behavior as described in the explainer linked above,
                  but it sets up scaffolding that we can use later if we decide to go
                  this route. In particular, the explainer proposes specifying the
                  manifest URL directly, while the API allows any url in scope of the
                  app. We'll want to reconcile that in the future.

                  2. It pulls some testing code out of `HTMLGeolocationElementTest`, into
                  a new helper file shared between `<geolocation>` and `<install>`,
                  and adds some light tests to verify the simplest things possible.
                  We will certainly want more, but locking in too much behavior right
                  now probably doesn't make sense, as I expect a few things about the
                  design to change.

                  3. It adjusts `PermissionControllerImpl` and `PermissionServiceImpl` to
                  support non-device permissions.
                  Bug: 454827186
                  Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
                  Reviewed-by: Bo Liu <bo...@chromium.org>
                  Commit-Queue: Mike West <mk...@chromium.org>
                  Reviewed-by: Kent Tamura <tk...@chromium.org>
                  Reviewed-by: Thomas Nguyen <tun...@chromium.org>
                  Reviewed-by: Arthur Sonzogni <arthurs...@chromium.org>
                  Cr-Commit-Position: refs/heads/main@{#1538154}
                  Files:
                  • M android_webview/browser/aw_field_trials.cc
                  • M chrome/browser/chrome_browser_interface_binders.cc
                  • M content/browser/permissions/permission_controller_impl.cc
                  • M content/browser/permissions/permission_service_impl.cc
                  • M content/browser/renderer_host/render_frame_host_impl.cc
                  • M third_party/blink/DEPS
                  • M third_party/blink/public/blink_resources.grd
                  • M third_party/blink/public/strings/permission_element_strings.grd
                  • A third_party/blink/public/strings/permission_element_strings_grd/IDS_PERMISSION_REQUEST_INSTALL.png.sha1
                  • A third_party/blink/public/strings/permission_element_strings_grd/IDS_PERMISSION_REQUEST_INSTALL_WITH_HOST.png.sha1
                  • M third_party/blink/renderer/bindings/generated_in_core.gni
                  • M third_party/blink/renderer/bindings/idl_in_core.gni
                  • M third_party/blink/renderer/core/html/build.gni
                  • M third_party/blink/renderer/core/html/html_geolocation_element_test.cc
                  • A third_party/blink/renderer/core/html/html_install_element.cc
                  • A third_party/blink/renderer/core/html/html_install_element.h
                  • A third_party/blink/renderer/core/html/html_install_element.idl
                  • A third_party/blink/renderer/core/html/html_install_element_test.cc
                  • M third_party/blink/renderer/core/html/html_permission_element.cc
                  • M third_party/blink/renderer/core/html/html_permission_element.h
                  • M third_party/blink/renderer/core/html/html_permission_element_test.cc
                  • A third_party/blink/renderer/core/html/html_permission_element_test_helper.cc
                  • A third_party/blink/renderer/core/html/html_permission_element_test_helper.h
                  • M third_party/blink/renderer/core/html/html_permission_icon_element.cc
                  • M third_party/blink/renderer/core/html/html_tag_names.json5
                  • A third_party/blink/renderer/core/html/resources/images/permission_icon_install.svg
                  • M third_party/blink/renderer/core/html/resources/permission.css
                  • M third_party/blink/renderer/platform/runtime_enabled_features.json5
                  • M third_party/blink/web_tests/VirtualTestSuites
                  • M third_party/blink/web_tests/webexposed/element-instance-property-listing-expected.txt
                  • M third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt
                  Change size: XL
                  Delta: 31 files changed, 844 insertions(+), 156 deletions(-)
                  Branch: refs/heads/main
                  Submit Requirements:
                  • requirement satisfiedCode-Review: +1 by Kent Tamura, +1 by Thomas Nguyen, +1 by Bo Liu, +1 by Arthur Sonzogni
                  Open in Gerrit
                  Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
                  Gerrit-MessageType: merged
                  Gerrit-Project: chromium/src
                  Gerrit-Branch: main
                  Gerrit-Change-Id: Id534b7dec4a0e625bc941f489b6d670257b1b067
                  Gerrit-Change-Number: 7079238
                  Gerrit-PatchSet: 19
                  Gerrit-Owner: Mike West <mk...@chromium.org>
                  Gerrit-Reviewer: Arthur Sonzogni <arthurs...@chromium.org>
                  Gerrit-Reviewer: Bo Liu <bo...@chromium.org>
                  Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
                  Gerrit-Reviewer: Kent Tamura <tk...@chromium.org>
                  Gerrit-Reviewer: Mike West <mk...@chromium.org>
                  Gerrit-Reviewer: Peter Beverloo <pe...@chromium.org>
                  Gerrit-Reviewer: Thomas Nguyen <tun...@chromium.org>
                  Gerrit-CC: AI Code Reviewer <peep-gen...@system.gserviceaccount.com>
                  Gerrit-CC: Alexander Kyereboah <akyer...@microsoft.com>
                  open
                  diffy
                  satisfied_requirement
                  Reply all
                  Reply to author
                  Forward
                  0 new messages