Commit Graph

43 Commits

Author SHA1 Message Date
William Casarin
4389cc2128 load_profiles: add context for debugging
This is useful to see where the load_profiles request is coming from

We may need to switch to a central dispatch for profile loading, I
suspect there is a lot of redundancy between requests.
2023-10-24 13:02:41 +08:00
William Casarin
76508dbbfd perf: don't continuously attempt to fetch old profiles
Changelog-Changed: Save bandwidth by only fetching new profiles after a certain amount of time
2023-10-24 13:02:41 +08:00
William Casarin
bb4fd75576 nostrdb: add profiles to nostrdb
This adds profiles to nostrdb

- Remove in-memory Profiles caches, nostrdb is as fast as an in-memory cache
- Remove ProfileDatabase and just use nostrdb directly

Changelog-Changed: Use nostrdb for profiles
2023-09-21 09:10:06 -04:00
William Casarin
c71b0ee916 blocks: pass keypair instead of privkey to avoid pubkey gen
Generating a pubkey is quite slow, so pass a keypair instead of privkey
2023-08-28 11:47:29 -07:00
William Casarin
cebd1f48ca ndb: switch to nostrdb notes
This is a refactor of the codebase to use a more memory-efficient
representation of notes. It should also be much faster at decoding since
we're using a custom C json parser now.

Changelog-Changed: Improved memory usage and performance when processing events
2023-08-03 13:20:36 -07:00
William Casarin
7040235605 refactor: add Pubkey, Privkey, NoteId string aliases
This is a non-behavioral change in preparation for the actual switchover
from Strings to Ids. The purpose of this kit is to reduce the size of
the switchover commit which is going to be very large.
2023-07-31 05:38:19 -07:00
William Casarin
1a0282fe21 Revert "nozaps: don't pull thread zaps in nozaps mode"
This reverts commit 6003a3c6f8.
2023-06-27 05:59:59 +02:00
William Casarin
6003a3c6f8 nozaps: don't pull thread zaps in nozaps mode 2023-06-26 11:20:11 +02:00
William Casarin
043eb5b436 Show zap comments in threads and show top zap
Changelog-Added: Top zaps
Changelog-Added: Show zap comments in threads
2023-06-09 10:11:25 +02:00
Bryan Montz
fe4277e817 simplified call site usage of NostrFilter 2023-05-29 12:19:27 -07:00
Bryan Montz
9847f12c95 Remove unused code
Closes: #1105
2023-05-08 11:01:04 -07:00
William Casarin
ac82f1bc09 Add OnlyZaps Mode
Changelog-Added: Add OnlyZaps mode: disable reactions, only zaps!
2023-04-20 13:41:05 -07:00
66641fc9ae Add setting to hide reactions
Changelog-Added: Add setting to hide reactions
2023-04-20 08:20:50 -07:00
William Casarin
02fc065005 Always check signatures on profile events
These contain sensitive data (lightning addresses) and it would be
really bad if these were forged.

Changelog-Changed: Always check signatures of profile events
2023-04-15 16:01:00 -07:00
William Casarin
bedf7e0648 Add reply counts
Changelog-Added: Reply counts
2023-04-04 12:03:56 -07:00
William Casarin
9091cb1aae Revert "Reduce battery usage by using exp backoff on connections"
This is causing pretty bad fail to reconnect issues

This reverts commit 252a77fd97, reversing
changes made to a611a5d252.
2023-03-17 07:54:29 -06:00
Bryan Montz
252a77fd97 Reduce battery usage by using exp backoff on connections
Changelog-Changed: Reduce battery usage by using exp backoff on connections
2023-03-15 10:48:47 -06:00
William Casarin
d0a6c2e2e4 Thread Caching
Changelog-Added: Threads now load instantly and are cached
2023-03-04 17:40:22 -05:00
William Casarin
64b1a57918 Notifications
Changelog-Added: Add new Notifications View
2023-02-25 11:33:25 -08:00
William Casarin
e1578c0337 Add support for account deletion
As per apple guidelines

