[Vertical Tab] Handle kTabWantsAttentionStatus attention type [chromium/src : main]

0 views
Skip to first unread message

Charles Meng (Gerrit)

unread,
Jan 14, 2026, 4:12:55 PM (yesterday) Jan 14
to Eshwar Stalin, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org
Attention needed from Eshwar Stalin

New activity on the change

Open in Gerrit

Related details

Attention is currently required from:
  • Eshwar Stalin
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: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
Gerrit-Change-Number: 7471743
Gerrit-PatchSet: 3
Gerrit-Owner: Charles Meng <charl...@chromium.org>
Gerrit-Reviewer: Charles Meng <charl...@chromium.org>
Gerrit-Reviewer: Eshwar Stalin <est...@chromium.org>
Gerrit-CC: Alison Gale <ag...@chromium.org>
Gerrit-Attention: Eshwar Stalin <est...@chromium.org>
Gerrit-Comment-Date: Wed, 14 Jan 2026 21:12:46 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: No
satisfied_requirement
unsatisfied_requirement
open
diffy

Eshwar Stalin (Gerrit)

unread,
Jan 14, 2026, 4:20:47 PM (yesterday) Jan 14
to Charles Meng, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org
Attention needed from Charles Meng

Eshwar Stalin added 1 comment

File chrome/browser/ui/views/tabs/vertical/root_tab_collection_node.cc
Line 211, Patchset 3 (Latest):void RootTabCollectionNode::OnTabNeedsAttentionChanged(int model_index,
bool attention) {
tabs::TabInterface* tab = tab_strip_model_->GetTabAtIndex(model_index);
TabCollectionNode* tab_node = GetNodeForHandle(tab->GetHandle());
if (tab_node && tab_node->view()) {
static_cast<VerticalTabView*>(tab_node->view())
->SetTabNeedsAttention(attention);
}
}
Eshwar Stalin . unresolved

Let's support both groups and tabs. So let's just add a function to TabCollectionNode::NotifyAttentionChanged and use that model. Groups and Tabs should subscribe similar to OnDataChanged (OnAttentionChanged and handle it that way). Please also add group support as well to this.

Open in Gerrit

Related details

