Terry Yiu
3f5036bd32
Internationalize user-facing strings and export them for translations
...
Changelog-Added: Internationalized user-facing strings and exported them for translations
Signed-off-by: Terry Yiu <git@tyiu.xyz >
2025-07-21 12:45:29 -07:00
William Casarin
38b2077a8d
Merge kernel's "can't remove damoose fixes" and more! #1001
...
kernelkind (9):
appease clippy
use `NwcError` instead of nwc::Error
make `UserAccount` cloneable
allow removal of Damoose account
expose `AccountCache::falback`
move select account logic to own method
bugfix: properly sub to new selected acc after removal of selected
bugfix: unsubscribe from timelines on deck deletion
bugfix: unsubscribe all decks when log out account
2025-07-20 17:17:29 -07:00
William Casarin
28065ec4a3
fix one missing home string
...
Fixes: f39d554c96 ("rename Contacts to Home")
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-20 16:54:31 -07:00
kernelkind
0b27282985
bugfix: unsubscribe all decks when log out account
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-17 21:39:58 -04:00
kernelkind
1c547bbcaa
bugfix: unsubscribe from timelines on deck deletion
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-17 21:25:09 -04:00
kernelkind
d4082eb818
bugfix: properly sub to new selected acc after removal of selected
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-17 20:31:36 -04:00
kernelkind
d22dd9ed31
appease clippy
...
```
error: large size difference between variants
--> crates/notedeck_columns/src/column.rs:249:1
|
249 | / pub enum IntermediaryRoute {
250 | | Timeline(Timeline),
| | ------------------ the largest variant contains at least 280 bytes
251 | | Route(Route),
| | ------------ the second-largest variant contains at least 72 bytes
252 | | }
| |_^ the entire enum is at least 280 bytes
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant
= note: `-D clippy::large-enum-variant` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(clippy::large_enum_variant)]`
help: consider boxing the large fields to reduce the total size of the enum
|
250 - Timeline(Timeline),
250 + Timeline(Box<Timeline>),
|
error: could not compile `notedeck_columns` (lib) due to 1 previous error
```
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-07-17 19:01:46 -04: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