#1489: Optional IM icons in the top bar #1492
No reviewers
Labels
No labels
amd
avatars
bug
builder
cannot-reproduce
crash
epic
feature
from-viewer
gl-removal
known-limitation
monitoring
parity
perf
platform
priority
critical
priority
high
priority
low
priority
medium
provenance
rendering
rt
status
in-progress
status
testing
status
up-next
triage
ui
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sky_line/Slipstream!1492
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "TheSlowly/Slipstream:im-chiclets"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fixes #1489.
Off by default: Preferences > Chat > Chat Windows > "Show an icon for each open IM in the top bar". One icon per open person, group or conference IM, with an unread dot and count, a speaking indicator, click to select or hide the conversation, and right-click menus (Snooze for groups).
People coming from other viewers miss a picture per open IM across the top bar. The chiclet list is still there next to the notifications button, but only script and inventory-offer icons reach it since the per-IM chiclets were removed years ago; their menus were left in the skin with nothing handling them. SLIMChiclet is one icon per open person, group or conference IM: - the person's picture, the group's insignia, or a conference's other participant tinted green (a people icon without one); RLVa @shownames hides the picture, anonymises the name and greys out Profile / Add Friend; nearby chat gets none; - unread messages: a dot on the picture and the count beside it (99+), the icon widening for it; none while that conversation is in front with focus, none for a muted group chat; - a speaking indicator beside it while the conversation's voice is live (the other person, or anyone in a group or conference); - left click shows the conversation selected in Conversations; a click while it is already in front hides Conversations as its close button does (every conversation stays open; a torn-off one only hides); - right click opens the existing menu_imchiclet_p2p / _group / _adhoc menus, handled again; Show Session is greyed out while the conversation is showing, and the group menu gains Snooze Session. LLChicletBar observes IM sessions while SLShowIMChiclets is on (off by default, live): it adds the open conversations when switched on, one per new session, re-keys on a session id change, and removes them when switched off or when a conversation ends. The panel's message-count callback, a stub until now, refreshes the count. The checkbox is in Preferences > Chat > Chat Windows. Test-Plan: g++ -std=c++17 -Wall -Wextra -Werror -I indra/newview indra/newview/tests/slimchicletrules_test.cpp: 17 checks pass python3 indra/newview/tests/slimchiclet_checks.py: pass (every menu action handled per kind; failed with one handler renamed) clang-cl /Zs slimchiclet.cpp, llchicletbar.cpp, llchiclet.cpp: clean In world: turn the preference on with IMs open -> one icon each; a new IM adds one; a message shows the dot and count, opening it clears them and selects it in the list; clicking again hides Conversations; right-click menus work (Snooze for groups); ending a conversation removes its icon; turning the preference off removes them all. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.