fork of loupe with drawing functionality. Supports undo with Ctrl+z and copy to clipboard with drawn changes
Find a file
Christopher Davis 386b41e482 properties_view: Ignore result of sending SVG metadata across threads
`parse_svg_file_future()` is called in a cancellable async
block. This means that after it's called it can be cancelled,
which drops the receiver. When we fetch the metadata, we try
sending the result to the dropped receiver.

This is expected behavior in this case - the receiver
being gone at the time of sending the metadata is perfectly
valid. However, previously we would cause the thread to panic.
This didn't break anything but made for scary log message.

Since this is expected behavior we can use `_` to tell the
compiler that we don't care about the outcome of sending.
This is valid in this instance because we will only get an
error if the receiver is gone.
2022-08-02 21:15:45 -04:00
build-aux Revert "flatpak: Downgrade SDK, build libadwaita" 2022-07-14 06:37:47 +00:00
data Implement Properties 2022-08-02 19:31:44 -04:00
help general: Rename to Loupe 2021-09-28 17:44:26 -07:00
po general: Rename to Loupe 2021-09-28 17:44:26 -07:00
src properties_view: Ignore result of sending SVG metadata across threads 2022-08-02 21:15:45 -04:00
.gitignore Run cargo fmt on source files 2021-02-06 20:59:17 +01:00
.gitlab-ci.yml CI: Update configuration 2022-07-30 17:55:17 -04:00
Cargo.lock Implement Properties 2022-08-02 19:31:44 -04:00
Cargo.toml Implement Properties 2022-08-02 19:31:44 -04:00
CODE_OF_CONDUCT.md Initial Commit 2020-12-26 02:18:23 -08:00
COPYING.md Initial Commit 2020-12-26 02:18:23 -08:00
meson.build build: Fix rust-analyzer 2021-12-21 20:38:13 +01:00
meson_options.txt Initial Commit 2020-12-26 02:18:23 -08:00
README.md README: Add info to install section 2021-09-28 18:38:01 -07:00

Loupe

A simple image viewer application written with GTK4 and Rust.

MVP TODO

  • Hover timeout for buttons and fullscreen headerbar
  • Pan/zoom
  • Back/forward navigation

Building

GNOME Builder

GNOME Builder is the environment used for developing this application. It can use Flatpak manifests to create a consistent building and running environment cross-distro. Thus, it is highly recommended you use it.

  1. Download GNOME Builder.
  2. In Builder, click the "Clone Repository" button at the bottom, using git@gitlab.gnome.org/BrainBlasted/loupe.git or https://gitlab.gnome.org/BrainBlasted/loupe.git as the URL.
  3. Click the build button at the top once the project is loaded.

Installation

Depending on how you want it installed instructions can differ. If you used GNOME Builder to build it, clicking the bar at the top window will open a submenu with "Export Bundle". This will create a flatpak bundle, which can be installed on any system that supports flatpak.

In order for the Loupe flatpak to be able to read the directory images are installed in, you must install a bundle. Once you have a bundle installed, development builds will work properly.

Conduct

Loupe operates under the GNOME Code Of Conduct. See the full text of the Code Of Conduct here.