276 Commits

Author SHA1 Message Date
callebtc
c1d74bd86d drop unused connections 2025-09-05 23:28:58 +02:00
lollerfirst
4b81b7f97a
fix: action message routing and duplicate local echo in geohash channels (#374)
* fix: send action messages to correct chat

* fix(action): avoid double local echo for action messages in geohash channels

When sending /hug or /slap in a location (geohash) channel, CommandProcessor
was adding a local echo and then routing to NostrGeohashService, which also
adds a local echo. This resulted in duplicate action messages on the sender’s
screen.

Change: detect when the selectedLocationChannel is a Location and, in that
case, skip adding the local echo in CommandProcessor and only call the
onSendMessage transport callback (NostrGeohashService will add the echo with
proper metadata). Private and mesh (non-location) behavior is unchanged.
2025-09-05 15:41:02 +02:00
callebtc
f47819a31e
Debug button (#377)
* feat(debug): add DebugSettingsManager + DebugSettingsSheet scaffold and AboutSheet entry; groundwork for verbose logging, GATT controls, relay stats, device/scan views

* fix(debug): wire debug sheet launch via onShowDebug in AboutSheet from ChatScreen; add public start/stop server/client methods}

* fix(about): remove misplaced debug item block inside PoW section; keep debug launcher managed by ChatScreen only

* feat(debug): wire DebugSettingsSheet role switches to explicit startServer/stopServer and startClient/stopClient; expose role controls + disconnectAll on BluetoothConnectionManager; fix syntax error; build passes

* feat(debug): add connect/disconnect helpers; wire DebugSettingsSheet connect/disconnect actions to BluetoothConnectionManager

* feat(debug): add debug settings button at bottom of AboutSheet; wire onShowDebug callback to open DebugSettingsSheet from ChatScreen

* feat(debug): wire verbose logging into chat view via DebugSettingsManager; add rolling relay stats; push connected devices and scan results; ensure GATT role stop closes connections; log incoming packets and relay events; add UI polling for devices; build passes

* chore(debug-branch): remove unrelated files that were mistakenly added in first commit; keep only intended debug settings changes

* fix(chat): prevent mesh→geohash leak

Root cause:
- DebugSettingsManager→chat bridge appended system logs to the global timeline regardless of active channel
- MeshDelegateHandler added public mesh messages to UI unconditionally

Fixes:
- Only inject debug system messages when selected location channel is Mesh
- Only add public mesh messages to UI when Mesh is selected (still send notifications)

Build: ./gradlew assembleDebug
}

* fix(timeline): restore message persistence across channel switches

Root cause:
- NostrGeohashService.switchLocationChannel() called messageManager.clearMessages()
  which wiped ALL messages (mesh + debug + geohash) from main timeline
- Geohash events were adding to main timeline, causing cross-contamination

Fixes:
- Remove messageManager.clearMessages() from channel switching
- ChatScreen displayMessages now routes to separate storage:
  - Mesh: messages (main timeline, includes debug logs when Mesh selected)
  - Geohash: viewModel.getGeohashMessages(geohash) from separate history
  - Private: privateChats[peerID]
  - Channels: channelMessages[channel]
- Geohash events no longer add to main timeline, only to geohash history
- Mesh messages always stored to preserve history when switching away

Result: Each chat type has persistent separate storage, no message loss

* Debug/relay logs: use MessageType names; include device route in verbose packet logs.

* Verbose device-peer assignment and connection/disconnection logs with peerId, deviceId, nickname; packet relay log uses MessageType names.}

* Debug logs API: include nickname and deviceId for incoming/relay; update callers.}

* Fix compile: import MessageType; correct debug manager API usage and remove stray insertion; build.}

* Respect relay toggle; helper to log relay with deviceId.}

* PacketRelayManager: add relay toggle and unified logging helper; clean file header comments; build fixes.}

* changes

* Geohash local echo: do not add to mesh timeline; rely on geohash history and ChatScreen display for location channels.

* persisting

* persist debug settings

* gitignore

* gatt server / client controls

* debugger

* max connection settings and graph

* more graph

* better logging