Changelog-Added: Added support for account deletion
2023-01-30 13:26:04 -08:00
William Casarin
aaa21bf1bf misc refactors 2023-01-02 18:58:23 -08:00
William Casarin
355b8c5da8 Use kingfisher for profile pic loading
Changelog-Changed: Use an optimized library for image loading
Signed-off-by: William Casarin <jb55@jb55.com>
2022-10-16 11:42:20 -07:00
William Casarin
2c4c392b76 search hashtags, profiles, notes
Changelog-Added: Search hashtags, profiles, events
Signed-off-by: William Casarin <jb55@jb55.com>
2022-10-08 16:04:10 -07:00
William Casarin
7bdd8048b0 better channels
Signed-off-by: William Casarin <jb55@jb55.com>
2022-09-13 17:23:56 -07:00
William Casarin
492786f66d don't filter on kinds in threads
Let's pull all related data that we can get

Signed-off-by: William Casarin <jb55@jb55.com>
2022-08-24 10:57:51 -07:00
William Casarin
eec8763733 scroll: more consistent scrolling behavior
Scrolling will always anchor the active note to the top of the screen

This is less confusing overall

Changelog-Changed: Clicking on a note will now always scroll it to the top
Signed-off-by: William Casarin <jb55@jb55.com>
2022-08-09 09:32:22 -07:00
William Casarin
97bca010f6 Censor unclebobmartin from damus
Limits the size of posts viewable within damus to 32,000 bytes. It's
still probably too big, but let's have some sane limit so uncle's named
bob can't break your app just because they can.

Changelog-Fixed: Limit post sizes to max 32,000 as an upper bound sanity limit.
Signed-off-by: William Casarin <jb55@jb55.com>
2022-08-05 12:23:42 -07:00
William Casarin
c122035851 Implement NIP04: Encrypted Direct Messages
Closes #5

This adds encrypted direct message support to damus

Changelog-Added: Implement NIP04: Encrypted Direct Messages
Signed-off-by: William Casarin <jb55@jb55.com>
2022-07-02 12:14:36 -07:00
William Casarin
dd7d9a4a66 eose loading spinners
Changelog-Added: Add [NIP-15](https://github.com/nostr-protocol/nips/blob/master/15.md) loading spinners
Signed-off-by: William Casarin <jb55@jb55.com>
2022-06-18 08:49:50 -07:00
William Casarin
040ffdf9f5 boosts working
Signed-off-by: William Casarin <jb55@jb55.com>
2022-05-10 14:41:34 -07:00
William Casarin
bd49c8a9d1 fix ordering on search, copy note
Signed-off-by: William Casarin <jb55@jb55.com>
2022-05-09 12:09:51 -07:00
William Casarin
6ac4214be7 insert sort, profile updates revamp
Signed-off-by: William Casarin <jb55@jb55.com>
2022-05-09 10:33:03 -07:00
William Casarin
13cec8cffe fix likes
Signed-off-by: William Casarin <jb55@jb55.com>
2022-05-08 16:09:52 -07:00
William Casarin
045aaaf59b trigger resub on clicked events
Signed-off-by: William Casarin <jb55@jb55.com>
2022-05-08 11:09:04 -07:00
William Casarin
8896d19f40 initial reply revamp
It now understands mentions

Signed-off-by: William Casarin <jb55@jb55.com>
2022-05-08 10:25:50 -07:00
William Casarin
4db06b015c event mentions working
Signed-off-by: William Casarin <jb55@jb55.com>
2022-05-07 17:48:00 -07:00
William Casarin
f42bc2e91e likes, mention parsing, lots of stuff
Signed-off-by: William Casarin <jb55@jb55.com>
2022-05-04 16:26:10 -07:00
William Casarin
403fa74f8d just use stack navigationview
it seems less buggy

Signed-off-by: William Casarin <jb55@jb55.com>
2022-04-30 12:15:44 -07:00
William Casarin
d574e572d4 old style navigation
Signed-off-by: William Casarin <jb55@jb55.com>
2022-04-30 11:46:56 -07:00
William Casarin
ce989450f4 many updates
Signed-off-by: William Casarin <jb55@jb55.com>
2022-04-25 08:28:07 -07:00
William Casarin
cb463c6da9 a bunch more usability improvements
Signed-off-by: William Casarin <jb55@jb55.com>
2022-04-23 18:21:45 -07:00
William Casarin
4de2ce402e fix broken nagivation
Signed-off-by: William Casarin <jb55@jb55.com>
2022-04-23 12:41:36 -07:00
William Casarin
78c5b47f11 chatroom
Signed-off-by: William Casarin <jb55@jb55.com>
2022-04-19 19:46:30 -07:00