-
7a25a2df7b
feat(context-menu): add ReactiveCheckboxItem with useSyncExternalStore
Jannis Braun
2026-03-24 21:47:52 +01:00
-
2513ba10e7
refactor(context-menu): replace static checked with reactive subscribe+getChecked
Jannis Braun
2026-03-24 21:47:16 +01:00
-
f21a1f75ce
feat(voice): add cachedUser fallback tier to useVoiceParticipantMeta
Jannis Braun
2026-03-24 21:03:46 +01:00
-
1ca5ca3132
fix(voice): align local user homeUserId fallback with null contract
Jannis Braun
2026-03-24 21:01:37 +01:00
-
8910de3053
feat(voice): add cachedUser carry-forward to ParticipantInfo
Jannis Braun
2026-03-24 19:01:34 +01:00
-
52c93ae0c5
chore: clean up review feedback — consolidate imports, fix reconnect verb, DRY username
Jannis Braun
2026-03-24 18:42:45 +01:00
-
a97dc95877
feat: wire ConnectInstanceModal into discover people cards
Jannis Braun
2026-03-24 18:38:36 +01:00
-
0dc5e8f8f4
feat: wire ConnectInstanceModal into FriendsPage add-friend input
Jannis Braun
2026-03-24 18:37:17 +01:00
-
13485bc20a
feat: wire ConnectInstanceModal into UserProfileModal friend actions
Jannis Braun
2026-03-24 18:35:29 +01:00
-
19bae17730
feat: add ConnectInstanceModal for federation friend connect flow
Jannis Braun
2026-03-24 18:33:51 +01:00
-
947fb30901
feat: add useInstanceConnect hook for federation connect flow
Jannis Braun
2026-03-24 18:32:20 +01:00
-
70f9700e43
feat: add typed errors for federation friend request failures
Jannis Braun
2026-03-24 18:31:11 +01:00
-
8c2e20165a
feat: rename codec buttons to Standard/NVIDIA · Apple with codec subtitles
Jannis Braun
2026-03-24 16:41:23 +01:00
-
b6e8aee24b
fix: cap markdown images to 400x300
Jannis Braun
2026-03-24 05:16:56 +01:00
-
7e9020f5a6
fix: cap all embed types to 400px max-width
Jannis Braun
2026-03-24 05:16:31 +01:00
-
e64658bdd5
fix: cap image and video attachments to 400x300
Jannis Braun
2026-03-24 05:15:51 +01:00
-
acb79c9de7
fix: cap GIF-only messages to 250x250
Jannis Braun
2026-03-24 05:15:10 +01:00
-
69a16ccdd5
fix: preserve hwOverdrive across mid-stream codec restart
Jannis Braun
2026-03-24 04:35:33 +01:00
-
cc30080ba8
chore: sync repo with deployed state — clean up old specs/plans, desktop tweaks
Jannis Braun
2026-03-24 04:33:23 +01:00
-
46c3838193
fix: reset hwOverdrive in all voice cleanup paths
Jannis Braun
2026-03-24 04:00:37 +01:00
-
66a0793297
feat: add hwOverdrive to updateActiveTracks effect deps for mid-stream switching
Jannis Braun
2026-03-24 03:52:20 +01:00
-
c6c44d1bdd
feat: replace codec pills with VP9/H.264 HW, wire to hwOverdrive
Jannis Braun
2026-03-24 03:51:22 +01:00
-
23249be956
feat: integrate hwOverdrive into screen share start/stop/detect
Jannis Braun
2026-03-24 03:49:57 +01:00
-
94e955989a
feat: remove codec from ScreenShareConfig, add transient hwOverdrive
Jannis Braun
2026-03-24 03:45:10 +01:00
-
0b49300d86
feat: add hwOverdrive SDP profile override module
Jannis Braun
2026-03-24 03:39:43 +01:00
-
1bdd9a387a
revert: remove ineffective GPU encoding flags from Electron
Jannis Braun
2026-03-24 02:00:43 +01:00
-
6844f8d8fd
fix: clean up GPU flags — hardware H.264 encoding not available on Win/Mac
Jannis Braun
2026-03-24 01:55:18 +01:00
-
07ac9cf505
fix: pass screenShareEncoding to override LiveKit's 15fps default
Jannis Braun
2026-03-24 01:21:16 +01:00
-
e53d3bcb98
fix: switch backup codec to VP8@30fps, dim H.264 pill with warning
Jannis Braun
2026-03-24 01:14:47 +01:00
-
a54dd9084a
feat: show encoder implementation in Connection Info, VP9 recommended hint
Jannis Braun
2026-03-24 01:06:19 +01:00
-
65a1fc1402
fix: VP9 default for both modes, clean up codec pill UI
Jannis Braun
2026-03-24 00:59:04 +01:00
-
2b2e1c7386
fix: remove preventDefault on touchstart that killed all mobile taps
Jannis Braun
2026-03-24 00:14:09 +01:00
-
8897a5894c
feat: smart codec defaults + mid-stream codec switching
Jannis Braun
2026-03-23 23:35:33 +01:00
-
894ce68194
feat: add manual codec selection (VP9/H.264) to stream settings
Jannis Braun
2026-03-23 22:44:31 +01:00
-
e7a18bd28c
fix: screenshare codec fallback, native FPS, and connection info
Jannis Braun
2026-03-23 22:10:16 +01:00
-
7693cc737e
fix: send voice_leave WS message from mobile disconnect handlers
Jannis Braun
2026-03-23 21:18:34 +01:00
-
0b7206487e
chore: delete dead useLongPress.ts hook
Jannis Braun
2026-03-23 21:12:32 +01:00
-
9f8a4ffa90
fix: prevent native text selection on mobile long-press
Jannis Braun
2026-03-23 21:12:06 +01:00
-
161e876df8
fix: IncomingCallModal calls connectFn directly for iOS gesture context
Jannis Braun
2026-03-23 21:09:37 +01:00
-
241451ca18
feat: gesture-aware voice connection, remove AppLayout auto-connect
Jannis Braun
2026-03-23 21:06:19 +01:00
-
8aa66816d8
feat: add MobileVoiceJoinSheet bottom sheet for voice preview
Jannis Braun
2026-03-23 20:59:00 +01:00
-
acf6f6fe99
refactor: align MobileVoiceFullScreen voice state resolution
Jannis Braun
2026-03-23 20:55:51 +01:00
-
cd30774596
feat: show inline voice users in mobile sidebar
Jannis Braun
2026-03-23 20:52:12 +01:00
-
7c1ec5e846
refactor: use VoiceUserRow in desktop VoiceChannel
Jannis Braun
2026-03-23 20:46:47 +01:00
-
ba11eefb0c
fix: add isUnwatchedCamera prop and remove unused React import
Jannis Braun
2026-03-23 20:44:44 +01:00
-
00c5757311
feat: add VoiceUserRow pure UI component
Jannis Braun
2026-03-23 20:40:29 +01:00
-
f27140f1c8
feat: add space folder support to MobileSpacesScreen
Jannis Braun
2026-03-23 19:34:24 +01:00
-
0d9ee44eee
feat: add federation badges to mobile surfaces
Jannis Braun
2026-03-23 19:27:39 +01:00
-
32be1bceab
feat: add voice participant context menus on mobile
Jannis Braun
2026-03-23 19:25:41 +01:00
-
937c4b68b2
feat: add leave group context menu on MobileDmsScreen
Jannis Braun
2026-03-23 19:24:17 +01:00
-
f84b1726bf
feat: add context menus to MobileSpacesScreen
Jannis Braun
2026-03-23 19:21:14 +01:00
-
8f104e1c5b
fix: derive spaceId from voice channel in buildVoiceModMenuItems
Jannis Braun
2026-03-23 16:32:47 +01:00
-
fd6be8c713
fix: suppress native iOS callout on mobile long-press
Jannis Braun
2026-03-23 15:26:09 +01:00
-
ce33d8f7ea
feat: global long-press context menus for all mobile touch targets
Jannis Braun
2026-03-23 15:12:58 +01:00
-
05a4b23d88
fix: prevent scroll snap-back during mobile momentum scrolling
Jannis Braun
2026-03-23 15:04:44 +01:00
-
2c372a5d34
fix: three mobile bugs — scroll, GeneralPanel loading, activity tab
Jannis Braun
2026-03-23 14:56:07 +01:00
-
f90cf91760
fix: immediately clean up voice state when voice-active socket disconnects
Jannis Braun
2026-03-23 14:30:57 +01:00
-
319832ebc8
feat: clear voiceWs on all voice leave paths
Jannis Braun
2026-03-23 14:27:42 +01:00
-
cc10876b93
feat: wire setVoiceWs into voice join and DM call handlers
Jannis Braun
2026-03-23 14:25:42 +01:00
-
357ba8b4d9
refactor: thread ws parameter through handleClientEvent to voice handlers
Jannis Braun
2026-03-23 14:23:48 +01:00
-
80c32ae1e6
feat: add long-press context menus for mobile messages
Jannis Braun
2026-03-23 14:22:38 +01:00
-
876326e7b7
feat: add voiceWs map and accessors to ConnectionManager
Jannis Braun
2026-03-23 14:22:28 +01:00
-
77a1a7920c
feat: add standalone MobileMembersScreen replacing blank member panel
Jannis Braun
2026-03-23 14:20:06 +01:00
-
54b367924d
feat: add drill-down navigation for Instance settings on mobile
Jannis Braun
2026-03-23 14:16:56 +01:00
-
7c40a230bc
feat: add reusable MobileScreenHeader component
Jannis Braun
2026-03-23 14:15:04 +01:00
-
d8c5e7ff16
fix: restore mobile chat scrolling by fixing height constraint chain
Jannis Braun
2026-03-23 14:14:18 +01:00
-
58f6fb1baa
fix: raise upload rate limit from 10 to 30 per minute
Jannis Braun
2026-03-23 02:55:00 +01:00
-
9a5e613331
feat: add upload progress bars and error toasts
Jannis Braun
2026-03-23 02:51:56 +01:00
-
fdc8732ba7
fix: raise upload size cap from 500 MB to 5 GB
Jannis Braun
2026-03-23 02:36:22 +01:00
-
9044bfd26f
fix: use toasts instead of inline banners for Storage panel feedback
Jannis Braun
2026-03-23 02:32:57 +01:00
-
ed854cce53
docs: update CLAUDE.md with new schema column and API endpoint
Jannis Braun
2026-03-23 02:25:25 +01:00
-
7ba6c4074e
feat: add upload limit setting and media retention cleanup to Storage panel
Jannis Braun
2026-03-23 02:24:25 +01:00
-
4807bfeeb1
feat: read/write maxUploadSizeMb in instance settings API
Jannis Braun
2026-03-23 02:22:22 +01:00
-
5be2e73c8a
fix: use per-request upload limit from DB and fix silent truncation
Jannis Braun
2026-03-23 02:22:15 +01:00
-
ee11408060
feat: add age-based media cleanup endpoint
Jannis Braun
2026-03-23 02:20:28 +01:00
-
eb743ca2ca
feat: add max_upload_size_bytes column and shared type
Jannis Braun
2026-03-23 02:19:42 +01:00
-
3c2c333a56
feat: show dangling attachment count in Storage panel
Jannis Braun
2026-03-23 01:56:51 +01:00
-
f634f35450
fix: add FK constraint to attachments.dm_message_id via table rebuild
Jannis Braun
2026-03-23 01:55:26 +01:00
-
8bcb5cc977
fix: wrap DM message deletion in transaction for atomicity
Jannis Braun
2026-03-23 01:54:42 +01:00
-
d687988ba8
fix: use explicit counter for danglingFilesOnDisk in referencedFiles calc
Jannis Braun
2026-03-23 01:53:25 +01:00
-
b40999995b
feat: detect and clean up dangling attachment records in storage janitor
Jannis Braun
2026-03-23 01:49:41 +01:00
-
4494209779
feat: add danglingAttachments/danglingSize to StorageStats type
Jannis Braun
2026-03-23 01:47:42 +01:00
-
b3d4747126
chore: remove unused ConnectedInstance type import from federationOps
Jannis Braun
2026-03-23 00:57:36 +01:00
-
aa2c6f7aa1
feat: add 'Sync now' button for connected instances with pending password sync
Jannis Braun
2026-03-23 00:53:48 +01:00
-
95cb9d4df2
feat: add background retry scheduler for federation password sync
Jannis Braun
2026-03-23 00:52:40 +01:00
-
678e1bf358
refactor: make pendingSyncOrigins reactive in Zustand store
Jannis Braun
2026-03-23 00:50:58 +01:00
-
1bd684a6b0
feat: self-healing login for federated users with stale password hashes
Jannis Braun
2026-03-23 00:48:32 +01:00
-
41caf5f90c
fix: skip currentPassword check for federated users on change-password
Jannis Braun
2026-03-23 00:48:02 +01:00
-
a888828941
chore: gitignore installers and include pending web changes
Jannis Braun
2026-03-23 00:25:31 +01:00
-
100ac15939
fix: deduplicate keybind actions when native hook and web fallback both fire
Jannis Braun
2026-03-22 23:55:59 +01:00
-
4532cc6708
fix: copy patches directory in Dockerfile before pnpm install
Jannis Braun
2026-03-22 23:54:17 +01:00
-
e4f6f9a4c4
fix: translate uiohook keycodes to match web UI keybind hashes
Jannis Braun
2026-03-22 23:50:02 +01:00
-
46126d671f
fix: patch uiohook-napi to use listen-only CGEventTap on macOS
Jannis Braun
2026-03-22 23:40:37 +01:00
-
313ff4ef87
feat: add Nori mascot to mobile empty states
Jannis Braun
2026-03-22 23:39:16 +01:00
-
b3051c25cd
feat: add lonely Nori mascot to empty Explore page
Jannis Braun
2026-03-22 23:39:15 +01:00
-
4e23cb5bf9
feat: add sleeping Nori mascot to empty DM sidebar
Jannis Braun
2026-03-22 23:39:13 +01:00
-
a4ebd52900
feat: replace Wumpus empty states with Nori mascot on Friends page
Jannis Braun
2026-03-22 23:37:15 +01:00
-
43eaceadc0
fix: improve animation hook robustness
Jannis Braun
2026-03-22 23:31:50 +01:00
-
977983eed1
feat: add useMascotAnimation hook with WAAPI state machine
Jannis Braun
2026-03-22 23:26:53 +01:00
-
e5495ac0d8
fix: resolve TS2322 ref type error and Tailwind class conflict in Mascot
Jannis Braun
2026-03-22 23:22:06 +01:00