Gradience/data/ui/preferences_window.blp

129 lines
4.1 KiB
Text

using Gtk 4.0;
using Adw 1;
template GradiencePreferencesWindow : Adw.PreferencesWindow {
title: _("Preferences");
default-height: 400;
default-width: 600;
modal: true;
Adw.PreferencesPage general_page {
title: _("General");
icon-name: "applications-system-symbolic";
Adw.PreferencesGroup flatpak_group {
title: _("GTK 4 Flatpak Applications");
Adw.ActionRow {
title: _("Allow GTK 4 Flatpak Applications Theming");
subtitle: _("Override Flatpak permissions for current user to allow GTK 4 Flatpak applications to access custom themes.");
activatable-widget: gtk4_user_theming_switch;
Gtk.Switch gtk4_user_theming_switch {
valign: center;
}
}
Adw.ActionRow {
visible: false;
title: _("Allow GTK 4 Flatpak Applications Theming (System)");
subtitle: _("Override Flatpak permissions for all users to allow GTK 4 Flatpak applications to access custom themes. (Requires root access)");
activatable-widget: gtk4_global_theming_switch;
Gtk.Switch gtk4_global_theming_switch {
valign: center;
}
}
}
Adw.PreferencesGroup gtk3_flatpak_group {
title: _("GTK 3 Flatpak Applications");
description: _("Remember to install adw-gtk3 theme (as a Flatpak package) in order to get custom presets working in GTK 3 Flatpak applications.");
Adw.ActionRow {
title: _("Allow GTK 3 Flatpak theming");
subtitle: _("Override Flatpak permissions for current user to allow GTK 3 Flatpak applications to access adw-gtk3 theme.");
activatable-widget: gtk3_user_theming_switch;
Gtk.Switch gtk3_user_theming_switch {
valign: center;
}
}
Adw.ActionRow {
visible: false;
title: _("GTK 3 Flatpak Applications (System)");
subtitle: _("Override Flatpak permissions for all users to allow GTK 3 Flatpak applications to access adw-gtk3 theme. (Requires root access)");
activatable-widget: gtk3_global_theming_switch;
Gtk.Switch gtk3_global_theming_switch {
valign: center;
}
}
}
Adw.PreferencesGroup jsdeliver_group {
title: _("Preset Fetching");
description: _("Configure options related to preset fetching");
Adw.ActionRow jsdeliver_row {
title: _("Use alternative server for downloading presets");
subtitle: _("JSDeliver will be used instead of directly fetching presets from GitHub");
activatable-widget: jsdeliver_switch;
Gtk.Switch jsdeliver_switch {
valign: center;
}
}
}
// NOTE: This group is disabled as there isn't yet any implementation of custom repositories in Gradience
Adw.PreferencesGroup custom_repository_group {
visible: false;
title: _("Custom Preset Repositories");
Adw.ActionRow {
title: _("Custom repository URL address");
Gtk.Box {
styles ["linked"]
orientation: horizontal;
Gtk.Entry custom_repository_entry {
valign: center;
}
Gtk.Button custom_repository_apply {
valign: center;
icon-name: "checkmark-large-symbolic";
}
}
}
}
}
Adw.PreferencesPage theming_page {
title: _("Theming");
icon-name: "larger-brush-symbolic";
Adw.PreferencesGroup preset_group {
title: _("Theme Engines");
description: _("Theme Engines are the built-in theme generators for various customizable programs/frameworks.");
Adw.ActionRow {
title: _("Monet Engine");
subtitle: _("Monet Engine generates a Material Design 3 palette from extracting image's colors.");
activatable-widget: monet_engine_switch;
Switch monet_engine_switch {
valign: center;
}
}
Adw.ActionRow {
title: _("Shell Engine");
subtitle: _("Shell Engine generates a custom GNOME Shell theme based of a currently chosen preset.");
activatable-widget: gnome_shell_engine_switch;
Switch gnome_shell_engine_switch {
valign: center;
}
}
}
}
}