Commit Graph

81 Commits

Author SHA1 Message Date
Ken Sedgwick
085c6f1992 build: updated num_enum to get around build problem
Problem:
```
error[E0463]: can't find crate for num_enum_derive
  --> /home/user/.cargo/registry/src/index.crates.io-6f17d22bba15001f/num_enum-0.7.2/src/lib.rs:10:11
   |
10 | pub use ::num_enum_derive::{
   |           ^^^^^^^^^^^^^^^ can't find crate
```
2024-09-02 17:54:49 -07:00
William Casarin
036c257379 update image to 0.25
Signed-off-by: William Casarin <jb55@jb55.com>
2024-09-02 17:54:49 -07:00
William Casarin
ad244d48c0 fetch contact lists
If we don't have a contact list, make sure to fetch one

Signed-off-by: William Casarin <jb55@jb55.com>
2024-09-02 16:22:29 -07:00
William Casarin
21fd57f2c5 nostrdb: bump version
Signed-off-by: William Casarin <jb55@jb55.com>
2024-08-30 07:17:56 -07:00
William Casarin
9b4093cd41 update to latest nostrdb version
Signed-off-by: William Casarin <jb55@jb55.com>
2024-08-21 06:59:27 +03:00
William Casarin
9328ef2dff remove duplicate filter types
only use nostrdb::Filter

Signed-off-by: William Casarin <jb55@jb55.com>
2024-08-19 21:12:32 -07:00
William Casarin
f769ddad09 fix threads
Signed-off-by: William Casarin <jb55@jb55.com>
2024-08-06 14:38:21 -07:00
William Casarin
c3fc4e09e8 thread: fix ordering and duplication bugs
Signed-off-by: William Casarin <jb55@jb55.com>
2024-07-31 13:55:06 -07:00
William Casarin
a28db5d330 local thread subscriptions
This adds local nostrdb thread subscriptions. When navigating to a
thread, we first check to see if we have any active nostrdb
subscriptions for that thread. If not, we create a new subscription. If
we do, we re-use that subscription.

This works by storing thread state in the Threads struct in the Damus
application state.

When we pop a route, we check to see if its a thread route. If it is,
then we try to unsubscribe, but only if that is the last remaining
subscriber for that thread, as there could be more than one.

Signed-off-by: William Casarin <jb55@jb55.com>
2024-07-31 13:51:24 -07:00
William Casarin
06028ba66e deps: update deps for thread-needed changes
Signed-off-by: William Casarin <jb55@jb55.com>
2024-07-16 12:54:45 -07:00
William Casarin
6b634646d5 fix nostrdb crash
Signed-off-by: William Casarin <jb55@jb55.com>
2024-07-15 12:39:42 -07:00
William Casarin
239a2cb701 Switch to egui master to fix wgpu issues
There are some wgpu issues that are fixed in egui-master, so
let's switch to that.

This fixes notedeck so that it runs on both my intel graphics laptop
and amdgpu desktop.

Fixes: https://github.com/damus-io/notedeck/issues/28
Fixes: https://github.com/damus-io/notedeck/issues/42
Fixes: https://github.com/damus-io/notedeck/issues/141
Signed-off-by: William Casarin <jb55@jb55.com>
2024-07-02 17:48:18 -07:00
William Casarin
9eea457bda switch to glow for now
Signed-off-by: William Casarin <jb55@jb55.com>
2024-07-02 16:12:04 -07:00
William Casarin
e9da25266a enable nip10 replies
you can now reply to notes

Signed-off-by: William Casarin <jb55@jb55.com>
2024-07-01 19:22:43 -07:00
William Casarin
a04df88ff6 initial note posting
Signed-off-by: William Casarin <jb55@jb55.com>
2024-07-01 06:49:12 -07:00
William Casarin
a66b467cb4 hide navigation title on global nav
Fixes: https://github.com/damus-io/notedeck/issues/109
Signed-off-by: William Casarin <jb55@jb55.com>
2024-06-24 16:47:35 -07:00
William Casarin
1458498131 initial post box view
Signed-off-by: William Casarin <jb55@jb55.com>
2024-06-17 16:21:46 -07:00
William Casarin
d064987e45 fix lock
Signed-off-by: William Casarin <jb55@jb55.com>
2024-06-14 10:18:18 -07:00
William Casarin
d17b5e0703 Add forward navigation animation
Also fix a few nav clipping bugs

From egui-nav:

William Casarin (5):
      add forward nav support
      fix body overlapping header
      fix transition clipping when in a smaller container
      fix forward nav clipping in small containers
      fix background layer having the wrong UI id

Signed-off-by: William Casarin <jb55@jb55.com>
2024-06-13 11:59:08 -07:00
William Casarin
0dd33c90e7 initial navigation 2024-06-11 17:50:09 -07:00
William Casarin
739e9f87f2 nip10: fetch unknown replied-to notes
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-24 13:20:33 -07:00
William Casarin
135a5c99ae Revert "deps: using tracing instead of log"
This reverts commit af92e326f6.
2024-05-23 16:10:07 -07:00
William Casarin
c421a49912 Merge MacOS key storage
kernelkind (3):
      Add MacOS key storage
      Conditionally compile MacOS key storage code
      macos_key_storage: runner ignore tests
