Commit graph

1038 commits

Author SHA1 Message Date
185d0a60a7 feat(ai): replace the Vojo AI widget with a native, isolated ChatGPT-style chat surface (threads, history, typing) 2026-06-02 01:49:31 +03:00
a5fcce4d77 fix(composer): shorten long input placeholders and split the mirror joke across the rotation so phrases no longer truncate 2026-05-31 23:11:18 +03:00
9c3287165f fix bot DMs vanishing from Direct under lazy member-loading and hide invite in bot control rooms 2026-05-31 20:39:36 +03:00
fe8ba2878b feat(bots): add the Vojo AI bot widget and its capability-gated add-to-chat room picker 2026-05-31 18:30:52 +03:00
0a62fa8e1d feat(room): colour the DM stream rail per side — white own nick/dots, purple peer nick, gray peer dots, green own dot while awaiting a reply 2026-05-31 13:46:14 +03:00
a84c534179 style(room): lead the 1:1 stream row with the rail+dot, move the timestamp beside the nick and tint the peer nick lavender 2026-05-30 14:35:41 +03:00
cdd2570ff1 fix(router): import the Channels and Bots listing tabs eagerly again to kill the web tab-switch flicker regression from their lazy-split 2026-05-30 13:07:13 +03:00
45535a0dba feat(direct): show a green online dot on 1:1 chat avatars in the direct list, matching the profile card indicator 2026-05-30 01:21:27 +03:00
54f96112ff style(room): drop the 1:1 peer name chip and restore the plain bold author label 2026-05-30 01:12:33 +03:00
b4d49d3b03 style(room): match the 1:1 peer name chip corner radius to the message bubble 2026-05-30 00:59:56 +03:00
170c78fb83 feat(room): give the 1:1 peer name its own dark chip matching the message bubble and round both with a minimal all-corners radius 2026-05-30 00:52:47 +03:00
f6e374d551 feat(room): redesign the group/channel chat into a Discord-style layout with plain-text messages, avatar/timestamp grouping and the 1:1 media renderer 2026-05-30 00:28:31 +03:00
0f882567c5 feat(room): rework the 1:1 DM timeline into a VS Code-style rail with bold author labels, bubble-less own messages and same-sender run grouping 2026-05-29 23:45:18 +03:00
3f76336e57 fix(profile): load the hero avatar as a sharp scale thumbnail and keep full-res only for the expanded view 2026-05-29 02:36:28 +03:00
bfe2f89a28 perf(timeline): memoize message rows and cache the per-render call-aggregate scan and HTML body parse 2026-05-29 02:36:13 +03:00
067417050c perf(bundle): code-split heavy routes and the emoji picker and add cacheable vendor chunks to shrink first-load 2026-05-29 02:35:33 +03:00
297b55f693 feat(timeline): replace empty-chat RoomIntro with context-aware placeholder for 1:1, group and bridged rooms 2026-05-29 00:07:18 +03:00
aa3dbc13ef feat(members): replace MembersDrawer with Dawn-styled members sheet and group hero for every non-1:1 room and channel 2026-05-28 20:51:37 +03:00
1665cb185f feat(timeline): use Channel avatar+bubble layout for every non-1:1 room and shift 1:1 Stream rail ~4px left on desktop 2026-05-28 18:07:23 +03:00
2a24ee60ff fix(presence): gate /sync set_presence on app foreground state so background long-polls stop marking idle users as online 2026-05-28 17:22:59 +03:00
9a9880d63c feat(typing): replace composer-covered overlay strip with inline shimmer system-line in the timeline, aligned to the composer's left horseshoe curve 2026-05-28 02:03:26 +03:00
61fdf06126 fix(android): pad content root by WindowInsets.tappableElement so 3-button nav clears UI while gesture mode stays edge-to-edge 2026-05-28 01:57:13 +03:00
53acca3755 fix(stream-bubble): shrink bubble to text width and equalise bubble-to-bubble gap at ~14px regardless of same-sender grouping 2026-05-28 00:30:54 +03:00
67ee378b39 fix(stream-header): block body's drag-up from closed so pinning the directs/channels/bots header now requires the dedicated pin handle 2026-05-28 00:28:38 +03:00
fda6c7bd7e fix(channels): render rooms list non-virtualized so re-picking a workspace on native doesn't strand the list empty after a remount 2026-05-27 23:49:41 +03:00
136aacded1 fix(stream-header): tighten Segment paddings and cluster gaps so plus/search icons stop clipping past the right edge on 360 px Android viewports 2026-05-27 23:48:49 +03:00
443213b4b6 fix(android): apply env(safe-area-inset-bottom) so 3-button nav stops covering bottom-anchored UI 2026-05-27 22:44:16 +03:00
7b3a4145a7 fix(channels): back active-workspace persistence with a jotai atom so the native pager sees switcher picks instead of a stale memoized localStorage read 2026-05-22 01:18:15 +03:00
765445c091 feat(discord-widget): render Open-in-Channels card after login via VOJO-LOGIN-SPACE-V1 sentinel and generic open-matrix-to widget action 2026-05-21 14:08:50 +03:00
055b7d3692 fix(workspace-switcher): switch space rows to SurfaceVariant so inactive bg blends with the sheet silhouette instead of reading as dark cards 2026-05-21 01:05:34 +03:00
78504262d3 feat(stream-header): flatten web curtain to a tabsRow-border divider pixel-aligned with PageHeader at WEB_TABS_ROW_PX=54 and gate keyboard probe to native 2026-05-20 23:20:17 +03:00
cde50cff0f fix(bots): pad BotStatePage wrapper with safe-top so the mobile back-arrow header clears the Android status bar on the connect-bot empty state 2026-05-20 02:39:21 +03:00
6ca6b69d48 feat(stream-header): contextual Plus on Channels opens create-channel inside workspace and create-community on landing via StreamHeader.primaryAction 2026-05-20 01:59:04 +03:00
240bb54c29 refactor(stream-header): reset live drag on gesture teardown, drop dead pinned-local fallback, narrow commit() to peek|closed, add exhaustive transition guards and align stale comments 2026-05-20 00:59:17 +03:00
8fb885df1b feat(stream-header): free-range curtain drag through full pin↔closed↔peek range with bottomPinned-aware body bail and native-only handle 2026-05-20 00:26:10 +03:00
ab283e9788 refactor(stream-header): unify curtain gestures onto dual handle+body surfaces with 1:1 handle and rubber-band body, scroll-aware bail 2026-05-19 23:27:19 +03:00
e866cd3830 feat(stream-header): move pin/unpin gesture onto dedicated 32px drag-handle with 1:1 finger tracking and desktop-style grabber animation 2026-05-19 18:26:37 +03:00
7c5a1f2ee7 fix(mobile-tabs-pager): restore segment-button taps in pager mode via opacity-0 per-pane row and route their commits through an instant no-transition strip jump 2026-05-19 14:28:56 +03:00
0422a9832f feat(stream-header): pin chats curtain over static pager header on drag-up with per-tab atom, native-only rubber-band gesture and pinned-aware horseshoe sheet coordination 2026-05-19 11:50:31 +03:00
4a9d5f6384 fix(mobile-tabs-pager): paint Background.OnContainer on pagerRoot so panes mounted outside PageRoot inherit readable text on native 2026-05-18 22:58:53 +03:00
870e13d895 feat(mobile-tabs-pager): swipe between Direct, Channels and Bots on Capacitor native with static header, 24px gap, atom-bridged action icons and inert offscreen panes 2026-05-18 22:00:53 +03:00
727a53a776 fix(horseshoe): extend mobile DM and Channels wrappers up over the safe-top zone so the StreamHeader curtain paints the status-bar strip on drag-up 2026-05-18 15:14:58 +03:00
af97549e48 tweak(stream-header): require curtain drag past 90% of full peek travel to commit so short drags snap back as accidental 2026-05-18 02:12:55 +03:00
0c704aac38 tweak(bubbles): paint peer bg and horseshoe void pure black and flip own/peer flat-corner to bottom-left/top-left at 16px radius 2026-05-18 02:04:39 +03:00
b26340fa7d feat(electron): add desktop wrapper packaging Vojo as Windows zip with privileged vojo:// scheme, HashRouter override and native chrome 2026-05-18 01:50:16 +03:00
5dbe83aa9d feat(push): real sender+room avatars via MXC bridge with adaptive shortcut icons, plus review fixes (GROUP_ALERT_ALL, eventId dedup, isEncrypted privacy default, structured roomname parse, mark-as-read optimistic docs) 2026-05-17 17:39:19 +03:00
06778702b2 feat(push): inline RemoteInput reply on per-room notifications for cleartext rooms with optimistic local echo and encryption-state re-dump 2026-05-17 02:29:20 +03:00
38d24e5527 feat(push): group room messages into a per-room MessagingStyle conversation with DM/group channels, mark-as-read action and receipt-driven dismiss 2026-05-17 02:06:21 +03:00
408f165f60 feat(push): add WorkManager polling fallback that delivers notifications via /_matrix/client/v3/notifications when FCM is blocked 2026-05-17 01:27:55 +03:00
770609b964 feat(media): make the desktop right-side media pane resizable with a smart max that subtracts chat-list width and a chat-column reservation 2026-05-16 20:45:54 +03:00