* refactor logging
2025-09-05 15:40:39 +02:00
callebtc
91f3f270d4
Fix geohash filtering (#376)
* fix(geohash): enforce client-side filter on subscription and validate 'g' tag in handler; move dedup after validation; avoid misrouting events across geohashes

* cleanup duplicate code block

* remove
2025-09-05 13:26:38 +02:00
callebtc
905ccf5f17
better tor management (#373) 2025-09-03 02:22:27 +02:00
callebtc
8b3dc71dc6
Refactors cleanup (#372)
* cleanup peermanager

* cleanup geohash code

* direct connections fix

* pow display

* track disconnects too

* display pow only if enabled

* display pow only if enabled

* direct connection tracking
2025-09-02 22:09:44 +02:00
Héctor de Isidro
bbf5918896
Fix edge-to-edge layout issues (#367)
* Remove redundant setDecorFitsSystemWindows call

* Fix edge-to-edge layout issues
2025-09-02 14:25:45 +02:00
Héctor de Isidro
e380408b28
Fix system bar colors for dark theme (#368)
* Add computed properties for ThemePreference enum

* Fix system bar colors for dark theme
2025-09-02 14:24:26 +02:00
Minh
8a55414143
forcing all commands to lower case (#369) 2025-09-02 13:51:26 +02:00
callebtc
b62b15a21f
Nip13 pow (#357)
* add pow

* animation

* matrix style

* animation better

* improve animation

* improve animation

* works

* fix jump

* difficulty indicator

* 10 is default

* animation runs forever

* pow in message timestamp

* pow works

* default on

* adjust animation

* no printing
2025-08-31 13:23:22 +02:00
GitHub Action
5b62118336 Automated update of relay data - Sun Aug 31 06:06:12 UTC 2025 2025-08-31 06:06:12 +00:00
callebtc
6b77eb93c1
move tor icon (#355) 1.2.2 2025-08-30 13:57:50 +02:00
callebtc
202c8edc53
bump version (#354) 2025-08-30 13:47:22 +02:00
callebtc
33b5814b7a
Sign mesh message (#353)
* sign BLE packets

* fix x
2025-08-30 12:45:36 +02:00
callebtc
cedc6552ce
make notifications optional (#349) 2025-08-29 23:39:11 +02:00
lollerfirst
926dfe3cf0
feat: update bundled relays weekly (#312)
* update bundled relays weekly

* fix error
2025-08-29 23:38:52 +02:00
callebtc
0b44b850f2
restore default (#348) 2025-08-29 22:11:05 +02:00
callebtc
0aecaf50f8
Manually disable location (#347)
* manually disable location, design needs to be fixed

* fix ui
2025-08-29 22:09:44 +02:00
callebtc
b1234ff548
simplify (#346) 2025-08-29 21:26:21 +02:00
callebtc
85ddf3ca38
retry on bind error (#345) 2025-08-29 21:10:39 +02:00
callebtc
3248f37932
update (#340) 2025-08-29 20:13:11 +02:00
callebtc
4c7786a0d9
proguard arti (#344) 2025-08-29 20:12:35 +02:00
callebtc
686e2e78ec
Bundle tor (#339)
* tor started

* tor works

* tor code

* improve manager

* works

* move tor icon

* werks

* arti works

* arti works

* arti works with reconnect

* delay fix

* refactor
2025-08-29 14:37:35 +02:00
callebtc
7f4bd96739
fix missing file (#335) 2025-08-29 11:16:56 +02:00
callebtc
63d6649ab4
bump to 1.2.1 (#332) 1.2.1 2025-08-29 00:50:53 +02:00
callebtc
2ec3141431
render links normally (#331) 2025-08-29 00:40:25 +02:00
callebtc
9c103180cd
limit nick length (#330) 2025-08-29 00:27:55 +02:00
callebtc
550520795f
UI geohash notifications (#325)
* location name in notifications

* remove tests

* panic nostr

* mentions with hashes, otherwise none

* fix timestamps

* parse geohashes in messages

* works

* fix country name

* mention notifications work
2025-08-28 17:47:47 +02:00
2014
3ea2aed9a4
fixed bulletpoint (#272) 2025-08-28 09:18:07 +02:00
Minh
02d5466812
Add active peer notification (#273)
* adding notification for active peers + tests

* adding a recently seen peer set to track if we've seen that peer before

* changing back to notificationManager naming

* fixing some weird formatting that occurred during merge conflict fix
2025-08-28 09:17:41 +02:00
lollerfirst
28abd3c593
allow user to select a theme preference over light/dark/system (#318) 2025-08-28 08:14:46 +02:00
mario7421
846cd976c0
Bug fix: the app should show the correct geohash also if a location is not yet known to the system. Remove the default location in San Francisco and show a spinner until the correct position becomes available. (#308) 2025-08-28 08:10:48 +02:00
callebtc
6fe6e049ad
Nip17 dms to extend the mesh (#313)
* favorite each other

* show favorites as system messsages

* wip show glove when offline but mayb edoesnt work

* send and receive works

* wip kinda works but no

* getting there

* kinda

* show offline peers in peer list

* kinda wonky but almost works

* fixes

* nostr user goes offline works

* nostr -> mesh works

* handoff works

* background message processing

* read works

* seen message store was missing
2025-08-25 18:38:10 +02:00
callebtc
941be1b98f bump to 1.2.0 1.2.0 2025-08-25 10:20:18 +02:00
shroominic
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
callebtc
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
callebtc
cb7b01ad81
fix teleport tag and icons (#303) 2025-08-24 02:03:00 +02:00
callebtc
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
callebtc
7106be4b07
country -> region, region –> province (#298) 2025-08-23 15:44:46 +02:00
callebtc
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
1.1.0
2025-08-23 14:14:42 +02:00
callebtc
26520991cf
New about sheet (#294)
* about sheet

* version

* about page
2025-08-23 12:04:21 +02:00
callebtc
e92266c025
bump version (#293) 2025-08-23 11:52:06 +02:00
callebtc
16c55a4105
Statusbar seamless (#289)
* wip status bar

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

* notifications

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

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

* longpress

* block wip

* blocking works
2025-08-23 00:26:18 +02:00
callebtc
c9c02d993e
persist last channel (#284) 2025-08-22 23:45:51 +02:00
callebtc
fa2e3fa0b2
bump version code (#283) 1.0.0 2025-08-22 22:36:23 +02:00
callebtc
2458b471ed
UI fixes 2 (#282)
* better icon

* scroll

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

* scroll fix
2025-08-22 22:01:11 +02:00