2024-05-23 16:00:18 -07:00
William Casarin
83100d7f50 tabs: select notes & replies by default
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-23 15:50:06 -07:00
William Casarin
af92e326f6 deps: using tracing instead of log
also update some other deps

Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-23 11:16:43 -07:00
kernelkind
9fad35485a Add MacOS key storage
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-21 19:50:05 -04:00
William Casarin
9e8f7a2e5c ui: integrate egui-tabs for notes & replies selector
demo: https://cdn.jb55.com/s/notedeck-tabs.mp4

Fixes: https://github.com/damus-io/notedeck/issues/47
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-15 17:28:01 -07:00
William Casarin
e1f61076f7 switch to rustls-tls-native-roots
This fixes our android build which doesn't like openssl

Fixes: https://github.com/damus-io/notedeck/issues/54
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-15 09:16:20 -07:00
kernelkind
59818edd83 remove nostr-sdk
Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-08 14:14:37 -07:00
kernelkind
b8177459ab use nostr in enostr
Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-08 14:14:37 -07:00
kernelkind
64904da5e8 add reqwest as dependency
Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-02 18:51:28 +02:00
William Casarin
28e2e7edd5 Merge remote-tracking branch 'github/virtual-list' 2024-04-28 17:55:29 -07:00
William Casarin
26128c3456 use egui_virtual_list for rendering
absolutely insane performance increase

Fixes: https://github.com/damus-io/notedeck/issues/32
Suggested-by: @lucasmerlin
Signed-off-by: William Casarin <jb55@jb55.com>
2024-04-28 11:03:47 -07:00
William Casarin
69054d71ca nip10: show initial reply information on notes
Using the newly merged nip10 code, we can show replies on notes!

This is not final, and it's actually different than how we do it in
Damus iOS. Not sure if I like it yet. We will likely have to put pubkey
information back in somewhere soon.

Signed-off-by: William Casarin <jb55@jb55.com>
2024-04-27 01:58:35 -07:00
William Casarin
f12ccc69a4 add hover to profile map demo
Signed-off-by: William Casarin <jb55@jb55.com>
2024-04-24 12:49:06 -07:00
William Casarin
e8168b0004 ui: add profile picture hover animation
I wanted to practice doing animation in egui, so here is a simple
profile picture hover affect. When you mouse over a profile picture, it
get slightly bigger.

Signed-off-by: William Casarin <jb55@jb55.com>
2024-04-24 12:49:06 -07:00
William Casarin
05fe164a49 ui: add initial Profile hover previews
The idea with these is that on notedeck you can just hover your cursor
over a profile link to see the profile. I just have a stub for now, but
full design coming soon after.

Also simplify the preview system even further with a macro. In the
future I imagine we can grep every preview in the codebase, and then
include this as a string inside this macro. This is some kind of
template metaprogramming insanity but in theory it could work.

Signed-off-by: William Casarin <jb55@jb55.com>
2024-04-19 22:00:19 -07:00
William Casarin
e348950e7a crates: add bitflags
Signed-off-by: William Casarin <jb55@jb55.com>
2024-04-14 16:23:36 -07:00
William Casarin
483e8e85d6 fix until filters
Signed-off-by: William Casarin <jb55@jb55.com>
2024-04-12 20:30:28 -07:00
kernelkind
e81cde5374 Add modular custom text styles
Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-04-12 19:52:34 -07:00
William Casarin
91c5d453c4 profiling: update puffin version
Signed-off-by: William Casarin <jb55@jb55.com>
2024-04-12 16:03:00 -07:00
William Casarin
4526434405 update to latest nostrdb, adding tag support
Signed-off-by: William Casarin <jb55@jb55.com>
2024-04-07 14:53:50 -07:00
kernelkind
83197bac78 Update egui 0.26.1 -> 0.27.1
Needed for shadows

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-04-01 10:15:27 -07:00
kernelkind
d8fcc573f9 Add nostr-sdk dependency 2024-03-26 10:04:59 +00:00
kernelkind
c932efba40 update cargo.lock to reflect toml change 2024-03-26 09:32:48 +00:00
William Casarin
4a5a9d4319 black background 2024-03-09 01:21:07 -08:00
William Casarin
1c16ddf9af deps: update poll-promise, add hex
Signed-off-by: William Casarin <jb55@jb55.com>
2024-02-27 14:25:46 -08:00
William Casarin
ef1e7e3ac8 perf: fix profiler
Signed-off-by: William Casarin <jb55@jb55.com>
2024-02-15 14:05:37 -08:00
William Casarin
9a4f193e03 deps: bump nostrdb to include notekey hash
Signed-off-by: William Casarin <jb55@jb55.com>
2024-02-15 13:07:01 -08:00
William Casarin
3a68cb9a99 bump nostrdb
Signed-off-by: William Casarin <jb55@jb55.com>
2024-02-11 14:08:58 -08:00