`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. |
||
|---|---|---|
| build-aux | ||
| data | ||
| help | ||
| po | ||
| src | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| Cargo.lock | ||
| Cargo.toml | ||
| CODE_OF_CONDUCT.md | ||
| COPYING.md | ||
| meson.build | ||
| meson_options.txt | ||
| README.md | ||
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.
- Download GNOME Builder.
- In Builder, click the "Clone Repository" button at the bottom, using
git@gitlab.gnome.org/BrainBlasted/loupe.gitorhttps://gitlab.gnome.org/BrainBlasted/loupe.gitas the URL. - 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.