diff --git a/build-aux/org.kuchelmeister.ToolboxTuner.Screenshot.json b/build-aux/org.kuchelmeister.ToolboxTuner.Screenshot.json
new file mode 100644
index 0000000..fe6bf17
--- /dev/null
+++ b/build-aux/org.kuchelmeister.ToolboxTuner.Screenshot.json
@@ -0,0 +1,55 @@
+{
+ "id" : "org.kuchelmeister.ToolboxTuner.Screenshot",
+ "runtime" : "org.gnome.Platform",
+ "runtime-version" : "46",
+ "sdk" : "org.gnome.Sdk",
+ "sdk-extensions" : [
+ "org.freedesktop.Sdk.Extension.rust-stable",
+ "org.freedesktop.Sdk.Extension.llvm15"
+ ],
+ "command" : "toolbox-tuner",
+ "finish-args" : [
+ "--talk-name=org.freedesktop.Flatpak",
+ "--socket=fallback-x11",
+ "--socket=wayland",
+ "--device=dri",
+ "--env=RUST_LOG=toolbxtuner=debug",
+ "--env=G_MESSAGES_DEBUG=none",
+ "--env=RUST_BACKTRACE=1",
+ "--share=ipc"
+ ],
+ "build-options" : {
+ "append-path" : "/usr/lib/sdk/rust-stable/bin:/usr/lib/sdk/llvm15/bin",
+ "prepend-ld-library-path" : "/usr/lib/sdk/llvm15/lib",
+ "build-args" : [
+ "--share=network"
+ ],
+ "env" : {
+ "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER" : "clang",
+ "CARGO_REGISTRIES_CRATES_IO_PROTOCOL" : "sparse",
+ "CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS" : "-C link-arg=-fuse-ld=/usr/lib/sdk/rust-stable/bin/mold",
+ "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER" : "clang",
+ "CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUSTFLAGS" : "-C link-arg=-fuse-ld=/usr/lib/sdk/rust-stable/bin/mold"
+ },
+ "test-args" : [
+ "--socket=x11",
+ "--share=network"
+ ]
+ },
+ "modules" : [
+ {
+ "name" : "toolbox-tuner",
+ "buildsystem" : "meson",
+ "run-tests" : true,
+ "sources" : [
+ {
+ "type" : "dir",
+ "path" : "../"
+ }
+ ],
+ "config-opts" : [
+ "-Dprofile=screenshot"
+ ]
+ }
+ ]
+}
diff --git a/data/org.kuchelmeister.ToolboxTuner.metainfo.xml.in.in b/data/org.kuchelmeister.ToolboxTuner.metainfo.xml.in.in
index acbff88..ca4d462 100644
--- a/data/org.kuchelmeister.ToolboxTuner.metainfo.xml.in.in
+++ b/data/org.kuchelmeister.ToolboxTuner.metainfo.xml.in.in
@@ -12,11 +12,11 @@
Main application window showing multiple toolboxes
- https://media.githubusercontent.com/media/13hannes11/toolbox-tuner/main/data/resources/screenshots/main_light.png
+ https://media.githubusercontent.com/media/13hannes11/toolbox-tuner/main/data/resources/screenshots/main_light.png
Main application window in dark mode
- https://github.com/13hannes11/toolbox-tuner/blob/main/data/resources/screenshots/main_dark.png
+ https://github.com/13hannes11/toolbox-tuner/blob/main/data/resources/screenshots/main_dark.png
diff --git a/data/resources/screenshots/main_dark.png b/data/resources/screenshots/main_dark.png
index 7e2533f..c160077 100644
--- a/data/resources/screenshots/main_dark.png
+++ b/data/resources/screenshots/main_dark.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:f1638708f85d9dfcf9d1a5327909eb3dd6aec9c0b9814aada8f56347bbff3ab6
-size 146402
+oid sha256:201a9582e4f0f67ddc9d8e2b7184119ae13c60d4c98e0b3778a77d6acb813d16
+size 29471
diff --git a/data/resources/screenshots/main_light.png b/data/resources/screenshots/main_light.png
index c68f49b..0c4c8b2 100644
--- a/data/resources/screenshots/main_light.png
+++ b/data/resources/screenshots/main_light.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:3d7c2389a17b8a4f8f1edf79993957554a6f8c76d0b75f0aa7182415cfc916be
-size 146187
+oid sha256:2713f577da9ba226d6a1813b1bab0c55e28cb388e786c69b6681528830cb3ae3
+size 29570
diff --git a/meson.build b/meson.build
index f0086df..4642994 100644
--- a/meson.build
+++ b/meson.build
@@ -42,6 +42,10 @@ if get_option('profile') == 'development'
version_suffix = '-@0@'.format(vcs_tag)
endif
application_id = '@0@.@1@'.format(base_id, profile)
+elif get_option('profile') == 'screenshot'
+ profile = 'Screenshot'
+ version_suffix = ''
+ application_id = base_id
else
profile = ''
version_suffix = ''
diff --git a/meson_options.txt b/meson_options.txt
index f882783..43a9858 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -3,7 +3,8 @@ option(
type: 'combo',
choices: [
'default',
- 'development'
+ 'development',
+ 'screenshot',
],
value: 'default',
description: 'The build profile for Toolbox Tuner. One of "default" or "development".'
diff --git a/src/app.rs b/src/app.rs
index ac7b065..abbd6a4 100644
--- a/src/app.rs
+++ b/src/app.rs
@@ -262,17 +262,23 @@ impl AppWidgets {
let settings = gio::Settings::new(APP_ID);
let (width, height) = self.main_window.default_size();
- settings.set_int("window-width", width)?;
- settings.set_int("window-height", height)?;
-
- settings.set_boolean("is-maximized", self.main_window.is_maximized())?;
+ if PROFILE != "Screenshot" {
+ settings.set_int("window-width", width)?;
+ settings.set_int("window-height", height)?;
+ settings.set_boolean("is-maximized", self.main_window.is_maximized())?;
+ }
Ok(())
}
fn load_window_size(&self) {
let settings = gio::Settings::new(APP_ID);
+ if PROFILE == "Screenshot" {
+ self.main_window.set_default_size(778, 478);
+ return;
+ }
+
let width = settings.int("window-width");
let height = settings.int("window-height");
let is_maximized = settings.boolean("is-maximized");