[NullAway] Add @NullMarked to compositor/overlays/strip files [chromium/src : main]

0 views
Skip to first unread message

Aishwarya Rajesh (Gerrit)

unread,
Sep 3, 2025, 6:42:23 PM (3 days ago) Sep 3
to Chromium LUCI CQ, chromium...@chromium.org, jinsukk...@chromium.org

Aishwarya Rajesh voted Commit-Queue+0

Commit-Queue+0
Open in Gerrit

Related details

Attention set is empty
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
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: I5f9b6909e57545e994c2f5d33bbdea7bf4481584
Gerrit-Change-Number: 6913148
Gerrit-PatchSet: 2
Gerrit-Owner: Aishwarya Rajesh <aishw...@google.com>
Gerrit-Reviewer: Aishwarya Rajesh <aishw...@google.com>
Gerrit-Comment-Date: Wed, 03 Sep 2025 22:42:13 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
satisfied_requirement
unsatisfied_requirement
open
diffy

Aishwarya Rajesh (Gerrit)

unread,
Sep 4, 2025, 8:09:43 PM (2 days ago) Sep 4
to Neil Coronado, Chromium LUCI CQ, chromium...@chromium.org, jinsukk...@chromium.org
Attention needed from Neil Coronado

Aishwarya Rajesh voted and added 1 comment

Votes added by Aishwarya Rajesh

Commit-Queue+1

1 comment

Patchset-level comments
File-level comment, Patchset 5 (Latest):
Aishwarya Rajesh . resolved

PTAL, thanks!

Open in Gerrit

Related details

Attention is currently required from:
  • Neil Coronado
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
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: I5f9b6909e57545e994c2f5d33bbdea7bf4481584
Gerrit-Change-Number: 6913148
Gerrit-PatchSet: 5
Gerrit-Owner: Aishwarya Rajesh <aishw...@google.com>
Gerrit-Reviewer: Aishwarya Rajesh <aishw...@google.com>
Gerrit-Reviewer: Neil Coronado <ne...@google.com>
Gerrit-Attention: Neil Coronado <ne...@google.com>
Gerrit-Comment-Date: Fri, 05 Sep 2025 00:09:32 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
satisfied_requirement
unsatisfied_requirement
open
diffy

Neil Coronado (Gerrit)

unread,
Sep 4, 2025, 9:09:21 PM (2 days ago) Sep 4
to Aishwarya Rajesh, Chromium LUCI CQ, chromium...@chromium.org, jinsukk...@chromium.org
Attention needed from Aishwarya Rajesh

Neil Coronado added 8 comments

Patchset-level comments
Aishwarya Rajesh . resolved

PTAL, thanks!

Neil Coronado

Thanks for the work here!

