kernelkind
ea5c876da6
add scroll_offset to NoteAction::Note
...
Signed-off-by: kernelkind <kernelkind@gmail.com >
2025-08-04 16:12:38 -04:00
William Casarin
0dda26791a
perf: a few micro optimizations
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-08-03 20:17:16 -07:00
William Casarin
7e73ed2760
ui/note: slightly more spacing between blocks
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-08-03 20:17:16 -07:00
William Casarin
27df33dc83
ui/note: fix reply description item spacing
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-08-03 16:30:37 -07:00
William Casarin
2edc19fbcc
ui/note: fix extra padding in block renderer
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-08-03 16:26:26 -07:00
William Casarin
edf0e2498b
note: small doc fix
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-08-03 16:18:00 -07:00
William Casarin
ad35547582
refactor: collapse client label settings; drop CLI/settings toggles
...
The "top vs bottom" client label setting was cluttering the UI and
codebase with toggles that added little value. This consolidates client
label handling into one option, removes unused CLI/settings knobs, and
makes NoteView’s API consistent and fluent. Result: fewer knobs, less
branching, and a clearer, more predictable UI.
Now client labels are only shown in one place: selected notes.
- Drop `--show-client` arg in notedeck and `--show-note-client=top|bottom`
args in notedeck_columns
- Remove `NotedeckOptions::ShowClient` and related CLI parsing
- Delete `ShowSourceClientOption` enum, settings UI, and
`SettingsAction::SetShowSourceClient`
- Collapse `NoteOptions::{ClientNameTop, ClientNameBottom}` into a single
`NoteOptions::ClientName`
- Add `NoteOptions::{Framed, UnreadIndicator}`
- Move “framed” and unread indicator into flags (no more ad‑hoc bools)
- Add new NoteView builder methods: `.client_name()`, `.frame()`,
`.unread_indicator()`, and `.selected_style()`
- CLI flags for showing client labels have been removed
- `ClientNameTop`/`ClientNameBottom` replaced with `ClientName`
- API using `framed` or `show_unread_indicator` booleans must now use
the new flag setters
Signed-off-by: William Casarin <jb55@jb55.com >
2025-08-03 16:16:15 -07:00
William Casarin
24f70930eb
note: turn off full date view for previews
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-08-03 14:53:14 -07:00
William Casarin
391abe817d
columns: clean up flags, refactor content rendering
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-08-03 14:02:05 -07:00
William Casarin
249e166a95
remove explicit loop continue
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-08-03 10:44:07 -07:00
Fernando López Guevara
26ece3bc05
feat(note): show full created date format on selected notes
2025-08-01 08:42:58 -03:00
Fernando López Guevara
ab84304265
feat(settings): show note full date
2025-08-01 08:38:49 -03:00
William Casarin
6a08d4b1b2
ui/note: fix width instabilities because of spacing_mut
...
TODO: get rid of all spacing_mut in the codebase
Fixes: 9ff5753bca ("settings: use timed serializer, handle zoom properly...")
2025-07-31 17:54:53 -07:00
William Casarin
a8c6baeacb
make clippy happy
2025-07-31 11:55:39 -07:00
Fernando López Guevara
9ff5753bca
settings: use timed serializer, handle zoom properly, use custom text style for note body font size, added font size slider, added preview note
2025-07-29 21:43:26 -03:00
Fernando López Guevara
b9e2fe5dd1
fix(media): add spacing
2025-07-29 21:38:04 -03:00
Fernando López Guevara
d1a9e0020e
fix(note-content): avoid empty text blocks
...
(cherry picked from commit baa7031c25d0f3d3e8952f49f6625252413559a3)
2025-07-29 21:34:28 -03:00
Fernando López Guevara
f2153f53dc
feat(settings): allow sorting thread replies newest first
2025-07-29 21:30:35 -03:00
William Casarin
0fc8e70180
ui/note: fix indented actionbar in non-wide mode
...
CI / Rustfmt + Clippy (push) Has been cancelled
CI / Check (android) (push) Has been cancelled
CI / Test (Linux) (push) Has been cancelled
CI / Test (macOS) (push) Has been cancelled
CI / Test (Windows) (push) Has been cancelled
CI / rpm/deb (aarch64) (push) Has been cancelled
CI / rpm/deb (x86_64) (push) Has been cancelled
CI / macOS dmg (aarch64) (push) Has been cancelled
CI / macOS dmg (x86_64) (push) Has been cancelled
CI / Windows Installer (aarch64) (push) Has been cancelled
CI / Windows Installer (x86_64) (push) Has been cancelled
CI / Upload Artifacts to Server (push) Has been cancelled
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-29 13:58:17 -07:00
William Casarin
2de6851fbd
mediaviewer: decrease transition anim from 500ms to 300ms
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-29 13:45:22 -07:00
William Casarin
f57d582307
ui: keep original design on non-narrow
...
Changed my mind
This reverts commit 6e81b98d2f .
This reverts commit 217f1e45da .
2025-07-29 13:25:19 -07:00
William Casarin
5280028a82
media/viewer: fix broken culling
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-29 11:03:42 -07:00
William Casarin
f4a6e8f9bb
media: change is_narrow logic to is_scaled
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-29 10:59:27 -07:00
William Casarin
83fd6de076
Merge remote-tracking branch 'github/pr/1032'
2025-07-29 10:46:55 -07:00
William Casarin
6e81b98d2f
note/options: made wide the default
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-29 10:24:38 -07:00
William Casarin
2a85ee562c
ui/note: simplify weird hack and make note of it
...
Fixes: https://github.com/damus-io/notedeck/issues/842
Fixes: f2e01f0e40 ("fix(note_actionbar): add invisible label to stabilize section width ¯\_(ツ)_/¯")
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-29 10:13:43 -07:00
William Casarin
1fabd347ca
Merge remote-tracking branch 'github/pr/1031'
2025-07-29 10:08:43 -07:00
William Casarin
0087fe7dff
media/viewer: slower animation
...
so you can actually see whats going on
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-28 16:37:53 -07:00
William Casarin
51f7744149
media/viewer: fullscreen transition animations
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-28 16:12:29 -07:00
William Casarin
6d393c9c37
media/viewer: provide image-click provenance
...
We will be using this for transitions
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-28 14:19:03 -07:00
William Casarin
590ffa0680
media/viewer: click anywhere to close
...
this should help mobile ...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-28 12:10:00 -07:00
William Casarin
3d18db8fd2
Fullscreen MediaViewer refactor
...
- Moved media related logic into notedeck instead of the ui crate,
since they pertain to Images/ImageCache based systems
- Made RenderableMedia owned to make it less of a nightmware
to work with and the perf should be negligible
- Added a ImageMetadata cache to Images. This is referenced
whenever we encounter an image so we don't have to
redo the work all of the time
- Relpaced our ad-hoc, hand(vibe?)-coded panning and zoom logic
with the Scene widget, which is explicitly designed for
this use case
- Extracted and detangle fullscreen media rendering from inside of note
rendering. We instead let the application decide what action they
want to perform when note media is clicked on.
- We add an on_view_media action to MediaAction for the application to
handle. The Columns app uses this toggle a FullscreenMedia app
option bits whenever we get a MediaAction::ViewMedis(urls).
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-28 08:57:57 -07:00
Fernando López Guevara
661acb3a12
fix(media): use ScaledTexture
2025-07-25 16:35:22 -03:00
Fernando López Guevara
8306003f6f
fix(media): edge-to-edge image display on narrow screen
2025-07-25 16:17:45 -03:00
William Casarin
96ab4ee681
ui/note: fix another reply_desc wrapping issue
...
CI / Rustfmt + Clippy (push) Has been cancelled
CI / Check (android) (push) Has been cancelled
CI / Test (Linux) (push) Has been cancelled
CI / Test (macOS) (push) Has been cancelled
CI / Test (Windows) (push) Has been cancelled
CI / rpm/deb (aarch64) (push) Has been cancelled
CI / rpm/deb (x86_64) (push) Has been cancelled
CI / macOS dmg (aarch64) (push) Has been cancelled
CI / macOS dmg (x86_64) (push) Has been cancelled
CI / Windows Installer (aarch64) (push) Has been cancelled
CI / Windows Installer (x86_64) (push) Has been cancelled
CI / Upload Artifacts to Server (push) Has been cancelled
Fixes: https://github.com/damus-io/notedeck/issues/892
Changelog-Fixed: Fix another wrapping issue
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-25 12:12:25 -07:00
William Casarin
009b4cf6b0
images: always resize large images
...
Fixes: https://github.com/damus-io/notedeck/issues/451
Fixes: https://linear.app/damus/issue/DECK-556/resize-images-to-device-screen-size
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-25 10:52:27 -07:00
Fernando López Guevara
f2e01f0e40
fix(note_actionbar): add invisible label to stabilize section width ¯\_(ツ)_/¯
2025-07-25 12:13:39 -03:00
William Casarin
8f63546524
ui: wrap reply description
...
This is similar to our fix in:
- Fixes: ee85b754dd ("Fix text wrapping issues")
Where removing the ui.horizontal call fixes subsequent main wrap layout
issues. It's still not clear to me where wrap state is getting mutated
where it would affect subsequent ui calls...
Fixes: https://github.com/damus-io/notedeck/issues/892
Changelog-Fixed: Fixed wrapping issues in Notes & Replies timeslines
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-24 09:11:12 -07:00
William Casarin
90975180f5
ui/replydesc: quick TextSegment cleanup/optimize
...
most a micro-optimize + cleanup
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-24 09:03:47 -07:00
William Casarin
f9f8b3fe1b
Merge remote-tracking branch 'github/pr/1023'
2025-07-23 12:31:51 -07:00
William Casarin
fe30704496
Merge remote-tracking branch 'fernando/feat/settings-view'
2025-07-23 12:00:29 -07:00
William Casarin
e997f1bf68
ui/note: make buttons larger
...
Changelog-Changed: Make buttons larger
Fixes: https://github.com/damus-io/notedeck/issues/879
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-23 11:49:06 -07:00
William Casarin
ff0428550b
fix missing zap button
...
Changelog-Fixed: Fix missing zap button
Fixes: 397bfce817 ("add `Accounts` to `NoteContext`")
Fixes: https://github.com/damus-io/notedeck/issues/1021
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-23 11:49:03 -07:00
Fernando López Guevara
da6ede5f69
feat(settings): add settings view
2025-07-23 15:33:17 -03:00
William Casarin
56cbf68ea5
ui/note: small refactor to use returns instead of break
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-23 09:39:05 -07:00
William Casarin
f722a58d66
Merge new Accounts button to chrome sidebar by kernel #994
...
kernelkind (3):
use saturating sub
add new Accounts button to chrome sidebar
add ChromePanelAction::Profile & use for pfp
2025-07-23 09:13:49 -07:00
William Casarin
088704a768
Merge media swipe nav from fernando #1010
...
Fernando López Guevara (1):
feat(full-screen-media): add swipe navigation
2025-07-23 09:09:04 -07:00
William Casarin
3d4db820b4
i18n: make localization context non-global
...
- Simplify Localization{Context,Manager} to just Localization
- Fixed a bunch of lifetime issueo
- Removed all Arcs and Locks
- Removed globals
* widgets now need access to &mut Localization for i18n
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-22 09:49:32 -07:00
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
c94a418474
media/trust: always show if its yourself
...
Signed-off-by: William Casarin <jb55@jb55.com >
2025-07-20 16:54:34 -07:00