- Persist settings to storage
- New fullscreen media viewer with panning and zoom
- Changed note rendering to use the full screen width
- Fixed more wrapping issues
- Fixed crash on large images
- Fix nwc copy/paste
- Portugese translations
- Show locale language names instead of identifier
Fernando López Guevara (5):
feat(settings): persist settings to storage
fix(columns): render wide notes on narrow screen
fix(media): edge-to-edge image display on narrow screen
fix(media): use ScaledTexture
fix(note_actionbar): add invisible label to stabilize section width ¯\_(ツ)_/¯
Terry Yiu (5):
Add human-readable names to locales in settings
Add Portuguese (Brazil) language and translations
Export strings for translation
Import translations
Internationalize ShowNoteClientOptions labels
William Casarin (19):
Fullscreen MediaViewer refactor
images: always resize large images
media: change is_narrow logic to is_scaled
media/viewer: click anywhere to close
media/viewer: fix broken culling
media/viewer: fix flicker on escape-close
media/viewer: fullscreen transition animations
media/viewer: handle click-to-close interactions
media/viewer: provide image-click provenance
media/viewer: slower animation
note/options: made wide the default
threads: disable wide in threads
ui/note: fix another reply_desc wrapping issue
ui/note: simplify weird hack and make note of it
ui/settings: fix small double clone nit
ui/wallet: small refactor to use return instead of break
wallet: fix nwc copy/paste
Signed-off-by: William Casarin <jb55@jb55.com>
Terry Yiu (5):
Export strings for translation
Add human-readable names to locales in settings
Internationalize ShowNoteClientOptions labels
Import translations
Add Portuguese (Brazil) language and translations
Since it breaks the reply line rendering
Fixes: 0f00dcf7a7 ("fix(columns): render wide notes on narrow screen")
Signed-off-by: William Casarin <jb55@jb55.com>
- 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>
HE FUCKING DID IT LADS
Made a small tweak on the merge commit to update url to
damus-io/egui-nav upstream
William Casarin (2):
Merge drag to nav back on all views by kernel #1035
kernelkind (9):
TMP: update egui-nav
refactor scrolling for post, reply & quote views
enforce scroll_id for `ThreadView`
add `scroll_id` for all views with vertical scroll
add `DragSwitch`
use `DragSwitch` in `Column`
get scroll id for `Route`
add `route_uses_frame`
use `DragSwitch` to allow dragging anywhere in navigation
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>