Commit graph

421 commits

Author SHA1 Message Date
Sophie Herold
057ca6a3d0 image/rendering: Use scale instead of scale-factor
`GdkSurface:scale` supports fractional scaling available as
"scale-monitor-framebuffer" on Mutter. Use this value everywhere
instead of the integer scale-factor

Closing #182
2023-12-06 23:39:09 +01:00
Sophie Herold
9c8d3dc63f image/rendering: Do not config adj in snapshot
This caused warnings and scrollbars to disappear under certain
conditions.
2023-12-05 21:35:03 +01:00
Sophie Herold
d69d0d5e47 image/scrollable: Abstract adjustment access 2023-12-05 21:26:09 +01:00
Sophie Herold
3ab4d82d36 image: Reorganize into several sub-modules 2023-12-05 16:00:46 +01:00
Sophie Herold
cfed1d3d63 image: File doesn't have to be a property anymore 2023-12-04 18:42:21 +01:00
Sophie Herold
33bcd4a7ac imageView: Remove expression for fullscreen icon 2023-12-04 18:22:47 +01:00
Sophie Herold
fceec31971 print: Remove obsolete callback code 2023-12-04 18:08:44 +01:00
Sophie Herold
2fdfe5657c image: Refresh file info after file rename 2023-12-04 18:08:25 +01:00
Sophie Herold
c0f435386d metadata: Move file info and format to metadata 2023-12-04 18:08:25 +01:00
Sophie Herold
c36e7f4eb6 code: Replace many uses of GtkExpressions
Closes #276, #100
2023-12-04 18:08:20 +01:00
Sophie Herold
5b3ad7c257 code: Fix typos 2023-11-30 21:58:26 +01:00
Sophie Herold
307c864c6e window: Copy metadata instead of image if selected 2023-11-30 01:20:13 +01:00
Sophie Herold
b56d650086 code: Reformat with new rules 2023-11-29 21:16:11 +01:00
Sophie Herold
4b510412e1 window: Fix title not changed when no image shown
Closes #279
2023-11-29 20:15:42 +01:00
Sophie Herold
7d36c93029 slidingView: Use properties macro 2023-11-29 19:28:27 +01:00
Sophie Herold
4ca7c71538 imagePage: Use properties macro 2023-11-29 19:19:49 +01:00
Sophie Herold
390f16792a imageView: Use properties macro 2023-11-29 19:10:57 +01:00
Sophie Herold
55811a2bb7 image: Use macro for object properties 2023-11-29 18:52:31 +01:00
Sophie Herold
f3ff2f5cba ui: Reformat .ui-files 2023-11-29 01:51:00 +01:00
Sophie Herold
5a905cd53f ui: Move .ui-files to src/
Closes #46
2023-11-29 01:50:54 +01:00
Julian Hofer
cd8188a1bb Simplify async code
- Update Cargo.lock
- Use new gtk-core API
- Remove unneeded async
- Remove unneeded clones

Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/310>
2023-11-22 09:12:36 +01:00
Starccy
8d185e1e10 chore: display original error
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/314>
2023-11-21 20:25:37 +00:00
Sophie Herold
229c63719e meta: Prepare 45.2 2023-11-21 20:55:03 +01:00
Sophie Herold
a1edf6f882 image: Show image after error in file resolved
LpImage already reloads the image after an image is
invalid because of unsupported format or decoding error.
This patch makes that the "is-loaded" property is changed
to true again after the problem is resolved by a file change.

This should also hopefully works around problems with apps like GIMP
writing files in a way where an error appears itermittently.

Closes #256
2023-11-16 22:59:19 +00:00
Sophie Herold
15e2fb2257 print: Use same print operation throughout
Use a hack to wait in print signal for the layout dialog to be ready
instead of creating a new print operation with the same settings.

