William Casarin
4a4fb06425
split is_mobile to is_narrow and is_oled
...
is_mobile doesn't really make sense for android tablets. We were
overloading this variable to mean "is_narrow". What we really want is
is_oled for mobile devices and is_narrow for if its phone-like.
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-06 21:54:48 -07:00
William Casarin
772bfbad5f
img: remove loading spinners
...
This adds blank space, but it will be nice if we can improve this
by either fading in or having some shimmer effect.
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-06 21:06:12 -07:00
William Casarin
8602650278
args: add datapath argument
...
This will allow us to test cache resets
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-06 21:06:12 -07:00
William Casarin
c879982260
args: add --textmode
...
An option to enable textmode on startup
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-06 08:59:49 -07:00
William Casarin
7fa18fa5f7
Merge 'Supply default timeline for mobile app if empty' ( #285 )
...
Ken Sedgwick (1):
Supply default timeline for mobile app if empty
2024-09-03 11:49:21 -07:00
William Casarin
989f88c989
fonts: add thai support
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-03 11:45:59 -07:00
Ken Sedgwick
55f6a94c18
Supply default timeline for mobile app if empty
...
Fixes ([#284 ])
2024-09-03 11:37:27 -07:00
William Casarin
01b9704415
appease clippy
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-03 11:25:48 -07:00
William Casarin
efadd6153b
arg: add -c universe column
...
Add helper for adding universe columns
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-03 11:18:32 -07:00
William Casarin
c34227b5f7
arg: add -c profile{,:pubkey} arg column
...
This allows you to add profile columns
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-03 11:12:02 -07:00
William Casarin
4fdbad0df8
fix bug where it was subscribing too many times
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-03 11:11:38 -07:00
William Casarin
043ccf2146
debug: add subid debugging
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-03 11:10:59 -07:00
William Casarin
2603d08d1a
tidy: fix formatting
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-02 18:31:53 -07:00
William Casarin
ad9c8f959c
columns: add --notifications{,:pubkey} argcolumn
...
This allows you to add notification columns pretty easily:
$ notedeck --sec $SEC -c contacts -c notifications -c notifications:$CORP_ACCT
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-02 18:29:21 -07:00
William Casarin
ca09dc1675
filters: add limits to follow filters
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-02 18:16:22 -07:00
William Casarin
4c61c337bd
fix transaction crash regression when opening thread
...
small oversight
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-02 18:12:12 -07:00
Ken Sedgwick
fe7580f5be
Extend ImageCache to handle content images
2024-09-02 17:54:49 -07:00
William Casarin
b00dc735e1
use slightly better carousel id
...
still need to include timeline...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-02 17:54:49 -07:00
William Casarin
0e4aad4184
initial image support
...
Signed-off-by: William Casarin <jb55@jb55.com >
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
bc8a8d4a74
perf: coordinate unknown id lookups
...
This is a huge improvement over what it was before. Now all unknown id
lookups are debounced and happen through a central coordinator. This
ensures there is no duplication between timelines.
Fixes: https://github.com/damus-io/notedeck/issues/279
Signed-off-by: William Casarin <jb55@jb55.com >
2024-09-02 17:38:18 -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
92e9e34e19
column: extract into_timeline logic into ColumnKind
...
I thought I needed this but maybe I don't. Anyways, it's a bit cleaner
this way.
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-31 08:15:09 -07:00
William Casarin
db49cf3c4b
tidy: move ColumnKind to its own file
...
timeline file is starting to get messy
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-31 08:08:17 -07:00
William Casarin
9a9342ad35
tidy: remove some crate:: namespaces
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-31 07:17:45 -07:00
William Casarin
5de78cef21
docs: fix comment in the wrong spot
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-31 05:43:43 -07:00
William Casarin
a051760fd9
contacts: fix hashtags in filter_from_tags
...
split hashtag follows into a separate Filter, combining authors and
hashtags doesn't work, because this is considered an AND filter, where
we want an OR.
We may want an option to split hashtags follows into a separate column.
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-31 05:43:43 -07:00
William Casarin
2ea6473ae2
refactor: move args to its own file
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-31 05:43:43 -07:00
William Casarin
71259a8dd5
timeline: initial contact queries
...
This implements initial local contact queries. For testing you can
create contact list columns via:
Examples
--------
Make a contacts column from a specific npub:
$ notedeck --column contacts:npub...
Use the current user's contacts:
$ notedeck --column contacts --pub npub...
We also introduce a new ColumnKind enum which is used to describe the
column type.
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-30 08:59:48 -07:00
William Casarin
11ede2086f
cli: add --pub support for watchonly accounts
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-30 08:59:37 -07:00
William Casarin
dd60d03407
filter: create filter from contact list
...
This adds a method for creating filters from contact lists. We will be
using this for creating follow timelines.
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-30 08:49:29 -07:00
William Casarin
ea547a3497
tidy: move parse_args to Args::parse
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-30 08:49:29 -07:00
William Casarin
ae6c05ab42
tidy: organize bools
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-30 07:17:56 -07:00
William Casarin
bf34175560
time: add future timestamp formatting
...
+10s for 10 seconds in the future, etc
This can happen sometimes
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-27 14:09:14 +03:00
William Casarin
54526a8f55
log: track virtual list splices
...
These are caused when timeline note insertions are not at the top.
egui-virtual-list only has optimizations for that scenario.
Link: https://github.com/damus-io/notedeck/issues/94
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-27 13:50:38 +03:00
William Casarin
cf14c6dfd2
flag to disable since optimization
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-21 07:48:45 +03:00
William Casarin
1f149aec3b
fix clippy warnings
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-19 21:26:20 -07:00
William Casarin
973a7c780f
thread: remote subscriptions working
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-19 21:22:58 -07: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
8c458f8f78
Merge initial threads
2024-08-16 11:51:42 -07:00
William Casarin
579b47fc40
selectable text option
...
Add a selectable text option to various note views. We don't want
selection events to interfere with back drag, so this is the first step
toward ensure back drag works.
Vertical scrollviews also interfere with back drag, so we'll still need
a way to compose gestures. It's not clear if this is currently possibly
with egui (union of responses somehow maybe?)
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-12 14:21:29 -07:00
William Casarin
51b4dfd3f3
temp fix crash due to race condition
...
we should fix the race condition though
Link: https://github.com/damus-io/nostrdb/issues/35
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-03 11:41:41 -07:00
William Casarin
be0efd57e5
bump ingester threads from 2 to 4
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-03 11:38:46 -07:00
William Casarin
3cbcd98dd4
arg: add dbpath argument
...
This is great for testing without using an existing DB
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-03 11:38:38 -07:00
William Casarin
0869cdde65
temp fix crash due to race condition
...
we should fix the race condition though
Link: https://github.com/damus-io/nostrdb/issues/35
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-03 11:37:44 -07:00
William Casarin
ce5142656e
bump ingester threads from 2 to 4
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-03 11:33:40 -07:00
William Casarin
abd529e91b
arg: add dbpath argument
...
This is great for testing without using an existing DB
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-03 11:32:56 -07:00
William Casarin
6e27c34267
update nostrdb to fix note corruption bug
...
Changelog-Fixed: fix note content corruption bug with damus.io links
Signed-off-by: William Casarin <jb55@jb55.com >
2024-08-01 13:44:28 -07:00
William Casarin
20f0aed2ed
doc: add docs for get_unknown_note_ids
...
Signed-off-by: William Casarin <jb55@jb55.com >
2024-07-31 14:21:47 -07:00
William Casarin
38626520c1
thread: warn when we return 0 notes
...
This is a bug
Signed-off-by: William Casarin <jb55@jb55.com >
2024-07-31 14:01:41 -07:00