Implement portal-based eye dropper for Linux [chromium/src : main]

0 views
Skip to first unread message

Thomas Anderson (Gerrit)

unread,
Aug 4, 2026, 6:27:59 PM (8 days ago) Aug 4
to Henrique Ferreiro, Sadrul Chowdhury, Rick Byers, Alex Gough, Lei Zhang, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, chromium...@chromium.org, nickdiego+wa...@igalia.com, max+watc...@igalia.com, ozone-...@chromium.org, blink-re...@chromium.org, kinuko...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Alex Gough, Lei Zhang and Rick Byers

Thomas Anderson voted and added 2 comments

Votes added by Thomas Anderson

Commit-Queue+1

2 comments

Patchset-level comments
File-level comment, Patchset 21 (Latest):
Thomas Anderson . resolved

rbyers@ and ajgo@ please approve again. Your votes got reset because there are no longer any changes in third_party/blink/renderer/core/page/page.cc

File third_party/blink/renderer/core/page/page.cc
Line 291, Patchset 19: renderer_preferences_(RendererPreferences()) {
DCHECK(!AllPages().Contains(this));
Rick Byers . resolved

Please fix this WARNING reported by ClangTidy: check: readability-redundant-member-init

initializer for member 'renderer_prefe...

check: readability-redundant-member-init

initializer for member 'renderer_preferences_' is redundant (https://clang.llvm.org/extra/clang-tidy/checks/readability/redundant-member-init.html)

(Note: You can add `Skip-Clang-Tidy-Checks: readability-redundant-member-init` footer to the CL description to skip the check)

(Lint observed on `linux-clang-tidy-rel`, but not on `android-clang-tidy-rel`)

Thomas Anderson

Done

Open in Gerrit

Related details

Attention is currently required from:
  • Alex Gough
  • Lei Zhang
  • Rick Byers
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: I780a40e7722730ad0f7d6cb237bae8c82386f659
Gerrit-Change-Number: 7708809
Gerrit-PatchSet: 21
Gerrit-Owner: Thomas Anderson <thomasa...@chromium.org>
Gerrit-Reviewer: Alex Gough <aj...@chromium.org>
Gerrit-Reviewer: Lei Zhang <the...@chromium.org>
Gerrit-Reviewer: Rick Byers <rby...@chromium.org>
Gerrit-Reviewer: Thomas Anderson <thomasa...@chromium.org>
Gerrit-CC: Henrique Ferreiro <hfer...@igalia.com>
Gerrit-CC: Sadrul Chowdhury <sad...@chromium.org>
Gerrit-Attention: Lei Zhang <the...@chromium.org>
Gerrit-Attention: Alex Gough <aj...@chromium.org>
Gerrit-Attention: Rick Byers <rby...@chromium.org>
Gerrit-Comment-Date: Tue, 04 Aug 2026 22:27:29 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Comment-In-Reply-To: Rick Byers <rby...@chromium.org>
satisfied_requirement
unsatisfied_requirement
open
diffy

Alex Gough (Gerrit)

unread,
Aug 4, 2026, 6:30:31 PM (8 days ago) Aug 4
to Thomas Anderson, Alex Gough, Henrique Ferreiro, Sadrul Chowdhury, Rick Byers, Lei Zhang, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, chromium...@chromium.org, nickdiego+wa...@igalia.com, max+watc...@igalia.com, ozone-...@chromium.org, blink-re...@chromium.org, kinuko...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
Attention needed from Lei Zhang, Rick Byers and Thomas Anderson

Alex Gough voted and added 1 comment

Votes added by Alex Gough

Code-Review+1

1 comment

Patchset-level comments
Alex Gough . resolved

lgtm again

Open in Gerrit

Related details

Attention is currently required from:
  • Lei Zhang
  • Rick Byers
  • Thomas Anderson
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: I780a40e7722730ad0f7d6cb237bae8c82386f659
    Gerrit-Change-Number: 7708809
    Gerrit-PatchSet: 21
    Gerrit-Owner: Thomas Anderson <thomasa...@chromium.org>
    Gerrit-Reviewer: Alex Gough <aj...@chromium.org>
    Gerrit-Reviewer: Lei Zhang <the...@chromium.org>
    Gerrit-Reviewer: Rick Byers <rby...@chromium.org>
    Gerrit-Reviewer: Thomas Anderson <thomasa...@chromium.org>
    Gerrit-CC: Henrique Ferreiro <hfer...@igalia.com>
    Gerrit-CC: Sadrul Chowdhury <sad...@chromium.org>
    Gerrit-Attention: Lei Zhang <the...@chromium.org>
    Gerrit-Attention: Thomas Anderson <thomasa...@chromium.org>
    Gerrit-Attention: Rick Byers <rby...@chromium.org>
    Gerrit-Comment-Date: Tue, 04 Aug 2026 22:30:18 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Thomas Anderson (Gerrit)

    unread,
    Aug 6, 2026, 10:50:17 AM (7 days ago) Aug 6
    to Alex Gough, Henrique Ferreiro, Sadrul Chowdhury, Rick Byers, Lei Zhang, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, chromium...@chromium.org, nickdiego+wa...@igalia.com, max+watc...@igalia.com, ozone-...@chromium.org, blink-re...@chromium.org, kinuko...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Lei Zhang

    Thomas Anderson added 1 comment

    Patchset-level comments
    Thomas Anderson . resolved

    pinging thestig@

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Lei Zhang
    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: I780a40e7722730ad0f7d6cb237bae8c82386f659
    Gerrit-Change-Number: 7708809
    Gerrit-PatchSet: 21
    Gerrit-Owner: Thomas Anderson <thomasa...@chromium.org>
    Gerrit-Reviewer: Alex Gough <aj...@chromium.org>
    Gerrit-Reviewer: Lei Zhang <the...@chromium.org>
    Gerrit-Reviewer: Rick Byers <rby...@chromium.org>
    Gerrit-Reviewer: Thomas Anderson <thomasa...@chromium.org>
    Gerrit-CC: Henrique Ferreiro <hfer...@igalia.com>
    Gerrit-CC: Sadrul Chowdhury <sad...@chromium.org>
    Gerrit-Attention: Lei Zhang <the...@chromium.org>
    Gerrit-Comment-Date: Thu, 06 Aug 2026 14:50:05 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Lei Zhang (Gerrit)

    unread,
    Aug 6, 2026, 3:11:48 PM (7 days ago) Aug 6
    to Thomas Anderson, Lei Zhang, Alex Gough, Henrique Ferreiro, Sadrul Chowdhury, Rick Byers, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, chromium...@chromium.org, nickdiego+wa...@igalia.com, max+watc...@igalia.com, ozone-...@chromium.org, blink-re...@chromium.org, kinuko...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org
    Attention needed from Thomas Anderson

    Lei Zhang voted and added 1 comment

    Votes added by Lei Zhang

    Code-Review+1

    1 comment

    File chrome/browser/ui/views/eye_dropper/eye_dropper_portal.h
    Line 13, Patchset 15:#include "components/dbus/xdg/request.h"
    Lei Zhang . unresolved

    Can forward declare.

    Thomas Anderson

    Done

    Lei Zhang

    Please try again.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Thomas Anderson
    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: I780a40e7722730ad0f7d6cb237bae8c82386f659
    Gerrit-Change-Number: 7708809
    Gerrit-PatchSet: 21
    Gerrit-Owner: Thomas Anderson <thomasa...@chromium.org>
    Gerrit-Reviewer: Alex Gough <aj...@chromium.org>
    Gerrit-Reviewer: Lei Zhang <the...@chromium.org>
    Gerrit-Reviewer: Rick Byers <rby...@chromium.org>
    Gerrit-Reviewer: Thomas Anderson <thomasa...@chromium.org>
    Gerrit-CC: Henrique Ferreiro <hfer...@igalia.com>
    Gerrit-CC: Sadrul Chowdhury <sad...@chromium.org>
    Gerrit-Attention: Thomas Anderson <thomasa...@chromium.org>
    Gerrit-Comment-Date: Thu, 06 Aug 2026 19:11:34 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    Comment-In-Reply-To: Lei Zhang <the...@chromium.org>
    Comment-In-Reply-To: Thomas Anderson <thomasa...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Thomas Anderson (Gerrit)

    unread,
    Aug 6, 2026, 8:43:52 PM (6 days ago) Aug 6
    to Lei Zhang, Alex Gough, Henrique Ferreiro, Sadrul Chowdhury, Rick Byers, Chromium LUCI CQ, android-bu...@system.gserviceaccount.com, chromium...@chromium.org, nickdiego+wa...@igalia.com, max+watc...@igalia.com, ozone-...@chromium.org, blink-re...@chromium.org, kinuko...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org

    Thomas Anderson voted and added 1 comment

    Votes added by Thomas Anderson

    Commit-Queue+2

    1 comment

    File chrome/browser/ui/views/eye_dropper/eye_dropper_portal.h
    Line 13, Patchset 15:#include "components/dbus/xdg/request.h"
    Lei Zhang . resolved

    Can forward declare.

    Thomas Anderson

    Done

    Lei Zhang

    Please try again.

    Thomas Anderson

    Done

    Open in Gerrit

    Related details

    Attention set is empty
    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: I780a40e7722730ad0f7d6cb237bae8c82386f659
      Gerrit-Change-Number: 7708809
      Gerrit-PatchSet: 22
      Gerrit-Owner: Thomas Anderson <thomasa...@chromium.org>
      Gerrit-Reviewer: Alex Gough <aj...@chromium.org>
      Gerrit-Reviewer: Lei Zhang <the...@chromium.org>
      Gerrit-Reviewer: Rick Byers <rby...@chromium.org>
      Gerrit-Reviewer: Thomas Anderson <thomasa...@chromium.org>
      Gerrit-CC: Henrique Ferreiro <hfer...@igalia.com>
      Gerrit-CC: Sadrul Chowdhury <sad...@chromium.org>
      Gerrit-Comment-Date: Fri, 07 Aug 2026 00:43:37 +0000
      satisfied_requirement
      open
      diffy

      Chromium LUCI CQ (Gerrit)

      unread,
      Aug 6, 2026, 10:41:28 PM (6 days ago) Aug 6
      to Thomas Anderson, Lei Zhang, Alex Gough, Henrique Ferreiro, Sadrul Chowdhury, Rick Byers, android-bu...@system.gserviceaccount.com, chromium...@chromium.org, nickdiego+wa...@igalia.com, max+watc...@igalia.com, ozone-...@chromium.org, blink-re...@chromium.org, kinuko...@chromium.org, blink-rev...@chromium.org, blink-...@chromium.org

      Chromium LUCI CQ submitted the change with unreviewed changes

      Unreviewed changes

      21 is the latest approved patch-set.
      The change was submitted with unreviewed changes in the following files:

      ```
      The name of the file: chrome/browser/ui/views/eye_dropper/eye_dropper_portal.cc
      Insertions: 1, Deletions: 0.

      The diff is too large to show. Please review the diff.
      ```
      ```
      The name of the file: chrome/browser/ui/views/eye_dropper/eye_dropper_portal.h
      Insertions: 11, Deletions: 1.

      The diff is too large to show. Please review the diff.
      ```

      Change information

      Commit message:
      Implement portal-based eye dropper for Linux

      This change adds EyeDropperPortal, which uses the
      org.freedesktop.portal.Screenshot.PickColor interface. This allows
      the color picker to work on Wayland.

      It also:
      - Removes the feature override that disabled EyeDropper on Wayland.
      - Fixes a bug in ColorChooserPopupUIController where the eye dropper
      operation was prematurely cancelled when the HTML color popup lost
      focus (due to the OS portal dialog opening). Note that on Wayland,
      opening the portal dialog steals desktop focus, causing the HTML
      color popup menu to close per Wayland xdg_popup dismissal rules.
      When the eye dropper completes, the selected color is applied
      directly to the color input element.
      - Adds unit tests for the new portal implementation using
      base::test::RunUntil.
      - Adds necessary D-Bus dependencies to
      chrome/browser/ui/views/eye_dropper/DEPS.
      - Disables incompatible interactive UI tests on Linux.
      Fixed: 40800718
      Bug: 40777177, 537480522
      Change-Id: I780a40e7722730ad0f7d6cb237bae8c82386f659
      Commit-Queue: Thomas Anderson <thomasa...@chromium.org>
      Reviewed-by: Alex Gough <aj...@chromium.org>
      Reviewed-by: Lei Zhang <the...@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#1675478}
      Files:
      • M chrome/browser/chrome_browser_field_trials.cc
      • M chrome/browser/renderer_preferences_util.cc
      • M chrome/browser/ui/views/eye_dropper/BUILD.gn
      • M chrome/browser/ui/views/eye_dropper/DEPS
      • M chrome/browser/ui/views/eye_dropper/eye_dropper_aura.cc
      • A chrome/browser/ui/views/eye_dropper/eye_dropper_portal.cc
      • A chrome/browser/ui/views/eye_dropper/eye_dropper_portal.h
      • A chrome/browser/ui/views/eye_dropper/eye_dropper_portal_unittest.cc
      • M chrome/browser/ui/views/eye_dropper/eye_dropper_view_aura_interactive_uitest.cc
      • M chrome/test/BUILD.gn
      • M third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc
      • M third_party/blink/public/common/renderer_preferences/renderer_preferences.h
      • M third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h
      • M third_party/blink/public/mojom/renderer_preferences.mojom
      • M third_party/blink/renderer/core/exported/web_view_impl.cc
      • M third_party/blink/renderer/core/html/forms/color_chooser_popup_ui_controller.cc
      • M third_party/blink/renderer/core/page/page.h
      Change size: L
      Delta: 17 files changed, 594 insertions(+), 24 deletions(-)
      Branch: refs/heads/main
      Submit Requirements:
      • requirement satisfiedCode-Review: +1 by Alex Gough, +1 by Lei Zhang
      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: I780a40e7722730ad0f7d6cb237bae8c82386f659
      Gerrit-Change-Number: 7708809
      Gerrit-PatchSet: 23
      Gerrit-Owner: Thomas Anderson <thomasa...@chromium.org>
      Gerrit-Reviewer: Alex Gough <aj...@chromium.org>
      Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
      Gerrit-Reviewer: Lei Zhang <the...@chromium.org>
      Gerrit-Reviewer: Rick Byers <rby...@chromium.org>
      Gerrit-Reviewer: Thomas Anderson <thomasa...@chromium.org>
      open
      diffy
      satisfied_requirement
      Reply all
      Reply to author
      Forward
      0 new messages