This works around a bug in GTK where the wrong printer gets selected
(issue #243), as well as the print dialog getting shown twice when
using the print portal (part of #61).

Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/302>
2023-10-31 01:31:36 +00:00
Sophie Herold
8b2b12a206 image: Always request tiles in set_zoom_target
This makes zoom for SVGs work again. Not entirely clear
why this is needed but a safe fix for now.

Closes #240

Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/301>
2023-10-31 01:01:27 +00:00
Sophie Herold
4994ec9b59 imageView: Update SlidingView after removing image
When unsupported images formats were detected the image
was not removed from the SlidingView if already preloaded.
This caused weird hickups.

Fixes #233
2023-09-05 19:55:09 +00:00
Sophie Herold
8cb14169db slidingView: Allow WidgetExt::allocation for now
Has been deprecated but not sure what is the correct replacement
2023-08-16 12:21:59 +02:00
Sophie Herold
65a5f39861 image: Force minimum tile size of 1000x1000
Everything else does not make sense loading performance
wise.

Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/276>
2023-08-16 08:44:41 +00:00
Sophie Herold
07513f5940 image: Don't render first tiles with zoom=1
Closes #145

Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/276>
2023-08-16 08:44:41 +00:00
Sophie Herold
270853ea57 image: Reload image on FileMonitor Renamed events
The Rename event is also fired if the file got replaced
via a file move.

Closes #227

Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/271>
2023-08-08 16:27:03 +00:00
Sophie Herold
a027513447 decoder: Use glycin for decoding SVGs as well
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/267>
2023-08-06 11:59:33 +00:00
Sophie Herold
1a7a34c3b6 Revert "print: Add libadwaita-rs features missing upstream"
This reverts commit ae23db6967.
2023-08-06 11:27:35 +02:00
Sophie Herold
0cff205c9d general: Update to gtk-rs 0.7 2023-08-06 11:24:01 +02:00
Sophie Herold
aac476134f print: Use inch for US and LR
Closes #143

Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/240>
2023-08-06 02:28:54 +00:00
Sophie Herold
172ce9d976 print: Code cleanup
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/240>
2023-08-06 02:28:54 +00:00
Sophie Herold
2fac5e6c43 print: Limit width an hight fields correctly
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/240>
2023-08-06 02:28:54 +00:00
Sophie Herold
14ba64f687 print: Let margins and sizes interact properly
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/240>
2023-08-06 02:28:54 +00:00
Sophie Herold
f5071fb630 print: Make units translatable
Closes #142

Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/240>
2023-08-06 02:28:54 +00:00
Sophie Herold
3dbcce8375 print: Add height and fill-space options
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/240>
2023-08-06 02:28:54 +00:00
Sophie Herold
d7a77ec498 print: Split unit selection for margins and size
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/240>
2023-08-06 02:28:54 +00:00
Sophie Herold
e6646bdbe3 print: Make preview size adaptive
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/240>
2023-08-06 02:28:54 +00:00
Sophie Herold
65af818567 print: Show filename and printer in title
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/240>
2023-08-06 02:28:54 +00:00
Sophie Herold
9bfa9f7294 print: Use AdwSpinRow
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/240>
2023-08-06 02:28:54 +00:00
Sophie Herold
ae23db6967 print: Add libadwaita-rs features missing upstream
This should be reverted when porting to new release that
supports those features.

Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/240>
2023-08-06 02:28:54 +00:00
Sophie Herold
d13acea38a imageView: Deny DragSource for touchscreens
Before, the DragSource gesture was claimed on touchscreens,
while no dnd was available there anyways. This caused swiping
through images to only work unreliably.

Issue #176

Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/264>
2023-07-31 22:01:27 +02:00
Sophie Herold
c4d8145dd3 image: Deny drag gesture for touchscreens
ScrolledWindow can handle the panning in images
better than we can.

This fixes an issue where zoomed in images can't
be zoomed or rotated on touchscreens.

Issue #176

Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/264>
2023-07-31 21:08:58 +02:00
Alice Mikhaylenko
0d267e5219 slidingView: Enable overshoot
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/261>
2023-07-27 20:30:24 +00:00
Sophie Herold
55551ae6a2 general: Update copyright notices
Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/258>
2023-07-18 17:48:43 +00:00
Sophie Herold
08a9c3e450 window: Remove default drop target style
The default does not fit well with our new custom one.

This also removes a bunch of code which was not used.

Part-of: <https://gitlab.gnome.org/GNOME/loupe/-/merge_requests/258>
2023-07-18 17:48:43 +00:00