Attention is currently required from:
  • Charles Meng
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: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
    Gerrit-Change-Number: 7471743
    Gerrit-PatchSet: 3
    Gerrit-Owner: Charles Meng <charl...@chromium.org>
    Gerrit-Reviewer: Charles Meng <charl...@chromium.org>
    Gerrit-Reviewer: Eshwar Stalin <est...@chromium.org>
    Gerrit-CC: Alison Gale <ag...@chromium.org>
    Gerrit-Attention: Charles Meng <charl...@chromium.org>
    Gerrit-Comment-Date: Wed, 14 Jan 2026 21:20:37 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Charles Meng (Gerrit)

    unread,
    Jan 14, 2026, 6:04:44 PM (yesterday) Jan 14
    to Eshwar Stalin, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org
    Attention needed from Eshwar Stalin

    Charles Meng voted and added 1 comment

    Votes added by Charles Meng

    Commit-Queue+1

    1 comment

    File chrome/browser/ui/views/tabs/vertical/root_tab_collection_node.cc
    Line 211, Patchset 3 (Latest):void RootTabCollectionNode::OnTabNeedsAttentionChanged(int model_index,
    bool attention) {
    tabs::TabInterface* tab = tab_strip_model_->GetTabAtIndex(model_index);
    TabCollectionNode* tab_node = GetNodeForHandle(tab->GetHandle());
    if (tab_node && tab_node->view()) {
    static_cast<VerticalTabView*>(tab_node->view())
    ->SetTabNeedsAttention(attention);
    }
    }
    Eshwar Stalin . unresolved

    Let's support both groups and tabs. So let's just add a function to TabCollectionNode::NotifyAttentionChanged and use that model. Groups and Tabs should subscribe similar to OnDataChanged (OnAttentionChanged and handle it that way). Please also add group support as well to this.

    Charles Meng

    Do we anticipate that there will be more than one place that needs to know that attention has changed? I don't see why we should use a callback list here. In fact it seems like the existing on_will_destroy_callback_list_ and on_data_changed_callback_list_ both only ever have a single element, namely the node's view.

    I will create a separate bug for handling the tab group attention indicator notifications because our current tab group header doesn't support attention indicators yet.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Eshwar Stalin
    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: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
    Gerrit-Change-Number: 7471743
    Gerrit-PatchSet: 3
    Gerrit-Owner: Charles Meng <charl...@chromium.org>
    Gerrit-Reviewer: Charles Meng <charl...@chromium.org>
    Gerrit-Reviewer: Eshwar Stalin <est...@chromium.org>
    Gerrit-CC: Alison Gale <ag...@chromium.org>
    Gerrit-Attention: Eshwar Stalin <est...@chromium.org>
    Gerrit-Comment-Date: Wed, 14 Jan 2026 23:04:35 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    Comment-In-Reply-To: Eshwar Stalin <est...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Eshwar Stalin (Gerrit)

    unread,
    Jan 14, 2026, 8:52:10 PM (24 hours ago) Jan 14
    to Charles Meng, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org
    Attention needed from Charles Meng

    Eshwar Stalin added 1 comment

    File chrome/browser/ui/views/tabs/vertical/root_tab_collection_node.cc
    Line 211, Patchset 3 (Latest):void RootTabCollectionNode::OnTabNeedsAttentionChanged(int model_index,
    bool attention) {
    tabs::TabInterface* tab = tab_strip_model_->GetTabAtIndex(model_index);
    TabCollectionNode* tab_node = GetNodeForHandle(tab->GetHandle());
    if (tab_node && tab_node->view()) {
    static_cast<VerticalTabView*>(tab_node->view())
    ->SetTabNeedsAttention(attention);
    }
    }
    Eshwar Stalin . unresolved

    Let's support both groups and tabs. So let's just add a function to TabCollectionNode::NotifyAttentionChanged and use that model. Groups and Tabs should subscribe similar to OnDataChanged (OnAttentionChanged and handle it that way). Please also add group support as well to this.

    Charles Meng

    Do we anticipate that there will be more than one place that needs to know that attention has changed? I don't see why we should use a callback list here. In fact it seems like the existing on_will_destroy_callback_list_ and on_data_changed_callback_list_ both only ever have a single element, namely the node's view.

    I will create a separate bug for handling the tab group attention indicator notifications because our current tab group header doesn't support attention indicators yet.

    Eshwar Stalin

    I think at the very least we should move that code handling dynamically casting to view to TabCollectionNode i.e. add a NotifyAttentionChanged and then handle different collection types and cast to views from there instead of root collection node.

    I generally think the design principal was to keep the view model and view decoupled where view listens for view model updates and reacts. This allows the same view model to be used even for a different view implementation e.g. horizontal tab view. This is why I was hoping we can avoid doing it this way.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Charles Meng
    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: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
    Gerrit-Change-Number: 7471743
    Gerrit-PatchSet: 3
    Gerrit-Owner: Charles Meng <charl...@chromium.org>
    Gerrit-Reviewer: Charles Meng <charl...@chromium.org>
    Gerrit-Reviewer: Eshwar Stalin <est...@chromium.org>
    Gerrit-CC: Alison Gale <ag...@chromium.org>
    Gerrit-Attention: Charles Meng <charl...@chromium.org>
    Gerrit-Comment-Date: Thu, 15 Jan 2026 01:52:00 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Charles Meng <charl...@chromium.org>
    Comment-In-Reply-To: Eshwar Stalin <est...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Eshwar Stalin (Gerrit)

    unread,
    12:37 PM (8 hours ago) 12:37 PM
    to Charles Meng, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org
    Attention needed from Charles Meng

    Eshwar Stalin added 1 comment

    File chrome/browser/ui/views/tabs/vertical/root_tab_collection_node.cc
    Line 211, Patchset 3 (Latest):void RootTabCollectionNode::OnTabNeedsAttentionChanged(int model_index,
    bool attention) {
    tabs::TabInterface* tab = tab_strip_model_->GetTabAtIndex(model_index);
    TabCollectionNode* tab_node = GetNodeForHandle(tab->GetHandle());
    if (tab_node && tab_node->view()) {
    static_cast<VerticalTabView*>(tab_node->view())
    ->SetTabNeedsAttention(attention);
    }
    }
    Eshwar Stalin . unresolved

    Let's support both groups and tabs. So let's just add a function to TabCollectionNode::NotifyAttentionChanged and use that model. Groups and Tabs should subscribe similar to OnDataChanged (OnAttentionChanged and handle it that way). Please also add group support as well to this.

    Charles Meng

    Do we anticipate that there will be more than one place that needs to know that attention has changed? I don't see why we should use a callback list here. In fact it seems like the existing on_will_destroy_callback_list_ and on_data_changed_callback_list_ both only ever have a single element, namely the node's view.

    I will create a separate bug for handling the tab group attention indicator notifications because our current tab group header doesn't support attention indicators yet.

    Eshwar Stalin

    I think at the very least we should move that code handling dynamically casting to view to TabCollectionNode i.e. add a NotifyAttentionChanged and then handle different collection types and cast to views from there instead of root collection node.

    I generally think the design principal was to keep the view model and view decoupled where view listens for view model updates and reacts. This allows the same view model to be used even for a different view implementation e.g. horizontal tab view. This is why I was hoping we can avoid doing it this way.

    Eshwar Stalin

    Thought about this a bit more. I think we might want to consider storing this state in TabUIHelper and then populating that data in TabRendererData and leveraging OnDataChanged path. The reason being let's say we switch between HT and VT tabs, we want to keep the state. Having state in the view would lead to bugs in these scenarios. WDYT?

    Gerrit-Comment-Date: Thu, 15 Jan 2026 17:36:49 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Charles Meng (Gerrit)

    unread,
    2:23 PM (6 hours ago) 2:23 PM
    to Eshwar Stalin, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org
    Attention needed from Eshwar Stalin

    Charles Meng added 1 comment

    File chrome/browser/ui/views/tabs/vertical/root_tab_collection_node.cc
    Line 211, Patchset 3:void RootTabCollectionNode::OnTabNeedsAttentionChanged(int model_index,

    bool attention) {
    tabs::TabInterface* tab = tab_strip_model_->GetTabAtIndex(model_index);
    TabCollectionNode* tab_node = GetNodeForHandle(tab->GetHandle());
    if (tab_node && tab_node->view()) {
    static_cast<VerticalTabView*>(tab_node->view())
    ->SetTabNeedsAttention(attention);
    }
    }
    Eshwar Stalin . unresolved

    Let's support both groups and tabs. So let's just add a function to TabCollectionNode::NotifyAttentionChanged and use that model. Groups and Tabs should subscribe similar to OnDataChanged (OnAttentionChanged and handle it that way). Please also add group support as well to this.

    Charles Meng

    Do we anticipate that there will be more than one place that needs to know that attention has changed? I don't see why we should use a callback list here. In fact it seems like the existing on_will_destroy_callback_list_ and on_data_changed_callback_list_ both only ever have a single element, namely the node's view.

    I will create a separate bug for handling the tab group attention indicator notifications because our current tab group header doesn't support attention indicators yet.

    Eshwar Stalin

    I think at the very least we should move that code handling dynamically casting to view to TabCollectionNode i.e. add a NotifyAttentionChanged and then handle different collection types and cast to views from there instead of root collection node.

    I generally think the design principal was to keep the view model and view decoupled where view listens for view model updates and reacts. This allows the same view model to be used even for a different view implementation e.g. horizontal tab view. This is why I was hoping we can avoid doing it this way.

    Eshwar Stalin

    Thought about this a bit more. I think we might want to consider storing this state in TabUIHelper and then populating that data in TabRendererData and leveraging OnDataChanged path. The reason being let's say we switch between HT and VT tabs, we want to keep the state. Having state in the view would lead to bugs in these scenarios. WDYT?

    Charles Meng

    That makes sense. That bug currently doesn't exist because we secretly have the horizontal tabstrip while the vertical tab strip is showing, but once we have only one tabstrip at a time this will be a problem.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Eshwar Stalin
    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: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
    Gerrit-Change-Number: 7471743
    Gerrit-PatchSet: 3
    Gerrit-Owner: Charles Meng <charl...@chromium.org>
    Gerrit-Reviewer: Charles Meng <charl...@chromium.org>
    Gerrit-Reviewer: Eshwar Stalin <est...@chromium.org>
    Gerrit-CC: Alison Gale <ag...@chromium.org>
    Gerrit-Attention: Eshwar Stalin <est...@chromium.org>
    Gerrit-Comment-Date: Thu, 15 Jan 2026 19:23:22 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Charles Meng (Gerrit)

    unread,
    3:16 PM (5 hours ago) 3:16 PM
    to AyeAye, Eshwar Stalin, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org, jophba...@chromium.org
    Attention needed from Eshwar Stalin

    Charles Meng added 1 comment

    File chrome/browser/ui/views/tabs/vertical/root_tab_collection_node.cc
    Line 211, Patchset 3:void RootTabCollectionNode::OnTabNeedsAttentionChanged(int model_index,
    bool attention) {
    tabs::TabInterface* tab = tab_strip_model_->GetTabAtIndex(model_index);
    TabCollectionNode* tab_node = GetNodeForHandle(tab->GetHandle());
    if (tab_node && tab_node->view()) {
    static_cast<VerticalTabView*>(tab_node->view())
    ->SetTabNeedsAttention(attention);
    }
    }
    Eshwar Stalin . resolved

    Let's support both groups and tabs. So let's just add a function to TabCollectionNode::NotifyAttentionChanged and use that model. Groups and Tabs should subscribe similar to OnDataChanged (OnAttentionChanged and handle it that way). Please also add group support as well to this.

    Charles Meng

    Do we anticipate that there will be more than one place that needs to know that attention has changed? I don't see why we should use a callback list here. In fact it seems like the existing on_will_destroy_callback_list_ and on_data_changed_callback_list_ both only ever have a single element, namely the node's view.

    I will create a separate bug for handling the tab group attention indicator notifications because our current tab group header doesn't support attention indicators yet.

    Eshwar Stalin

    I think at the very least we should move that code handling dynamically casting to view to TabCollectionNode i.e. add a NotifyAttentionChanged and then handle different collection types and cast to views from there instead of root collection node.

    I generally think the design principal was to keep the view model and view decoupled where view listens for view model updates and reacts. This allows the same view model to be used even for a different view implementation e.g. horizontal tab view. This is why I was hoping we can avoid doing it this way.

    Eshwar Stalin

    Thought about this a bit more. I think we might want to consider storing this state in TabUIHelper and then populating that data in TabRendererData and leveraging OnDataChanged path. The reason being let's say we switch between HT and VT tabs, we want to keep the state. Having state in the view would lead to bugs in these scenarios. WDYT?

    Charles Meng

    That makes sense. That bug currently doesn't exist because we secretly have the horizontal tabstrip while the vertical tab strip is showing, but once we have only one tabstrip at a time this will be a problem.

    Charles Meng

    Done

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Eshwar Stalin
    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: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
      Gerrit-Change-Number: 7471743
      Gerrit-PatchSet: 5
      Gerrit-Owner: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Eshwar Stalin <est...@chromium.org>
      Gerrit-CC: Alison Gale <ag...@chromium.org>
      Gerrit-Attention: Eshwar Stalin <est...@chromium.org>
      Gerrit-Comment-Date: Thu, 15 Jan 2026 20:15:54 +0000
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Eshwar Stalin (Gerrit)

      unread,
      3:38 PM (5 hours ago) 3:38 PM
      to Charles Meng, AyeAye, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org, jophba...@chromium.org
      Attention needed from Charles Meng

      Eshwar Stalin voted and added 4 comments

      Votes added by Eshwar Stalin

      Code-Review+1

      4 comments

      Patchset-level comments
      File-level comment, Patchset 5 (Latest):
      Eshwar Stalin . resolved

      LGTM modulo CQ build failures

      File chrome/browser/ui/tab_ui_helper.h
      Line 87, Patchset 5 (Latest): bool needs_attention() { return needs_attention_; }
      Eshwar Stalin . unresolved

      make the function const?

      File chrome/browser/ui/tabs/tab_strip_model_observer.h
      Line 586, Patchset 5 (Latest): // that it needs their attention. The UI indication is set iff `attention` is
      Eshwar Stalin . unresolved

      nit: typo

      File chrome/browser/ui/views/tabs/vertical/vertical_tab_view.h
      Line 115, Patchset 5 (Latest): void SetTabNeedsAttention(bool attention);
      Eshwar Stalin . unresolved

      Can be removed now?

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Charles Meng
      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: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
      Gerrit-Change-Number: 7471743
      Gerrit-PatchSet: 5
      Gerrit-Owner: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Eshwar Stalin <est...@chromium.org>
      Gerrit-CC: Alison Gale <ag...@chromium.org>
      Gerrit-Attention: Charles Meng <charl...@chromium.org>
      Gerrit-Comment-Date: Thu, 15 Jan 2026 20:37:47 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Charles Meng (Gerrit)

      unread,
      6:34 PM (2 hours ago) 6:34 PM
      to Eshwar Stalin, AyeAye, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org, jophba...@chromium.org
      Attention needed from Eshwar Stalin

      Charles Meng added 3 comments

      File chrome/browser/ui/tab_ui_helper.h
      Line 87, Patchset 5: bool needs_attention() { return needs_attention_; }
      Eshwar Stalin . resolved

      make the function const?

      Charles Meng

      Done

      File chrome/browser/ui/tabs/tab_strip_model_observer.h
      Line 586, Patchset 5: // that it needs their attention. The UI indication is set iff `attention` is
      Eshwar Stalin . resolved

      nit: typo

      Charles Meng

      Shorthand for "if and only if".

      File chrome/browser/ui/views/tabs/vertical/vertical_tab_view.h
      Line 115, Patchset 5: void SetTabNeedsAttention(bool attention);
      Eshwar Stalin . resolved

      Can be removed now?

      Charles Meng

      Done

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Eshwar Stalin
      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: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
      Gerrit-Change-Number: 7471743
      Gerrit-PatchSet: 6
      Gerrit-Owner: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Eshwar Stalin <est...@chromium.org>
      Gerrit-CC: Alison Gale <ag...@chromium.org>
      Gerrit-Attention: Eshwar Stalin <est...@chromium.org>
      Gerrit-Comment-Date: Thu, 15 Jan 2026 23:34:39 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      Comment-In-Reply-To: Eshwar Stalin <est...@chromium.org>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Charles Meng (Gerrit)

      unread,
      6:35 PM (2 hours ago) 6:35 PM
      to Eshwar Stalin, AyeAye, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org, jophba...@chromium.org
      Attention needed from Eshwar Stalin

      Charles Meng voted Auto-Submit+1

      Auto-Submit+1
      Gerrit-Comment-Date: Thu, 15 Jan 2026 23:35:00 +0000
      Gerrit-HasComments: No
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Eshwar Stalin (Gerrit)

      unread,
      6:42 PM (2 hours ago) 6:42 PM
      to Charles Meng, AyeAye, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org, jophba...@chromium.org
      Attention needed from Charles Meng

      Eshwar Stalin added 1 comment

      File chrome/browser/ui/views/tabs/tab.cc
      Line 1250, Patchset 6 (Latest): if (IsActive()) {
      icon_->SetAttention(TabIcon::AttentionType::kBlockedWebContents, false);
      } else {
      icon_->SetAttention(TabIcon::AttentionType::kBlockedWebContents,
      data_.blocked);
      }
      Eshwar Stalin . resolved

      nit: could we combine these two like we did with vertical tab view in a future CL?

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Charles Meng
      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: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
      Gerrit-Change-Number: 7471743
      Gerrit-PatchSet: 6
      Gerrit-Owner: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Eshwar Stalin <est...@chromium.org>
      Gerrit-CC: Alison Gale <ag...@chromium.org>
      Gerrit-Attention: Charles Meng <charl...@chromium.org>
      Gerrit-Comment-Date: Thu, 15 Jan 2026 23:42:10 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: No
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Charles Meng (Gerrit)

      unread,
      6:51 PM (2 hours ago) 6:51 PM
      to Eshwar Stalin, AyeAye, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org, jophba...@chromium.org
      Attention needed from Eshwar Stalin

      Charles Meng voted and added 1 comment

      Votes added by Charles Meng

      Auto-Submit+1

      1 comment

      File chrome/browser/ui/views/tabs/tab.cc
      Line 1250, Patchset 6: if (IsActive()) {

      icon_->SetAttention(TabIcon::AttentionType::kBlockedWebContents, false);
      } else {
      icon_->SetAttention(TabIcon::AttentionType::kBlockedWebContents,
      data_.blocked);
      }
      Eshwar Stalin . resolved

      nit: could we combine these two like we did with vertical tab view in a future CL?

      Charles Meng

      might as well do that now since I'm here

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Eshwar Stalin
      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: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
      Gerrit-Change-Number: 7471743
      Gerrit-PatchSet: 7
      Gerrit-Owner: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Eshwar Stalin <est...@chromium.org>
      Gerrit-CC: Alison Gale <ag...@chromium.org>
      Gerrit-Attention: Eshwar Stalin <est...@chromium.org>
      Gerrit-Comment-Date: Thu, 15 Jan 2026 23:51:45 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      Comment-In-Reply-To: Eshwar Stalin <est...@chromium.org>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Eshwar Stalin (Gerrit)

      unread,
      7:03 PM (2 hours ago) 7:03 PM
      to Charles Meng, AyeAye, Alison Gale, Chromium LUCI CQ, chromium...@chromium.org, jophba...@chromium.org
      Attention needed from Charles Meng

      Eshwar Stalin voted

      Code-Review+1
      Commit-Queue+2
      Open in Gerrit

      Related details

      Attention is currently required from:
      • Charles Meng
      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: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
      Gerrit-Change-Number: 7471743
      Gerrit-PatchSet: 7
      Gerrit-Owner: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Eshwar Stalin <est...@chromium.org>
      Gerrit-CC: Alison Gale <ag...@chromium.org>
      Gerrit-Attention: Charles Meng <charl...@chromium.org>
      Gerrit-Comment-Date: Fri, 16 Jan 2026 00:03:20 +0000
      Gerrit-HasComments: No
      Gerrit-Has-Labels: Yes
      satisfied_requirement
      open
      diffy

      Chromium LUCI CQ (Gerrit)

      unread,
      7:46 PM (1 hour ago) 7:46 PM
      to Charles Meng, Eshwar Stalin, AyeAye, Alison Gale, chromium...@chromium.org, jophba...@chromium.org

      Chromium LUCI CQ submitted the change

      Change information

      Commit message:
      [Vertical Tab] Handle kTabWantsAttentionStatus attention type

      Previously we were only handling the web contents blocked attention
      type. This CL additionally handles the tab wants attention case, so
      that the attention indicator will show on background tabs if an alert
      is triggered after a timeout, for example.

      Screencast:
      https://screencast.googleplex.com/cast/NTk5NDg4Nzk0NTEyNTg4OHxkMWQ0MWI3MS02NA
      Fixed: 473065354
      Change-Id: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
      Auto-Submit: Charles Meng <charl...@chromium.org>
      Commit-Queue: Charles Meng <charl...@chromium.org>
      Commit-Queue: Eshwar Stalin <est...@chromium.org>
      Reviewed-by: Eshwar Stalin <est...@chromium.org>
      Cr-Commit-Position: refs/heads/main@{#1570100}
      Files:
      • M chrome/browser/ui/tab_ui_helper.h
      • M chrome/browser/ui/tabs/tab_change_type.h
      • M chrome/browser/ui/tabs/tab_renderer_data.cc
      • M chrome/browser/ui/tabs/tab_renderer_data.h
      • M chrome/browser/ui/tabs/tab_strip_model.cc
      • M chrome/browser/ui/tabs/tab_strip_model_observer.cc
      • M chrome/browser/ui/tabs/tab_strip_model_observer.h
      • M chrome/browser/ui/views/frame/top_controls_slide_controller_chromeos.cc
      • M chrome/browser/ui/views/frame/top_controls_slide_controller_chromeos.h
      • M chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc
      • M chrome/browser/ui/views/tabs/browser_tab_strip_controller.h
      • M chrome/browser/ui/views/tabs/tab.cc
      • M chrome/browser/ui/views/tabs/tab.h
      • M chrome/browser/ui/views/tabs/tab_strip.cc
      • M chrome/browser/ui/views/tabs/tab_strip.h
      • M chrome/browser/ui/views/tabs/tab_strip_unittest.cc
      • M chrome/browser/ui/views/tabs/vertical/vertical_tab_view.cc
      • M chrome/browser/ui/views/tabs/vertical/vertical_tab_view_browsertest.cc
      Change size: M
      Delta: 18 files changed, 54 insertions(+), 53 deletions(-)
      Branch: refs/heads/main
      Submit Requirements:
      • requirement satisfiedCode-Review: +1 by Eshwar Stalin
      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: I7cb0e562fb160dff67681bdff9e86ff2a0c5f94b
      Gerrit-Change-Number: 7471743
      Gerrit-PatchSet: 8
      Gerrit-Owner: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Charles Meng <charl...@chromium.org>
      Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
      Gerrit-Reviewer: Eshwar Stalin <est...@chromium.org>
      Gerrit-CC: Alison Gale <ag...@chromium.org>
      open
      diffy
      satisfied_requirement
      Reply all
      Reply to author
      Forward
      0 new messages