Commit graph

20 commits

Author SHA1 Message Date
Christopher Davis
400672b6b6 window: Add ToastOverlay and use toasts for feedback 2021-12-28 16:40:58 -08:00
Christopher Davis
be70bdafe5 window: Implement drag and drop
The main page is no longer a lie.
2021-12-27 22:05:29 -08:00
Christopher Davis
5d9567507c window: Add "Open File..." button, remove gesture
This gives users a very intuitive way to open files.
The gesture was awkard and didn't match any common patterns
across GNOME. The button is simple and obvious.
2021-12-23 20:35:22 -08:00
Christopher Davis
5893d4b764 cargo: Use gtk-rs master
Needed to take advantage of template callbacks
and new APIs.
2021-12-22 18:17:38 -08:00
Christopher Davis
1ae7316b32 general: Consolidate explicit dependencies down to adw and gtk4
Use the exported dependencies for everything else.
2021-12-21 16:09:48 -08:00
Christopher Davis
f9cbad9ad9 general: Use adw alias for libadwaita
This will make writing libadwaita-based code a bit
nicer, and make it nicer when we use crates that
libadwaita's API re-exports.

Also clean up the unused imports exposed by
this change.
2021-12-21 14:56:25 -08:00
Christopher Davis
d4fca8aae3 general: Iv* to Lp*
We're probably going to be keeping `loupe` as the codename
and binary name going forward.
2021-12-21 10:55:02 -08:00
Christopher Davis
945aff3029 image_view: Load images once
We don't need to load the file twice just to get the
dimensions. We can load a GdkTexture, use it's APIs
for the width and height, and return that as a result
to the window. This allows us to kill the `dimensions-loaded`
signal and one of the places where we need to load a file.
2021-09-29 00:38:04 -07:00
Christopher Davis
cced598239 general: Rename to Loupe
Sets the codename, binary name, and app ID name to Loupe.
The user-visible name is still Image Viewer.
2021-09-28 17:44:26 -07:00
Christopher Davis
e45b89f854 window: Rework fullscreen
We can use AdwFlap and have one single headerbar for both
fullscreen and unfullscreened.
2021-09-24 01:18:31 -07:00
Christopher Davis
f9ac6470ad window: Use gtk_widget_class_install_action ()
Simplifies our action handling a lot - we no longer need
to use the `action!` macro here, and we don't need
`lookup_action ()` to set the action state or activate
actions.
2021-09-22 21:33:47 -07:00
Christopher Davis
84208d2887 image_view: Add directory navigation
This commit adds directory navigation to Image Viewer.
Currently it only sorts images by name, instead of following
directory sorting like the mockups.
2021-09-14 04:21:34 -07:00
Christopher Davis
73188840ae general: Use stable rust dependencies 2021-06-27 15:28:35 -07:00
Christopher Davis
fef57b242d window, image_view: Resize window based on image size
Allows us to have a more appropriate size for the window
based on the content, instead of sticking with the small
default window size.
2021-03-02 16:43:17 -08:00
Christopher Davis
4561b1f4f8 Update Rust deps
Updates to subclassing and templates.
2021-01-30 15:52:32 -08:00
Christopher Davis
f621fedbba window: bind properties in UI file
This is possible, and allows us to clean up constructed
a bit.
2021-01-23 23:46:33 -08:00
Christopher Davis
e34f4055e4 Exchange libhandy-4 for libadwaita
libhandy-4 is dead. Long live libadwaita.
2021-01-14 21:36:30 -08:00
Christopher Davis
28bf2b9213 Stop using .get() for template children
We can drop this completely now that Deref is implemented.
2021-01-13 23:16:02 -08:00
Christopher Davis
f1fa94fca7 Use instance_init() for composite templates
Drops the incorrect use of instance_init() within
constructed.
2021-01-13 23:05:45 -08:00
Christopher Davis
f692ab5626 Initial Commit
The initial commit of gnome-image-viewer.
Things are in an MVP state, with image viewing and
opening from the desktop functional. We also can
open images externally, print them, and set them as
backgrounds.
2020-12-26 02:18:23 -08:00