Commit Graph

1437 Commits

Author SHA1 Message Date
John Preston 7b38464ac3 Collapse community dialogs widgets in narrow mode 2026-07-10 14:04:28 +04:00
John Preston 025dd03a6a Fade chat list under Add a Chat to Community button 2026-07-10 14:04:27 +04:00
John Preston a5ac8e7789 Pin Add a Chat button at dialogs community bottom 2026-07-10 14:04:27 +04:00
John Preston f7238d8dd9 Improve pending requests design. 2026-07-10 14:04:27 +04:00
John Preston b2e2060170 Show community requestable chats as a peer list 2026-07-10 14:04:27 +04:00
John Preston 3988de86f9 Round the dialogs community requests bubble more 2026-07-10 14:04:27 +04:00
John Preston 883046c0e9 Refine the dialogs community requests bubble 2026-07-10 14:04:27 +04:00
John Preston 4371e87212 Tune the dialogs community requests bubble layout 2026-07-10 14:04:27 +04:00
John Preston 7666df8457 Float pending-requests bubble over dialogs community 2026-07-10 14:04:27 +04:00
John Preston 8eee131fd7 Use a flat community pending-requests row 2026-07-10 14:04:27 +04:00
John Preston cf76a38638 Float the community pending-requests bubble over chats
Replace the flat pending-requests settings row with the rounded-cloud bubble pinned above the community chat list.
2026-07-10 14:04:27 +04:00
John Preston e4d46578d0 Add accent rounded-square requests bubble icon 2026-07-10 14:04:27 +04:00
John Preston eef22271e0 Support pin/folder actions for community. 2026-07-10 14:04:27 +04:00
John Preston a0fd43642a Update API scheme on layer 228. 2026-07-10 14:04:27 +04:00
John Preston 06ae3bbf94 Own community forum topic loading in the shared rows view.
Move forum topic preloading and per-forum repaint wiring into the rows view that already owns the rows.
2026-07-10 14:04:27 +04:00
John Preston 00685b6978 Deduplicate community info page row updates. 2026-07-10 14:04:26 +04:00
John Preston 9748ad1d68 Load previews and topics in the opened-community dialogs view. 2026-07-10 14:04:26 +04:00
John Preston 8afb2cfa6a Notify the community info page of member-chat updates directly. 2026-07-10 14:04:26 +04:00
John Preston 560227f2dd Repaint community info rows on community-aggregate updates. 2026-07-10 14:04:26 +04:00
John Preston d5838fe3f6 Request forum topics when an info page row is shown. 2026-07-10 14:04:26 +04:00
John Preston 71afbb405f Repaint community info rows as their content loads. 2026-07-10 14:04:26 +04:00
John Preston f080279563 Request topics for forums shown on the community info page. 2026-07-10 14:04:26 +04:00
John Preston 7db8da5501 Show forum topics on the community info page rows. 2026-07-10 14:04:26 +04:00
John Preston 8e619b6b34 Use the stealth logo for the hidden chat badge. 2026-07-10 14:04:26 +04:00
John Preston fc080063a2 Share community chat-row layout and clip its painting. 2026-07-10 14:04:26 +04:00
John Preston 32ab22fc90 Show community chats as dialogs rows on the info page. 2026-07-10 14:04:26 +04:00
John Preston 3b44f5c193 Mark hidden chats with a userpic badge in community view. 2026-07-10 14:04:26 +04:00
John Preston 442c0a7313 Support opening a community in a separate window.
Open it in its own two-column window like Archive, triggered from the context menu or a Ctrl+Click on the grouped row.
2026-07-10 14:04:26 +04:00
John Preston 15df25d9bf Open the community when clicking an ungrouped member chat's userpic. 2026-07-10 14:04:26 +04:00
John Preston 6b3b456d1f Paint a stacked-cards effect behind community userpics. 2026-07-10 14:04:26 +04:00
John Preston dd648f21b4 Polish community sections in the opened dialogs view. 2026-07-10 14:04:26 +04:00
John Preston fab6141cf4 Show viewable and requestable community chats in the opened view. 2026-07-10 14:04:26 +04:00
John Preston 24c3a4b6c0 Open community chats inline in the dialogs list. 2026-07-10 14:04:26 +04:00
John Preston 628b502228 Add community photo editing in the manage box. 2026-07-10 14:04:26 +04:00
John Preston 31cd148e87 Group community chats into one chat list row. 2026-07-10 14:04:26 +04:00
John Preston 6a4e9e9ee3 Improve design and icons in community UIs. 2026-07-10 14:04:26 +04:00
John Preston 4b23f93fcf Try showing communities in the chat list. 2026-07-10 14:04:26 +04:00
23rd a760ad4953 Bound contact birthdays callback to suggestion activation lifetime. 2026-07-10 14:04:25 +04:00
23rd f63e226eec Ignored stale activation callbacks in top bar suggestion driver. 2026-07-10 14:04:25 +04:00
Reza Bakhshi Laktasaraei ff355eb688 Focus chat list on launch in screen reader mode
Initial focus went to the unnamed Dialogs::Widget container, so NVDA
announced the raw Qt class chain. Focus the accessible chat list instead
so the list and its selected chat are announced.
2026-07-07 16:24:19 +04:00
Reza Bakhshi Laktasaraei 8f1f399a43 Hide the main menu hit-area button from screen readers
The invisible hit-area stacked under the main menu toggle duplicates the
toggle's action but has no label, so in screen reader mode it became a
second, unnamed Tab stop that read out the raw Qt class chain. Give it no
accessible role so it is skipped by keyboard/screen-reader navigation,
while mouse clicks still open the menu.
2026-07-07 16:01:03 +04:00
John Preston c362a4708e Fix identities for dialogs list rows. 2026-07-02 21:55:26 +04:00
Reza Bakhshi Laktasaraei 317eefa8c3 Opened chat on screen reader activate of a chat list row. 2026-07-02 21:32:08 +04:00
Reza Bakhshi Laktasaraei 71bd56ec0d Moved chat list selection to the navigated row on screen reader focus. 2026-07-02 21:32:08 +04:00
23rd 03d1a1d82a Added refresh of loaded userpics over cached dialogs list rows. 2026-07-02 18:46:44 +03:00
23rd ffeb5d41cd Allowed live animations over cached dialogs list rows. 2026-07-02 18:46:44 +03:00
23rd b3a2434abb Cached dialogs list rows into opaque images while scrolling. 2026-07-02 18:46:44 +03:00
John Preston 7b2754fbbb Extract reusable top bar suggestion bubble mount.
Factor the floating cloud bubble's painting and scroll-mount wiring into shared helpers so the bubble content can be mounted standalone over any scrollable surface.
2026-07-02 17:49:09 +04:00
John Preston 402cb0e668 Fix crash when removing folders with pinned chats.
ChatFilters::applyRemove() emptied the filter in the list and only then
detached its chats. Unpinning a chat re-caches its siblings' pinned
indices, which runs Session::refreshChatListEntry(); seeing the filter
still listed but emptied, it re-entered removeFromChatList() ->
setChatPinned() -> PinnedList::setPinned() on the same pinned list while
its re-cache loop iterated with a cached size, reading past the end of
the vector. This aborted on closing the Folders editor after removing
two or more folders that had pinned chats.

Detach the filter from the list before applyChange() tears down its
chats, so the re-entrant refresh no longer touches it. Also harden the
setPinned() re-cache loop to re-check the container size each iteration
as defense in depth.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-02 17:49:07 +04:00
John Preston 399b973440 Fix some editor bugs. 2026-07-02 17:49:07 +04:00