Fernando López Guevara
508d8dc0ba
fix(columns): prevent crash when switching to account with no columns
2025-07-17 19:09:10 -03:00
William Casarin
c421f8f8ff
profile: fetch new metadata when visiting profiles
...
This ensures we always have the latest data
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-17 14:49:16 -07:00
William Casarin
8d2da86f1f
enostr: remove raw event type
...
we rely on the event type for multicast logic,
so remove raw since its not really needed anymore
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-17 14:20:33 -07:00
William Casarin
8a1398face
clippy fixes
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-17 13:54:43 -07:00
William Casarin
a4c1b38116
introduce HybridFilter
...
This introduces a new filter construct called HybridFilter. This allows
filters to have different remote filter than local ones. For example,
adding kind0 to the remote for keeping profiles up to date on your
timeline, but only subscribing to kind1 locally.
Only home/contact filters use this feature for now.
Fixes: https://github.com/damus-io/notedeck/issues/995
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-17 13:54:43 -07:00
William Casarin
1a7154fab6
reply: add some space after reply box
...
we need more room on mobile
Fixes: https://github.com/damus-io/notedeck/issues/991
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-17 11:02:59 -07:00
William Casarin
51d2b4414b
ui/note: refactor reply line into a function
...
this is a bit neater
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-17 09:37:20 -07:00
William Casarin
c0c2120f74
android: fix back button
...
Fixes: https://github.com/damus-io/notedeck/issues/972
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-17 09:18:34 -07:00
William Casarin
a603685fac
multi_subscriber: switch to debug statements
...
info is not really the right level for this
2025-07-16 16:36:26 -07:00
kernelkind
5168d50257
add info statements
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-16 18:13:09 -04:00
kernelkind
cc92fc2082
make TimelineCache::timelines private
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-16 18:13:07 -04:00
kernelkind
dc4e3d7510
increment sub count when necessary
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-16 18:13:04 -04:00
kernelkind
95e9e4326a
add TimelineCache helper methods
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-16 18:13:00 -04:00
kernelkind
4db6f37017
track all timeline related subscriptions in TimelineSub
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-16 18:12:58 -04:00
kernelkind
6544d43d02
replace MultiSubscriber with TimelineSub
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-16 18:12:46 -04:00
Fernando López Guevara
4bf75c95de
feat(note-view): show note client
2025-07-16 17:09:59 -03:00
William Casarin
461665f599
ui: remove show_pointer
...
This can just be achieved by on_hover_cursor
Didn't realize this.
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-16 09:17:27 -07:00
William Casarin
f27b1fe957
Merge chrome sidebar features from fernando
...
Fernando López Guevara (2):
fix(compose-button): apply icon_color to compose button edge circles & add hover text
fix(chrome): add hover text and pointer cursor to sidebar elements
2025-07-16 09:01:55 -07:00
William Casarin
a517bc69bc
Merge is_following fixes from kernel
...
kernelkind (4):
add `Accounts` to `NoteContext`
remove `MuteFun` prop
make `Contacts::is_following` use bytes instead of `Pubkey`
migrate to check following through `Contacts::is_following`
2025-07-16 08:50:58 -07:00
Fernando López Guevara
44da10dc88
fix(profile): split always
2025-07-16 11:01:13 -03:00
Fernando López Guevara
befce76a90
feat(profile): add tooltip on copy npub
2025-07-15 14:42:43 -07:00
Fernando López Guevara
e344b09475
feat(profile-view): split profile info entries when is_narrow
2025-07-15 14:42:43 -07:00
Fernando López Guevara
ab43bdb65a
fix(deck): show column picker when deck has no columns
2025-07-15 14:42:32 -07:00
William Casarin
ac22fc7072
columns: enable toolbar scroll to top
...
Fixes: https://github.com/damus-io/notedeck/issues/969
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-15 13:30:40 -07:00
William Casarin
074472eec9
columns/timeline: include column index in timeline view_id
...
might fix weird scroll issues on profiles
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-15 13:02:05 -07:00
William Casarin
119456e2b3
columns: switch to bitflag app options
...
we're adding a ScrollToTop bool for an updating change
to the toolbar, but we have too many flags now. Let's switch
to bitflags
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-15 12:42:20 -07:00
William Casarin
baff14bbf0
ui/column: include pfp in back response
...
We were missing the pfp in the back response
Fixes: https://github.com/damus-io/notedeck/issues/923
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-15 10:51:02 -07:00
William Casarin
0cc64da1ca
columns/profile: only mutate profile state after navigating
...
The code currently mutates the profile state during nav rendering,
which screws up profile state updates. This syncs ProfileStates
in the ui. before it was getting out of sync.
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-15 10:15:21 -07:00
William Casarin
f2adb949f6
columns/nav: ocd nevernest
...
no behavior changed
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-15 09:29:34 -07:00
William Casarin
6f266fc91d
columns/profile: rename process -> process_profile_action
...
lets start clarifying these names for easier searching
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-15 09:28:41 -07:00
William Casarin
443d356cc7
ui/column: remove move/remove column buttons on narrow
...
It doesn't make sense to move columns in narrow mode
Fixes: https://github.com/damus-io/notedeck/issues/960
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-15 08:35:07 -07:00
William Casarin
a714bef690
ui/profile: fix dubious profile editing
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-15 08:28:37 -07:00
William Casarin
744483fbc0
ui: don't auto-repaint that often
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-15 08:28:33 -07:00
kernelkind
142aa879c3
make Contacts::is_following use bytes instead of Pubkey
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-14 21:34:08 -04:00
kernelkind
a7f5319fde
remove MuteFun prop
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-14 21:34:05 -04:00
kernelkind
397bfce817
add Accounts to NoteContext
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-14 21:34:02 -04:00
kernelkind
8c71e154f4
allow body on unknown profile
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-14 15:26:07 -04:00
Fernando López Guevara
d95de84f63
fix(chrome): add hover text and pointer cursor to sidebar elements
2025-07-14 09:58:06 -03:00
Fernando López Guevara
6739ed6d58
fix(compose-button): apply icon_color to compose button edge circles & add hover text
2025-07-14 09:56:01 -03:00
kernelkind
b5d56f7831
remove unnecessary FilterState::NeedsRemote filter
...
all NeedsRemote states are contact lists currently, which is
managed by `Accounts`
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-12 16:52:01 -04:00
kernelkind
46633d0513
use AccountSubs for timeline contact sub
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-12 16:48:20 -04:00
William Casarin
44edffc596
android/input: add copy/paste context to post input
...
Fixes: https://github.com/damus-io/notedeck/issues/942
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-11 15:36:56 -07:00
William Casarin
6596e89e29
anim: animate on compose button hide
...
before we were just nuking it
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-11 14:23:50 -07:00
William Casarin
ade6f57fd5
anim: animate show/hide of compose button
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-11 14:21:26 -07:00
William Casarin
e8444f10b3
Revert "Unify sub for contacts in accounts & timeline"
...
Since its causing contact timelines to not load
eg: ./target/release/notedeck --datapath new3 -c contacts
This reverts commit 9940537897 .
2025-07-11 13:49:47 -07:00
William Casarin
8752a49485
android: fix crash on mobile
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-11 13:39:29 -07:00
William Casarin
96cb5e26ce
Merge follow/unfollow from kernel
...
Jakub Gladysz (1):
ui: add follow button
kernelkind (14):
bump nostrdb
move polling responsibility to `AccountData`
`AccountData`: decouple query from constructor
add constructor for `AccountData`
add `Contacts`
use `Contacts` in `AccountData`
expose `AccountSubs`
Unify sub for contacts in accounts & timeline
move `styled_button_toggleable` to notedeck_ui
construct NoteBuilder from existing note
send kind 3 event
add actions for follow/unfollow
add UI for (un)follow
send contact list event on account creation
2025-07-11 13:06:24 -07:00
William Casarin
217c1e5223
columns/decks: add home and notifications for new accounts
...
This is way more user friendly, and needed on mobile
Fixes: https://github.com/damus-io/notedeck/issues/937
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-10 17:16:30 -07:00
William Casarin
26d027f03e
nav: nav to accounts view for actions that require key
...
Fixes: https://github.com/damus-io/notedeck/issues/936
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-10 16:17:08 -07:00
William Casarin
605f6f4711
android: hide new post button when navigating
...
Fixes: https://github.com/damus-io/notedeck/issues/898
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-10 15:45:33 -07:00