File chrome/android/java/src/org/chromium/chrome/browser/compositor/LayerTitleCache.java
Line 245, Patchset 5 (Latest): @Nullable Token groupId, @Nullable String titleString, boolean incognito) {
Neil Coronado . unresolved

I think we should instead `assumeNonNull` or assert [here](https://crsrc.org/c/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/StripDragShadowView.java;l=281;drc=eacc76afbe1d2a055571fc8f66ab67d17530956c;bpv=0;bpt=1).

Not sure what's ideal; tab strip code has this pattern of forking which method we call based on if the tab is in a group or not, so it's often safe to assume non-null, but not sure if we should just adopt a different pattern to be more explicit.

File chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/content/TitleBitmapFactory.java
Line 185, Patchset 5 (Latest): TabGroupModelFilter filter, Context context, @Nullable Token groupId, String title) {
Neil Coronado . unresolved

I think NonNull if we change in LayerTitleCache

File chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutUtils.java
Line 67, Patchset 5 (Latest): TabGroupModelFilter modelFilter, @Nullable Tab tab1, Tab tab2) {
File chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripTabModelActionListener.java
File chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/ExternalViewDragDropReorderStrategy.java
Line 208, Patchset 5 (Latest): Tab interactingTab = mModel.getTabByIdChecked(interactingStripTab.getTabId());
Neil Coronado . resolved

:o Neat! I wasn't aware of this pattern, but I think a lot of other places in tab strip can be cleaned up with this and similar things (though not in this CL).

File chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/ReorderDelegate.java
File chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/TabReorderStrategy.java
Line 266, Patchset 5 (Latest): boolean isInGroup = curTab != null && mTabGroupModelFilter.isTabInTabGroup(curTab);
Neil Coronado . unresolved

I think we can `assumeNonNull(curTab)`

Open in Gerrit

Related details

Attention is currently required from:
  • Aishwarya Rajesh
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    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: I5f9b6909e57545e994c2f5d33bbdea7bf4481584
    Gerrit-Change-Number: 6913148
    Gerrit-PatchSet: 5
    Gerrit-Owner: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Neil Coronado <ne...@google.com>
    Gerrit-Attention: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Comment-Date: Fri, 05 Sep 2025 01:09:10 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Aishwarya Rajesh <aishw...@google.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Aishwarya Rajesh (Gerrit)

    unread,
    Sep 5, 2025, 1:50:31 PM (2 days ago) Sep 5
    to Neil Coronado, Chromium LUCI CQ, chromium...@chromium.org, jinsukk...@chromium.org
    Attention needed from Neil Coronado

    Aishwarya Rajesh added 2 comments

    File chrome/android/java/src/org/chromium/chrome/browser/compositor/LayerTitleCache.java
    Line 245, Patchset 5 (Latest): @Nullable Token groupId, @Nullable String titleString, boolean incognito) {
    Neil Coronado . unresolved

    I think we should instead `assumeNonNull` or assert [here](https://crsrc.org/c/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/StripDragShadowView.java;l=281;drc=eacc76afbe1d2a055571fc8f66ab67d17530956c;bpv=0;bpt=1).

    Not sure what's ideal; tab strip code has this pattern of forking which method we call based on if the tab is in a group or not, so it's often safe to assume non-null, but not sure if we should just adopt a different pattern to be more explicit.

    Aishwarya Rajesh

    Thanks for the context Neil!

    For this particular case, I noticed that the implementation has a null check on `tabGroupId` right after this line: https://source.chromium.org/chromium/chromium/src/+/main:chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/StripDragShadowView.java;l=281;drc=eacc76afbe1d2a055571fc8f66ab67d17530956c

    So it may be odd to `assumeNonNull` here?

    not sure if we should just adopt a different pattern to be more explicit

    In my experience, it is typical to add assumes / asserts at the callsite if we have prior knowledge about an input being non-null _before_ passing it on vs making the input to the method `@Nullable`, especially if among multiple callsites, there is one or fewer exceptions. In this case, given that we have a null-check right after we extract this value makes me think that assuming this value is `null` may be incorrect.

    But as a feature OWNER if you're sure that this method will ensure a non-null `groupId`, we could remove the `@Nullable` annotation in LayerTitleCache and instead add an assert at this callsite + remove the null check. I'd choose `assumeNonNull` only if the variable is dereferenced soon after it is extracted (and therefore establishing the validity of this assumption), which is not the case here.

    File chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/ReorderDelegate.java
    Line 197, Patchset 5 (Latest): return assumeNonNull(null);
    Aishwarya Rajesh

    It's typical to use `assumeNonNull` in cases like these, other examples: https://source.chromium.org/search?q=assumeNonNull%5C(null%5C)

    This is because we're already doing `assert false` above, so it is technically safe to "assume" we're not null at this point if we've got past that. :)

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Neil Coronado
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    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: I5f9b6909e57545e994c2f5d33bbdea7bf4481584
    Gerrit-Change-Number: 6913148
    Gerrit-PatchSet: 5
    Gerrit-Owner: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Neil Coronado <ne...@google.com>
    Gerrit-Attention: Neil Coronado <ne...@google.com>
    Gerrit-Comment-Date: Fri, 05 Sep 2025 17:50:22 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Neil Coronado <ne...@google.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Aishwarya Rajesh (Gerrit)

    unread,
    Sep 5, 2025, 2:16:11 PM (2 days ago) Sep 5
    to Neil Coronado, Chromium LUCI CQ, chromium...@chromium.org, jinsukk...@chromium.org
    Attention needed from Neil Coronado

    Aishwarya Rajesh added 6 comments

    Patchset-level comments
    File-level comment, Patchset 6 (Latest):
    Aishwarya Rajesh . resolved

    Thanks for your keen insights, Neil :)

    File chrome/android/java/src/org/chromium/chrome/browser/compositor/LayerTitleCache.java
    Line 245, Patchset 5: @Nullable Token groupId, @Nullable String titleString, boolean incognito) {
    Neil Coronado . unresolved

    I think we should instead `assumeNonNull` or assert [here](https://crsrc.org/c/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/StripDragShadowView.java;l=281;drc=eacc76afbe1d2a055571fc8f66ab67d17530956c;bpv=0;bpt=1).

    Not sure what's ideal; tab strip code has this pattern of forking which method we call based on if the tab is in a group or not, so it's often safe to assume non-null, but not sure if we should just adopt a different pattern to be more explicit.

    Aishwarya Rajesh

    Thanks for the context Neil!

    For this particular case, I noticed that the implementation has a null check on `tabGroupId` right after this line: https://source.chromium.org/chromium/chromium/src/+/main:chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/StripDragShadowView.java;l=281;drc=eacc76afbe1d2a055571fc8f66ab67d17530956c

    So it may be odd to `assumeNonNull` here?

    not sure if we should just adopt a different pattern to be more explicit

    In my experience, it is typical to add assumes / asserts at the callsite if we have prior knowledge about an input being non-null _before_ passing it on vs making the input to the method `@Nullable`, especially if among multiple callsites, there is one or fewer exceptions. In this case, given that we have a null-check right after we extract this value makes me think that assuming this value is `null` may be incorrect.

    But as a feature OWNER if you're sure that this method will ensure a non-null `groupId`, we could remove the `@Nullable` annotation in LayerTitleCache and instead add an assert at this callsite + remove the null check. I'd choose `assumeNonNull` only if the variable is dereferenced soon after it is extracted (and therefore establishing the validity of this assumption), which is not the case here.

    Aishwarya Rajesh

    I looked closely at `StripDragShadowView#prepareForGroupDrag()` and realized from the docs that the tab _should_ be in a tab group, so makes sense to assert non-null at the callsite like you recommended - I made this update in the latest PS. :)

    File chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/content/TitleBitmapFactory.java
    Line 185, Patchset 5: TabGroupModelFilter filter, Context context, @Nullable Token groupId, String title) {
    Neil Coronado . resolved

    I think NonNull if we change in LayerTitleCache

    Aishwarya Rajesh

    Done

    File chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutUtils.java
    Line 67, Patchset 5: TabGroupModelFilter modelFilter, @Nullable Tab tab1, Tab tab2) {
    Neil Coronado . resolved
    Aishwarya Rajesh

    SG - done!

    File chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripTabModelActionListener.java
    Line 62, Patchset 5: @Nullable Token tabGroupId,
    Neil Coronado . resolved
    Aishwarya Rajesh

    SG - done!

    File chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/TabReorderStrategy.java
    Line 266, Patchset 5: boolean isInGroup = curTab != null && mTabGroupModelFilter.isTabInTabGroup(curTab);
    Neil Coronado . resolved

    I think we can `assumeNonNull(curTab)`

    Aishwarya Rajesh

    Realized I can do `getTabAtChecked()` above while extracting `curTab` instead :)

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Neil Coronado
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    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: I5f9b6909e57545e994c2f5d33bbdea7bf4481584
    Gerrit-Change-Number: 6913148
    Gerrit-PatchSet: 6
    Gerrit-Owner: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Neil Coronado <ne...@google.com>
    Gerrit-Attention: Neil Coronado <ne...@google.com>
    Gerrit-Comment-Date: Fri, 05 Sep 2025 18:16:00 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Neil Coronado <ne...@google.com>
    Comment-In-Reply-To: Aishwarya Rajesh <aishw...@google.com>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Neil Coronado (Gerrit)

    unread,
    Sep 5, 2025, 2:25:12 PM (2 days ago) Sep 5
    to Aishwarya Rajesh, Chromium LUCI CQ, chromium...@chromium.org, jinsukk...@chromium.org
    Attention needed from Aishwarya Rajesh

    Neil Coronado voted and added 2 comments

    Votes added by Neil Coronado

    Code-Review+1

    2 comments

    File chrome/android/java/src/org/chromium/chrome/browser/compositor/LayerTitleCache.java
    Line 245, Patchset 5: @Nullable Token groupId, @Nullable String titleString, boolean incognito) {
    Neil Coronado . resolved

    I think we should instead `assumeNonNull` or assert [here](https://crsrc.org/c/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/StripDragShadowView.java;l=281;drc=eacc76afbe1d2a055571fc8f66ab67d17530956c;bpv=0;bpt=1).

    Not sure what's ideal; tab strip code has this pattern of forking which method we call based on if the tab is in a group or not, so it's often safe to assume non-null, but not sure if we should just adopt a different pattern to be more explicit.

    Aishwarya Rajesh

    Thanks for the context Neil!

    For this particular case, I noticed that the implementation has a null check on `tabGroupId` right after this line: https://source.chromium.org/chromium/chromium/src/+/main:chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/StripDragShadowView.java;l=281;drc=eacc76afbe1d2a055571fc8f66ab67d17530956c

    So it may be odd to `assumeNonNull` here?

    not sure if we should just adopt a different pattern to be more explicit

    In my experience, it is typical to add assumes / asserts at the callsite if we have prior knowledge about an input being non-null _before_ passing it on vs making the input to the method `@Nullable`, especially if among multiple callsites, there is one or fewer exceptions. In this case, given that we have a null-check right after we extract this value makes me think that assuming this value is `null` may be incorrect.

    But as a feature OWNER if you're sure that this method will ensure a non-null `groupId`, we could remove the `@Nullable` annotation in LayerTitleCache and instead add an assert at this callsite + remove the null check. I'd choose `assumeNonNull` only if the variable is dereferenced soon after it is extracted (and therefore establishing the validity of this assumption), which is not the case here.

    Aishwarya Rajesh

    I looked closely at `StripDragShadowView#prepareForGroupDrag()` and realized from the docs that the tab _should_ be in a tab group, so makes sense to assert non-null at the callsite like you recommended - I made this update in the latest PS. :)

    Neil Coronado

    Thanks for the explanation wrt `assumeNonNull`! Also, for context, the null-check was added by the tabs team when they were doing a large scale migration from rootId -> stableId, but we previously didn't validate.

    File chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/ReorderDelegate.java
    Line 197, Patchset 5: return assumeNonNull(null);
    Neil Coronado . unresolved

    Should this be `assertNonNull` https://chromium.googlesource.com/chromium/src/+/main/styleguide/java/nullaway.md#nullaway-configuration?

    Aishwarya Rajesh

    It's typical to use `assumeNonNull` in cases like these, other examples: https://source.chromium.org/search?q=assumeNonNull%5C(null%5C)

    This is because we're already doing `assert false` above, so it is technically safe to "assume" we're not null at this point if we've got past that. :)

    Neil Coronado

    Oops, I linked to the wrong part of the page, but I was referring to this https://screenshot.googleplex.com/LyN9PwwDszW6AzX.png. But I also only see this being done in one other place so ¯\\_(ツ)_/¯

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Aishwarya Rajesh
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    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: I5f9b6909e57545e994c2f5d33bbdea7bf4481584
    Gerrit-Change-Number: 6913148
    Gerrit-PatchSet: 6
    Gerrit-Owner: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Neil Coronado <ne...@google.com>
    Gerrit-Attention: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Comment-Date: Fri, 05 Sep 2025 18:25:00 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Aishwarya Rajesh (Gerrit)

    unread,
    Sep 5, 2025, 2:31:20 PM (2 days ago) Sep 5
    to Neil Coronado, Chromium LUCI CQ, chromium...@chromium.org, jinsukk...@chromium.org

    Aishwarya Rajesh added 1 comment

    File chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/ReorderDelegate.java
    Line 197, Patchset 5: return assumeNonNull(null);
    Neil Coronado . resolved

    Should this be `assertNonNull` https://chromium.googlesource.com/chromium/src/+/main/styleguide/java/nullaway.md#nullaway-configuration?

    Aishwarya Rajesh

    It's typical to use `assumeNonNull` in cases like these, other examples: https://source.chromium.org/search?q=assumeNonNull%5C(null%5C)

    This is because we're already doing `assert false` above, so it is technically safe to "assume" we're not null at this point if we've got past that. :)

    Neil Coronado

    Oops, I linked to the wrong part of the page, but I was referring to this https://screenshot.googleplex.com/LyN9PwwDszW6AzX.png. But I also only see this being done in one other place so ¯\\_(ツ)_/¯

    Aishwarya Rajesh

    Got it, thanks for the screenshot. :)
    I guess `assume` is preferable here and in the other examples that I linked because of the preceding `assert false` :D

    Open in Gerrit

    Related details

    Attention set is empty
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    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: I5f9b6909e57545e994c2f5d33bbdea7bf4481584
    Gerrit-Change-Number: 6913148
    Gerrit-PatchSet: 6
    Gerrit-Owner: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Neil Coronado <ne...@google.com>
    Gerrit-Comment-Date: Fri, 05 Sep 2025 18:31:09 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    open
    diffy

    Aishwarya Rajesh (Gerrit)

    unread,
    Sep 5, 2025, 2:31:32 PM (2 days ago) Sep 5
    to Neil Coronado, Chromium LUCI CQ, chromium...@chromium.org, jinsukk...@chromium.org

    Aishwarya Rajesh voted Commit-Queue+2

    Commit-Queue+2
    Open in Gerrit

    Related details

    Attention set is empty
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    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: I5f9b6909e57545e994c2f5d33bbdea7bf4481584
    Gerrit-Change-Number: 6913148
    Gerrit-PatchSet: 6
    Gerrit-Owner: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Neil Coronado <ne...@google.com>
    Gerrit-Comment-Date: Fri, 05 Sep 2025 18:31:22 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    open
    diffy

    Aishwarya Rajesh (Gerrit)

    unread,
    Sep 5, 2025, 3:26:30 PM (2 days ago) Sep 5
    to Neil Coronado, Chromium LUCI CQ, chromium...@chromium.org, jinsukk...@chromium.org

    Aishwarya Rajesh voted Commit-Queue+2

    Commit-Queue+2
    Open in Gerrit

    Related details

    Attention set is empty
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Owners
    • requirement satisfiedCode-Review
    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: I5f9b6909e57545e994c2f5d33bbdea7bf4481584
    Gerrit-Change-Number: 6913148
    Gerrit-PatchSet: 7
    Gerrit-Owner: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Neil Coronado <ne...@google.com>
    Gerrit-Comment-Date: Fri, 05 Sep 2025 19:26:18 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    open
    diffy

    Chromium LUCI CQ (Gerrit)

    unread,
    Sep 5, 2025, 4:37:19 PM (2 days ago) Sep 5
    to Aishwarya Rajesh, Neil Coronado, chromium...@chromium.org, jinsukk...@chromium.org

    Chromium LUCI CQ submitted the change with unreviewed changes

    Unreviewed changes

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

    ```
    The name of the file: chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/StripDragShadowView.java
    Insertions: 1, Deletions: 2.

    @@ -281,10 +281,9 @@
    assumeNonNull(modelFilter);

    // Background color
    - @TabGroupColorId int colorId = TabGroupColorId.GREY;
    Token tabGroupId = tab.getTabGroupId();
    assert tabGroupId != null : "The tab group ID should be non-null";
    - colorId = modelFilter.getTabGroupColorWithFallback(tabGroupId);
    + @TabGroupColorId int colorId = modelFilter.getTabGroupColorWithFallback(tabGroupId);

    @ColorInt
    int groupColor =
    ```

    Change information

    Commit message:
    [NullAway] Add @NullMarked to compositor/overlays/strip files
    Bug: 389129271
    Change-Id: I5f9b6909e57545e994c2f5d33bbdea7bf4481584
    Commit-Queue: Aishwarya Rajesh <aishw...@google.com>
    Reviewed-by: Neil Coronado <ne...@google.com>
    Cr-Commit-Position: refs/heads/main@{#1511846}
    Files:
    • M chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java
    • M chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/ExternalViewDragDropReorderStrategy.java
    • M chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/GroupReorderStrategy.java
    • M chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/MultiTabReorderStrategy.java
    • M chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/ReorderDelegate.java
    • M chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/ReorderStrategyBase.java
    • M chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/SourceViewDragDropReorderStrategy.java
    • M chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/StripDragShadowView.java
    • M chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/reorder/TabReorderStrategy.java
    Change size: M
    Delta: 9 files changed, 146 insertions(+), 101 deletions(-)
    Branch: refs/heads/main
    Submit Requirements:
    • requirement satisfiedCode-Review: +1 by Neil Coronado
    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: I5f9b6909e57545e994c2f5d33bbdea7bf4481584
    Gerrit-Change-Number: 6913148
    Gerrit-PatchSet: 8
    Gerrit-Owner: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Aishwarya Rajesh <aishw...@google.com>
    Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
    Gerrit-Reviewer: Neil Coronado <ne...@google.com>
    open
    diffy
    satisfied_requirement
    Reply all
    Reply to author
    Forward
    0 new messages