From b6878c0f3017ca80a2dbc9c4598738d577816359 Mon Sep 17 00:00:00 2001 From: John Scipione Date: Sun, 3 May 2026 15:46:57 -0400 Subject: [PATCH] Tracker: Draw pop up indicator on count view Change-Id: I22143cc361b8c70a3e92eab0621b02731554fe67 --- src/kits/tracker/CountView.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/kits/tracker/CountView.cpp b/src/kits/tracker/CountView.cpp index 627b771376..557ec34045 100644 --- a/src/kits/tracker/CountView.cpp +++ b/src/kits/tracker/CountView.cpp @@ -265,6 +265,11 @@ BCountView::Draw(BRect updateRect) BRect textRect(TextInvalRect()); + // leave room for pop up indicator + float popUpWidth = be_control_look->DefaultItemSpacing(); + if (!fPoseView->TargetModel()->IsRoot()) + textRect.right -= popUpWidth; + int32 truncateMode; if (IsTypingAhead()) truncateMode = B_TRUNCATE_BEGINNING; @@ -284,6 +289,15 @@ BCountView::Draw(BRect updateRect) MovePenTo(textRect.LeftBottom()); DrawString(itemString.String()); + // draw pop up indicator + if (!fPoseView->TargetModel()->IsRoot()) { + BRect arrowRect(bounds); + arrowRect.left = bounds.right - popUpWidth; + float fgTint = (color.IsLight() ? B_DARKEN_4_TINT : 2.f - B_DARKEN_4_TINT); + be_control_look->DrawArrowShape(this, arrowRect, updateRect, color, + BControlLook::B_DOWN_ARROW, 0, fgTint); + } + bounds.top++; rgb_color light = tint_color(ViewColor(), B_LIGHTEN_MAX_TINT);