Commit graph

1727 commits

Author SHA1 Message Date
v.lagerev
5e1944090e 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
v.lagerev
183351044a 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
v.lagerev
6d9c35f596 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
v.lagerev
f8ef53f911 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
v.lagerev
ac072a1ddc 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
v.lagerev
347241264b docs(android): document MessagingStyle pipeline, channel split, callId-session dedup and edit-collapse defer rationale 2026-05-17 02:42:45 +03:00
v.lagerev
b197e354f5 fix(push): close E2EE-flip race by re-checking room encryption at reply send time, pre-flight credentials before optimistic echo, share callId-dedup helpers between FCM and Worker 2026-05-17 02:41:27 +03:00
v.lagerev
75022b9331 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
v.lagerev
ac572afb32 fix(push): dedup re-rings within one call session via composite (roomId, callSessionId) key so a participant rejoin doesn't re-alert 2026-05-17 02:22:20 +03:00
v.lagerev
23b49d4230 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
v.lagerev
ab27244579 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
v.lagerev
8f54bb47b9 update gitignore with Vite config 2026-05-16 22:06:35 +03:00
v.lagerev
03fb01cc7b 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
v.lagerev
8123df0103 fix(sidebar): raise resizable page-nav min width from 320 to 384px so StreamHeader segments and action icons stop clipping at the floor 2026-05-16 20:31:11 +03:00
v.lagerev
ff01a045e3 fix(channels): collapse /channels/ index into one mobile pane and add Create-community CTA next to Find-community on empty state 2026-05-16 20:25:01 +03:00
v.lagerev
bf05696336 feat(share): receive Android system share intents and drop the payload into the next chat the user opens via a top banner cue 2026-05-16 19:33:06 +03:00
v.lagerev
88d3db2b24 chore(lint): close all typecheck and eslint tech debt to enable husky pre-commit hook with --max-warnings 0 2026-05-16 17:22:53 +03:00
v.lagerev
45f5392a92 feat(message): paint non-own bubbles via --vojo-peer-bubble-bg in Stream + Channel layouts and Stream rail/day-divider via --vojo-timeline-rail 2026-05-16 13:13:28 +03:00
v.lagerev
6b454e004e fix(direct): exclude bridged portal rooms from Direct tab so Telegram chats live exclusively in their per-bridge personal filtering space 2026-05-16 00:31:38 +03:00
v.lagerev
5711829895 tweak(stream-header): collapse peek1/peek2 into single peek snap so one drag reveals both action chips at once 2026-05-15 23:47:40 +03:00
v.lagerev
015ae06aa1 feat(stream-header): rebuild Direct/Channels/Bots header as a curtain layered above tabs with peek chips, inline forms, and VisualViewport keyboard compensation 2026-05-15 23:05:34 +03:00
v.lagerev
ffd9cad2ad feat(theme): ship Settings picker with system/light/dark and Vojo light palette reshading sidebar, chat, bubbles, horseshoe void and PWA chrome 2026-05-15 01:06:49 +03:00
v.lagerev
c96d0061f0 feat(composer): tighten action-row padding, extract button JSX, and rotate placeholder across 12 hour-keyed variants 2026-05-15 00:13:51 +03:00
v.lagerev
3fb5f012e5 feat(members): carve rounded TL/BL on members drawer with 12px void seam to chat and extract VoidGap helper consolidating four per-pane seams 2026-05-14 21:11:36 +03:00
v.lagerev
b4f77b6f80 feat(syslines): render membership and room-state events as sender-anchored chat bubbles via StreamLayout instead of thin rail syslines 2026-05-14 01:39:51 +03:00
v.lagerev
dbda311af9 tweak(direct): dial DM list avatars down to 48px with 68px row height for a less heavy density 2026-05-14 01:12:17 +03:00
v.lagerev
ec593f34ef feat(direct): enlarge DM list avatars to size 500 with 80px row height and matched virtualizer estimate for a denser two-line layout 2026-05-14 01:05:32 +03:00
v.lagerev
ba33c9e463 fix(page-nav): hold min-height:0 on scrolling middle and shrink-no on Direct bottom rows so flex pressure no longer squashes them below their NavItem floor 2026-05-14 01:05:21 +03:00
v.lagerev
15b5fb3a28 fix(calls): split per-session bubbles by joined-count boundary with expiry-aware ongoing, post-ring duration, and same-caller retry merging 2026-05-14 00:27:38 +03:00
v.lagerev
093a908571 fix(time): use Intl numeric day-month-year everywhere so chat day dividers follow the system locale instead of hardcoded English full-month 2026-05-13 23:30:52 +03:00
v.lagerev
eb36d8b457 chore(i18n): rename DM direct-stream segment label to Direct 2026-05-13 23:30:42 +03:00
v.lagerev
5455d9e289 fix(dm-name): drop matrix-js-sdk mxid disambiguation suffix from DM room names by using peer rawDisplayName 2026-05-13 22:54:26 +03:00
v.lagerev
14087e4723 fix(i18n): track system language on every launch instead of caching first-seen value in localStorage 2026-05-13 22:54:06 +03:00
v.lagerev
7b5a99cdce feat(legal): publish Privacy Policy and account-deletion pages with About-screen link and Play Store feature graphic 2026-05-13 22:53:58 +03:00
v.lagerev
21657c75dd chore(versioning): derive Android versionName from git describe to match __APP_VERSION__ from vite 2026-05-13 22:53:48 +03:00
v.lagerev
9ec670b8cf feat(calls): render m.call.member events as one aggregate chat bubble per call aligned to initiator side 2026-05-13 15:57:23 +03:00
v.lagerev
c9ea22d2d4 feat(channels): rebuild thread drawer and channel rows as chat-style bubble cards that merge thread-summary into the bubble footer 2026-05-13 15:21:13 +03:00
v.lagerev
3f873a5041 feat(thread-drawer): wrap in horseshoe seam with rounded TL/BL and add pointer/keyboard resize clamped to viewport/3 2026-05-13 14:42:15 +03:00
v.lagerev
cab6b788e3 feat(channels): replace workspace switcher popout with sliding horseshoe sheet and inline create-channel row, retire sidebar CreateTab 2026-05-13 14:21:39 +03:00
v.lagerev
dce683291c chore(mascot): re-encode as 2s VP9 cycle and center auth drop-shadow on character 2026-05-13 04:17:14 +03:00
v.lagerev
bf113eaca0 chore(android): enable R8 shrinker with keep rules, set up release signing, and strip sourcemaps from APK 2026-05-13 04:17:09 +03:00
v.lagerev
dcb080ec6a chore(bundle): trim web bundle by dropping unused Twemoji TTF, Prism languages, and MediaPipe blur wasm 2026-05-13 04:17:03 +03:00
v.lagerev
b1b9631724 feat(media-viewer): atom-driven horseshoe shell over chat replacing Overlay modal for image+video with anchor-aware pinch/wheel zoom and swipe prev/next 2026-05-13 02:47:04 +03:00
v.lagerev
e5a85b9b88 feat(chat): hide composer on scroll-up past 200px and replace jump-to-latest chip with circular FAB that pulses on incoming live messages 2026-05-13 01:36:29 +03:00
v.lagerev
a7d6fc2cb2 feat(settings): replace Modal500 with /settings route plus mobile bottom-up horseshoe sheet overlaying DM list via clip-path mask 2026-05-13 00:01:26 +03:00
v.lagerev
ecb790eaa1 feat(profile-rail): size mobile user-card rail to measured content height with 85vh cap and inner scroll only on overflow 2026-05-12 02:06:10 +03:00
v.lagerev
573e992c7d feat(safe-area): extend Android edge-to-edge top inset via --vojo-safe-top var and collapse profile horseshoe header with measured height 2026-05-12 01:54:30 +03:00
v.lagerev
77bb72d2af feat(safe-area): paint Android edge-to-edge top/bottom strips with the active surface tone instead of a fixed body bg 2026-05-11 23:13:56 +03:00
v.lagerev
3af516f093 feat(direct-tabs): spread DM/Channels/Bots tabs edge-to-edge and underline active segment with purple bar on the header's grey rule 2026-05-11 21:04:07 +03:00
v.lagerev
74d32ebc1b feat(horseshoe): add 12px void gap between chat and profile pane with rounded TL/BL on profile, drop page-nav right rounding 2026-05-11 20:33:51 +03:00