Commit Graph
206 Commits
Author SHA1 Message Date
47c40fb9f3 fix nip-17 (#305)
* NIP-59 stuff

* nip-17 ios to androing works, android to ios still wip

* fix impl

* ios compat

* default relays for DMs

* delivery ack works

* delivery ack

---------

Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2025-08-24 19:06:29 +02:00
callebtcandGitHub 23c397fe7b Geohash-specific relays (#306)
* per-relay-chat

* normalize relay URL

* turn off default relays

* add relay list

* fetch relay list from the internet
2025-08-24 12:52:31 +02:00
callebtcandGitHub cb7b01ad81 fix teleport tag and icons (#303) 2025-08-24 02:03:00 +02:00
callebtcandGitHub 37c8c79310 UI changes and fixes (#301)
* country -> region, region –> province

* revise clicks

* fix longpress for mention etc

* scroll down button wip

* fix distance

* fix button

* fix header icon
2025-08-23 21:18:36 +02:00
callebtcandGitHub 7106be4b07 country -> region, region –> province (#298) 2025-08-23 15:44:46 +02:00
callebtcandGitHub a7604d9026 slightly increase padding (#295)
* slightly increase padding

* better colors

* add copy to bottom sheet

* increase font size

* base font size

* anchor chat at the bottom
2025-08-23 14:14:42 +02:00
callebtcandGitHub 26520991cf New about sheet (#294)
* about sheet

* version

* about page
2025-08-23 12:04:21 +02:00
callebtcandGitHub 16c55a4105 Statusbar seamless (#289)
* wip status bar

* header fix
2025-08-23 02:36:36 +02:00
callebtcandGitHub f13f3063c9 Geohash notifications (#288)
* mention notifications

* notifications

* warning
2025-08-23 01:35:46 +02:00
callebtcandGitHub 65afdfb92e Link preview (#286)
* link preview

* link previews
2025-08-23 00:38:33 +02:00
callebtcandGitHub 49c42ba169 user bottom sheet (#285)
* wip sheet

* longpress

* block wip

* blocking works
2025-08-23 00:26:18 +02:00
callebtcandGitHub c9c02d993e persist last channel (#284) 2025-08-22 23:45:51 +02:00
callebtcandGitHub 2458b471ed UI fixes 2 (#282)
* better icon

* scroll

* scroll bottom sheet
2025-08-22 22:27:35 +02:00
callebtcandGitHub 8e61ab24bf Scroll fix (#281)
* auto scroll

* scroll fix
2025-08-22 22:01:11 +02:00
callebtcandGitHub 440c73961e fix minify errors (#280) 2025-08-22 21:05:03 +02:00
callebtcandGitHub 7243d841a3 Nostr geohash (#276)
* first nostr build

* add test file

* internet access

* fix relay manager

* fix serialization

* demo service - remove later

* fix nostr

* event dedupe

* dedupe

* ui wip

* can send messages

* subscription works

* works

* favs

* works

* delete chat on change

* fix mentions

* remove autojoin channels

* styling

* adjust colors

* ui changes

* live updates working

* use local timestamp

* message history in background

* robust

* fixes

* nicknames refresh optimization

* nostr service

* refactor nostr

* style

* geohash works

* centralize colors

* refactoring

* disable DMs for now: click on peer nickname doesnt open chat list in geohash mode

* use local time

* less logging

* robustness

* scroll nickname

* adjust some text
2025-08-22 19:09:18 +02:00
callebtcandGitHub c5a3368b9f Sign announcements (#267)
* wip

* announcements WIP

* works

* restore mainnet
2025-08-20 13:24:52 +02:00
callebtcandGitHub 4acfafb998 fix fragmentation baby (#266) 2025-08-19 11:16:23 +02:00
callebtcandGitHub 9795e2ce8a Changes bitchat protocol (#265)
* create payload

* compiles and can send messages

* identityannouncement

* DMs work, read receipt not sent yet

* works

* delete old code

* simplify

* working

* fragment wip

* compression wip

* use zlib compression

* clean

* nice

* mesh

* remove comments
2025-08-18 21:16:27 +02:00
lollerfirstandGitHub 72af724588 add sendPeriodicBroadcastAnnounce to startServices (#243) 2025-08-11 19:45:15 +02:00
TairandGitHub b86a6bf4d1 Fix favorite icon not updating on first Sidebar open (#237) 2025-08-07 15:07:45 +03:00
Shubert MunthaliandGitHub 763d290055 Mock Android Log to fix PeerManager tests (#239) 2025-08-07 14:39:08 +03:00
callebtcandGitHub 67c91b0559 remove system messages for connect / disconnect (#241)
* remove system messages for connect / disconnect

* fix tests
2025-08-07 11:58:06 +03:00
b418aa3899 Add CommandSuggestionsBox quick access (#146)
* Add CommandSuggestionsBox quick access

* Remove unnecessary evaluation

* Use a FilledTonalIconButton for the CommandSuggestionsBox quick access button

* fix import

* quick command instead of send

* simplify

---------

Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2025-08-06 01:25:15 +02:00
TairandGitHub 8bf2220cea Make Sidebar react to the nickname and RSSI changes. (#228) 2025-08-06 00:06:47 +02:00
62e1b752af Add PeerManager unit tests (#171)
* Add PeerManager unit tests

* Improve PeerManager tests

---------

Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2025-08-05 23:51:34 +02:00
a0d1c6f77c Add Real-Time Bluetooth State Monitoring to OnboardingFlowScreen (#55)
* Add bluetooth monitor function to onboarding flow screen

* Adds function that checks bluetooth status in real time

* Add bluetooth monitor function to onboarding flow screen

* Refactor

* Comment button to manually check BT state

* Original commits

* feat(ui): Remove auto-trigger for Bluetooth enable prompt

* feat(ui): Remove auto-trigger for Bluetooth enable prompt

* feat(ui): Remove BluetoothStatusBanner. Pending approval on feature, will add in a new PR

* Refactor and fix conflicts

---------

Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2025-08-05 23:49:04 +02:00
Tobiloba OyelekanandGitHub 335f914f32 Add MainViewModelTest (#163) 2025-08-05 23:45:05 +02:00
32c503527b disabled ripple effect from grey overlay in SidebarOverlay (#167)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2025-08-05 23:40:43 +02:00
Tobiloba OyelekanandGitHub bff8b1112c Disable overlay bakground animation (#170)
* remove slider background from animation, show only when slider is shown

* cleanup unused import in chatscreen
2025-08-05 23:38:16 +02:00
Francisco HolaandGitHub 325ce1730d Feature/mentions (#197)
* mention initial implementation

* Message conservation
2025-08-05 23:32:16 +02:00
Welisson LimaandGitHub c92d2d28b5 fix(ui): prevent sender color of past messages (#201) 2025-07-31 07:04:18 +02:00
callebtcandGitHub 4d0419c536 Touches (#205)
* touch

* increase TTL of announcements

* ui touches
2025-07-31 06:28:31 +02:00
callebtcandGitHub 4cb5932fd0 improve identity announcements (#198)
* improve identity announcements

* touches

* signing noise id

* panic mode delete signing key
2025-07-31 06:26:41 +02:00
callebtcandGitHub 4b1d6f8c04 UI improvements (#192)
* bitchat logo

* improve ui
2025-07-25 20:02:59 +02:00
callebtcandGitHub c9aba00478 Dm header icons reactive (#190)
* header reactive to noise session

* favorite button reactive

* icon change

* nice
2025-07-25 19:50:40 +02:00
callebtcandGitHub 271df2e720 on focus (#189) 2025-07-25 19:17:36 +02:00
callebtcandGitHub 34b3d8dd82 Init handshake on dm (#187)
* kinda working

* establish handshake if not done yet

* add handshakerequest packet

* read receipt
2025-07-25 19:11:45 +02:00
callebtcandGitHub 565e4ab33c Fix delivery acks and read receipts (#186)
* delivery ack and read receipt

* handle deliveryack

* fix uppercase id

* fix read receipts too
2025-07-25 17:54:12 +02:00
callebtcandGitHub 534be7e613 Refactor fingerprint manager (#185)
* centralized fingerprint manager

* centralized fingerprintmanager

* update fingerprint only if no collision
2025-07-25 15:43:19 +02:00
callebtcandGitHub 9b7009137c Handle only packets addressed to me (#184)
* skip private packets not to us

* logs
2025-07-25 02:32:36 +02:00
callebtcandGitHub 167237f7c0 Centralized relay manager (#182)
* noise: send nonce

* broadcast manager

* add missing file
2025-07-25 01:46:27 +02:00
callebtcandGitHub bc14b9f179 Periodidc broadcast announce (#183)
* noise: send nonce

* periodidc broadcast announce
2025-07-25 01:38:53 +02:00
callebtcandGitHub 1c82e4ede8 NoiseProtocol update: send nonce in packet (#181)
* noise: send nonce

* 4 byte nonce
2025-07-25 01:36:18 +02:00
callebtcandGitHub c3c395832c Implement Noise XX Handshake Protocol for Direct Messages (#180)
* noise

* works?

* noise

* temporary

* better

* wip: use subnet

* better

* barely working

* werk

* subnet

* fix peer ID

* 8 byte peer ID

* wip noise

* wip fixes for noise

* std lib for noise

* noise handshake one step further

* buffers

* use fork

* fix imports

* simplify counter

* remove trash

* hashing

* no prologue

* nice

* wip, use noise encryption

* peer ID hex

* simplify session manager

* heavy logging

* use singleton

* Fix Noise session race condition with elegant per-peer actor serialization

- Use Kotlin coroutine actors for per-peer packet processing
- Each peer gets dedicated actor that processes packets sequentially
- Eliminates race conditions in session management without complex locking
- Single surgical change in PacketProcessor - minimal, maintainable
- Leverages Kotlin's native concurrency primitives

* decrypt correctly

* iniator works now

* clean code and fix signature to null

* better

* no signature in private message

* small fixes

* refactor ack

* refactor but untested

* messages working

* wip ack

* wip fix ack

* more logging

* pending tracker

* keep pending connections on errors

* less logging

* refactor model

* refactor frombinarydata

* idendityannouncement refactor and update to new binary protocol

* fix keys

* refix keys

* dms work

* revert to mainnet

* do not change bluetooth adapter name

* keep code but uncomment

* clean up comments

* cleanup comments
2025-07-24 12:01:46 +02:00
callebtcandGitHub 9b85a070ac Update app/src/main/java/com/bitchat/android/onboarding/BatteryOptimizationScreen.kt 2025-07-19 20:07:50 +02:00
callebtcandGitHub fc63184c2f Update app/src/main/java/com/bitchat/android/onboarding/BatteryOptimizationScreen.kt 2025-07-19 20:07:38 +02:00
Faded 83144afd66 fix(onboarding): improve battery optimization screen layout and scrolling
Restructure BatteryOptimizationEnabledContent to use proper scrolling behavior and fixed button placement at the bottom. The changes ensure better usability by preventing content from being hidden behind buttons and allowing full content visibility through scrolling.
2025-07-19 18:56:39 +05:00
callebtcandGitHub 87ce65b4b1 Merge pull request #147 from gsmnit/code_readiblity_improvement
1. remove unused methods in MainActivity.kt
2025-07-19 09:48:17 +02:00
callebtcandGitHub 6c4473f174 Merge pull request #142 from hector6872/fix/messages-list-content-padding
Fix content padding in messages list
2025-07-19 09:47:00 +02:00