a1denvalu3
bbc7dc95a1
align selected language to row end
2026-07-28 16:30:50 +02:00
a1denvalu3
525ba27e3b
refine language picker for iOS parity
2026-07-28 16:24:11 +02:00
a1denvalu3
8f2585d8eb
feat: add in-app language picker
2026-07-28 16:18:01 +02:00
callebtc
96340a35aa
fix string
2026-07-28 00:57:30 +02:00
callebtc
57d11299da
Merge pull request #781 from permissionlesstech/codex/background-power-optimization
...
Centralize adaptive background power scheduling
2026-07-28 00:15:08 +02:00
callebtc
4658a3961f
Merge pull request #795 from permissionlesstech/fix/onboarding-skip-button-alignment
...
Fix onboarding skip-button jump between permission screens
2026-07-28 00:14:23 +02:00
callebtc
15a580aeef
Merge pull request #796 from permissionlesstech/codex/private-message-arrival-order
...
Fix private message ordering across clock skew
2026-07-27 23:50:05 +02:00
callebtc
c54fdcd9fb
Merge remote-tracking branch 'origin/main' into codex/background-power-optimization
...
# Conflicts:
# app/src/main/java/com/bitchat/android/mesh/MeshCore.kt
# app/src/main/java/com/bitchat/android/ui/PrivateChatManager.kt
# app/src/main/java/com/bitchat/android/wifi-aware/WifiAwareMeshService.kt
2026-07-27 23:29:56 +02:00
callebtc
62926f88d5
fix: preserve arrival order across aliases
2026-07-27 23:29:01 +02:00
callebtc
80f774dd0b
update
2026-07-27 23:20:57 +02:00
callebtc
79a44ba546
update
2026-07-27 23:20:32 +02:00
callebtc
5fd4067ba4
readme
2026-07-27 23:19:51 +02:00
callebtc
3484ff5ccf
readme
2026-07-27 23:18:15 +02:00
callebtc
5b13598bd0
Merge pull request #794 from permissionlesstech/kimi/dm-outbox-retry-scheduler
...
Retry scheduler for queued DMs and Noise session re-establishment
2026-07-27 23:13:23 +02:00
callebtc
dfe4fba212
fix: preserve private message arrival order
2026-07-27 22:50:27 +02:00
callebtc
3c150d91e0
fix: unify outbox locking and tie retry scheduler to service lifecycle
2026-07-27 22:48:10 +02:00
callebtc
b79276f236
Tweak KDoc for onboarding footer alignment note.
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 22:42:22 +02:00
callebtc
673f65d052
Fix onboarding skip-button jump between permission screens.
...
Align the background location footer with the battery optimization layout so primary, check-again, and skip stay at the same height when navigating between them.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 22:42:15 +02:00
callebtc
7f2e684572
feat: retry scheduler for queued private messages and session re-establishment
2026-07-27 22:33:28 +02:00
callebtc
d814ac7f80
Merge pull request #729 from permissionlesstech/codex/bound-compressed-payload-expansion
...
Bound pre-auth compressed payload expansion
2026-07-27 22:28:26 +02:00
callebtc
3f6ac31262
Merge pull request #793 from permissionlesstech/ui/theme-aware-peer-colors
...
ui: theme-aware muted peer colors
2026-07-27 22:26:48 +02:00
callebtc
ea1c64d2b3
Merge pull request #784 from permissionlesstech/codex/unread-dm-rows
...
Keep unread DM senders visible in the people sheet
2026-07-27 22:26:31 +02:00
callebtc
0721c39f89
Route oversize send failure to the active conversation
...
Addresses review feedback: the size-cap error was posted to the main
mesh timeline, so a user sending from a private chat or channel never
saw it. rejectIfOversized now posts to the private conversation
(addPrivateMessageNoUnread) or channel (addChannelMessage) the send
originated from, falling back to the main timeline for public sends.
Adds regression tests for both routings.
2026-07-27 22:24:02 +02:00
callebtc
d5cef681e4
Merge remote-tracking branch 'origin/main' into codex/unread-dm-rows
...
# Conflicts:
# app/src/main/java/com/bitchat/android/ui/ChatViewModel.kt
# app/src/test/kotlin/com/bitchat/android/ui/PrivateChatManagerTest.kt
2026-07-27 22:16:13 +02:00
callebtc
773b21500f
Merge remote-tracking branch 'origin/main' into codex/unread-dm-rows
...
# Conflicts:
# app/src/main/java/com/bitchat/android/ui/ChatViewModel.kt
# app/src/test/kotlin/com/bitchat/android/ui/PrivateChatManagerTest.kt
2026-07-27 22:12:03 +02:00
callebtc
c3bc911bcd
Finish rollout: user-visible size-cap failure, OOM-safe decode catch
...
- MediaSendingManager: surface a chat system message when a picked file
exceeds the ~10 MiB send cap instead of silently dropping the send
(voice/image/file paths), completing the 'user-visible failure'
requirement of the rollout gate
- BinaryProtocol: catch Exception instead of Throwable in decodeCore so
OutOfMemoryError is never swallowed and masked as a parse failure
- docs/file_transfer.md: mark the compressed-expansion rollout gate
resolved; support for legacy >10 MiB compressed transfers is
explicitly ended
2026-07-27 22:11:19 +02:00
callebtc
35a916a3a5
Merge pull request #789 from permissionlesstech/codex/fix-read-receipt-reliability
...
fix: make read receipts reliable
2026-07-27 22:11:04 +02:00
a1denvalu3
b251812b9e
Align compressed payload send and receive bounds ( #736 )
...
* Align compressed payload send and receive bounds
* Preserve ambiguous raw deflate compatibility
* Pool decompression by memory budget
2026-07-27 22:10:27 +02:00
jack
e9bdf8aefc
Bound pre-auth compressed payload expansion
2026-07-27 22:10:27 +02:00
callebtc
7dbd65b4d0
fix: honor receipt transport acceptance
2026-07-27 22:08:10 +02:00
callebtc
719b3d1895
ui: mute theme-aware peer colors for contrast
...
Extract PeerColorStyle so each palette owns saturation/value, keeping
hues stable while dark mode stays bright-but-muted and light mode avoids
neon labels. New themes only need to supply their own style.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 22:06:46 +02:00
callebtc
c39bb8124c
Merge pull request #792 from permissionlesstech/kimi/improve-noise-handshake-reliability
...
Improve Noise handshake reliability and offline session recovery
2026-07-27 22:00:56 +02:00
callebtc
83b2c51301
fix: keep contact nickname in private chat title when peer goes offline
2026-07-27 21:58:17 +02:00
callebtc
c76c233aae
handshake robustness
2026-07-27 21:46:24 +02:00
callebtc
354f1c28cd
Merge pull request #790 from permissionlesstech/ui/people-sheet-favorited-star
...
ui: three-state favorite stars in people sheet
2026-07-27 21:26:59 +02:00
callebtc
10cc96d6e8
Merge pull request #791 from permissionlesstech/ui/enable-location-in-nearby
...
ui: move enable location services into nearby section
2026-07-27 21:26:46 +02:00
callebtc
7a26fccff7
ui: move enable location services into nearby section
...
Keep disable at the sheet footer so enabling is next to nearby channels while turning location off stays a secondary action.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 21:18:49 +02:00
callebtc
32d1916ec0
ui: show three-state favorite stars in people sheet
...
Mirror the private-chat header so peers who favorited us get an orange outline until we favorite back.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 21:11:37 +02:00
callebtc
290d72f2b6
fix: make read receipts reliable
2026-07-27 20:03:17 +02:00
callebtc
0f312a13f0
Merge pull request #788 from permissionlesstech/feat/favorited-star-wobble
...
ui: celebrate being favorited in private chats
2026-07-27 19:11:59 +02:00
callebtc
5fd686a00a
ui: celebrate being favorited in private chats
...
- header star wobbles and its outline turns orange when the peer
favorites you; it only fills once you favorite them back
- mirror the 'favorited you' system notice into the private
conversation (mesh path), matching the main chat
- expose reactive peerFavoritedUs state driven by
FavoritesPersistenceService; keep system notices silent
(no unread badge, read receipt or push)
2026-07-27 19:11:37 +02:00
callebtc
90b00ac557
Merge pull request #787 from permissionlesstech/fix/noise-after-Prs
...
Restore robust Noise handshakes and mesh DMs
2026-07-27 18:49:54 +02:00
callebtc
62dd3ca90e
fix: complete direct-link routing rollback
2026-07-27 18:47:17 +02:00
callebtc
f3c4571cc0
Merge pull request #786 from permissionlesstech/ui/noise-open-lock-transition
...
ui: open lock until Noise session is established
2026-07-27 18:46:15 +02:00
callebtc
58c56a8082
ui: open lock until Noise session is established
...
Show ic_spec_lock_open while idle or handshaking, then Crossfade to the
closed lock on success or failure — timed with the existing tint wash so
the shackle settling reads as one smooth transition.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 18:45:29 +02:00
callebtc
6dff0844bb
revert noise
2026-07-27 18:44:49 +02:00
callebtc
fa63a98e77
Update Nostr handler regression test
2026-07-27 18:28:05 +02:00
callebtc
a06c9f8614
Merge remote-tracking branch 'origin/main' into codex/background-power-optimization
2026-07-27 18:26:49 +02:00
callebtc
d8e380efae
Fix background Nostr event processing
2026-07-27 18:23:26 +02:00
callebtc
21cfa62cc2
fix: address unread DM review feedback
2026-07-27 18:23:08 +02:00