mirror of
https://github.com/Xetibo/ReSet.git
synced 2025-04-08 22:52:01 +02:00
feat: Add proper popover menu and shortcuts
This commit is contained in:
parent
b422a50efd
commit
1428be6e2e
|
@ -6,7 +6,7 @@ use std::sync::Arc;
|
|||
use std::time::SystemTime;
|
||||
|
||||
use gtk::subclass::prelude::*;
|
||||
use gtk::{glib, Button, CheckButton, CompositeTemplate, Label, ProgressBar, Scale};
|
||||
use gtk::{glib, Button, CheckButton, CompositeTemplate, Label, Scale};
|
||||
|
||||
use super::source_entry;
|
||||
|
||||
|
@ -23,8 +23,6 @@ pub struct SourceEntry {
|
|||
pub reset_volume_slider: TemplateChild<Scale>,
|
||||
#[template_child]
|
||||
pub reset_volume_percentage: TemplateChild<Label>,
|
||||
#[template_child]
|
||||
pub reset_volume_meter: TemplateChild<ProgressBar>,
|
||||
pub source: Arc<RefCell<Source>>,
|
||||
pub volume_time_stamp: RefCell<Option<SystemTime>>,
|
||||
}
|
||||
|
|
|
@ -2,8 +2,9 @@ use adw::glib::clone;
|
|||
use adw::subclass::prelude::ObjectSubclassIsExt;
|
||||
use adw::BreakpointCondition;
|
||||
use glib::Object;
|
||||
use gtk::prelude::*;
|
||||
use gtk::gio::ActionEntry;
|
||||
use gtk::{gio, glib, Application, ListBoxRow, Orientation};
|
||||
use gtk::{prelude::*, DirectionType};
|
||||
|
||||
use crate::components::window::handle_sidebar_click::*;
|
||||
use crate::components::window::reset_window_impl;
|
||||
|
@ -23,9 +24,87 @@ unsafe impl Sync for ReSetWindow {}
|
|||
|
||||
impl ReSetWindow {
|
||||
pub fn new(app: &Application) -> Self {
|
||||
app.set_accels_for_action("win.search", &["<Ctrl>F"]);
|
||||
app.set_accels_for_action("win.close", &["<Ctrl>Q"]);
|
||||
app.set_accels_for_action("win.about", &["<Ctrl>A"]);
|
||||
// implemented when a proper movement method is found
|
||||
// app.set_accels_for_action("win.up", &["<Ctrl>K"]);
|
||||
// app.set_accels_for_action("win.right", &["<Ctrl>L"]);
|
||||
// app.set_accels_for_action("win.down", &["<Ctrl>J"]);
|
||||
// app.set_accels_for_action("win.left", &["<Ctrl>H"]);
|
||||
Object::builder().property("application", app).build()
|
||||
}
|
||||
|
||||
pub fn setup_shortcuts(&self) {
|
||||
let search_action = ActionEntry::builder("search")
|
||||
.activate(move |window: &Self, _, _| {
|
||||
window.imp().reset_search_entry.grab_focus();
|
||||
})
|
||||
.build();
|
||||
|
||||
let close_action = ActionEntry::builder("close")
|
||||
.activate(move |window: &Self, _, _| {
|
||||
window.close();
|
||||
})
|
||||
.build();
|
||||
|
||||
let vim_up = ActionEntry::builder("up")
|
||||
.activate(move |window: &Self, _, _| {
|
||||
window.child_focus(DirectionType::Up);
|
||||
})
|
||||
.build();
|
||||
|
||||
let vim_right = ActionEntry::builder("right")
|
||||
.activate(move |window: &Self, _, _| {
|
||||
window.child_focus(DirectionType::Right);
|
||||
})
|
||||
.build();
|
||||
|
||||
let vim_down = ActionEntry::builder("down")
|
||||
.activate(move |window: &Self, _, _| {
|
||||
window.child_focus(DirectionType::Down);
|
||||
})
|
||||
.build();
|
||||
|
||||
let vim_left = ActionEntry::builder("left")
|
||||
.activate(move |window: &Self, _, _| {
|
||||
window.child_focus(DirectionType::Left);
|
||||
})
|
||||
.build();
|
||||
|
||||
let about_action = ActionEntry::builder("about")
|
||||
.activate(move |window: &ReSetWindow, _, _| {
|
||||
let dialog = adw::AboutWindow::builder()
|
||||
.application_name("ReSet")
|
||||
.application_icon("ReSet")
|
||||
.developer_name("Xetibo")
|
||||
.license("GPL-3.0")
|
||||
.license_type(gtk::License::Gpl30)
|
||||
.website("https://github.com/Xetibo/ReSet")
|
||||
.issue_url("https://github.com/Xetibo/ReSet/issues")
|
||||
.version("0.0.1")
|
||||
.transient_for(window)
|
||||
.modal(true)
|
||||
.copyright("© 2022-2023 Xetibo")
|
||||
.developers(vec!["DashieTM".to_string(), "Takotori".to_string()])
|
||||
.designers(vec!["DashieTM".to_string(), "Takotori".to_string()])
|
||||
.build();
|
||||
// window.imp().reset_popover_menu.popdown();
|
||||
dialog.present();
|
||||
})
|
||||
.build();
|
||||
|
||||
self.add_action_entries([
|
||||
search_action,
|
||||
close_action,
|
||||
about_action,
|
||||
vim_up,
|
||||
vim_right,
|
||||
vim_down,
|
||||
vim_left,
|
||||
]);
|
||||
}
|
||||
|
||||
pub fn setup_callback(&self) {
|
||||
let self_imp = self.imp();
|
||||
|
||||
|
@ -248,46 +327,9 @@ impl ReSetWindow {
|
|||
separator_row.set_child(Some(&separator));
|
||||
separator_row.set_selectable(false);
|
||||
separator_row.set_activatable(false);
|
||||
separator_row.set_can_target(false);
|
||||
// TODO how to simply skip this ?
|
||||
self_imp.reset_sidebar_list.append(&separator_row);
|
||||
}
|
||||
}
|
||||
|
||||
pub fn setup_popover_buttons(&self) {
|
||||
let self_imp = self.imp();
|
||||
self_imp
|
||||
.reset_about_button
|
||||
.connect_clicked(clone!(@ weak self as window => move |_| {
|
||||
let dialog = adw::AboutWindow::builder()
|
||||
.application_name("ReSet")
|
||||
.application_icon("ReSet")
|
||||
.developer_name("Xetibo")
|
||||
.license("GPL-3.0")
|
||||
.license_type(gtk::License::Gpl30)
|
||||
.website("https://github.com/Xetibo/ReSet")
|
||||
.issue_url("https://github.com/Xetibo/ReSet/issues")
|
||||
.version("0.0.1")
|
||||
.transient_for(&window)
|
||||
.modal(true)
|
||||
.copyright("© 2022-2023 Xetibo")
|
||||
.developers(vec!["DashieTM".to_string(), "Takotori".to_string()])
|
||||
.designers(vec!["DashieTM".to_string(), "Takotori".to_string()])
|
||||
.build();
|
||||
window.imp().reset_popover_menu.popdown();
|
||||
dialog.present();
|
||||
}));
|
||||
self_imp
|
||||
.reset_preference_button
|
||||
.connect_clicked(clone!(@weak self as window => move |_| {
|
||||
let preferences = adw::PreferencesWindow::builder().build();
|
||||
window.imp().reset_popover_menu.popdown();
|
||||
preferences.present();
|
||||
}));
|
||||
self_imp
|
||||
.reset_shortcuts_button
|
||||
.connect_clicked(clone!(@weak self as window => move |_| {
|
||||
let shortcuts = gtk::ShortcutsWindow::builder().build();
|
||||
window.imp().reset_popover_menu.popdown();
|
||||
shortcuts.present();
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -31,15 +31,7 @@ pub struct ReSetWindow {
|
|||
#[template_child]
|
||||
pub reset_sidebar_toggle: TemplateChild<Button>,
|
||||
#[template_child]
|
||||
pub reset_popover_menu: TemplateChild<PopoverMenu>,
|
||||
#[template_child]
|
||||
pub reset_close: TemplateChild<Button>,
|
||||
#[template_child]
|
||||
pub reset_about_button: TemplateChild<Button>,
|
||||
#[template_child]
|
||||
pub reset_preference_button: TemplateChild<Button>,
|
||||
#[template_child]
|
||||
pub reset_shortcuts_button: TemplateChild<Button>,
|
||||
pub sidebar_entries: RefCell<Vec<(SidebarEntry, Vec<SidebarEntry>)>>,
|
||||
pub listeners: Arc<Listeners>,
|
||||
pub position: Rc<RefCell<Position>>,
|
||||
|
@ -70,8 +62,8 @@ impl ObjectImpl for ReSetWindow {
|
|||
self.parent_constructed();
|
||||
|
||||
let obj = self.obj();
|
||||
obj.setup_shortcuts();
|
||||
obj.setup_callback();
|
||||
obj.setup_popover_buttons();
|
||||
obj.handle_dynamic_sidebar();
|
||||
obj.setup_sidebar_entries();
|
||||
}
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<!-- Created with Cambalache 0.17.0 -->
|
||||
<interface>
|
||||
<requires lib="gio" version="2.0"/>
|
||||
<requires lib="gtk" version="4.12"/>
|
||||
<requires lib="libadwaita" version="1.4"/>
|
||||
<template class="resetUI" parent="AdwApplicationWindow">
|
||||
|
@ -38,33 +39,7 @@
|
|||
<property name="hexpand">True</property>
|
||||
<property name="hexpand-set">True</property>
|
||||
<property name="icon-name">open-menu-symbolic</property>
|
||||
<property name="popover">
|
||||
<object class="GtkPopoverMenu" id="reset_popover_menu">
|
||||
<property name="child">
|
||||
<object class="GtkBox">
|
||||
<property name="orientation">vertical</property>
|
||||
<child>
|
||||
<object class="GtkButton" id="reset_shortcuts_button">
|
||||
<property name="has-frame">False</property>
|
||||
<property name="label">Shortcuts</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reset_preference_button">
|
||||
<property name="has-frame">False</property>
|
||||
<property name="label">Preferences</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reset_about_button">
|
||||
<property name="has-frame">False</property>
|
||||
<property name="label">About</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
</object>
|
||||
</property>
|
||||
<property name="menu-model">main_menu</property>
|
||||
<property name="valign">end</property>
|
||||
<property name="vexpand">True</property>
|
||||
</object>
|
||||
|
@ -152,4 +127,14 @@
|
|||
</object>
|
||||
</child>
|
||||
</template>
|
||||
<menu id="main_menu">
|
||||
<item>
|
||||
<attribute name="action">win.about</attribute>
|
||||
<attribute name="label">About</attribute>
|
||||
</item>
|
||||
<item>
|
||||
<attribute name="action">win.show-help-overlay</attribute>
|
||||
<attribute name="label">Shortcuts</attribute>
|
||||
</item>
|
||||
</menu>
|
||||
</interface>
|
||||
|
|
15
src/resources/resetMenu.ui
Normal file
15
src/resources/resetMenu.ui
Normal file
|
@ -0,0 +1,15 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<!-- Created with Cambalache 0.17.0 -->
|
||||
<interface>
|
||||
<requires lib="gio" version="2.0"/>
|
||||
<menu id="menu">
|
||||
<item>
|
||||
<attribute name="action">win.about</attribute>
|
||||
<attribute name="label">About</attribute>
|
||||
</item>
|
||||
<item>
|
||||
<attribute name="action">win.show-help-overlay</attribute>
|
||||
<attribute name="label">Shortcuts</attribute>
|
||||
</item>
|
||||
</menu>
|
||||
</interface>
|
39
src/resources/resetShortcuts.ui
Normal file
39
src/resources/resetShortcuts.ui
Normal file
|
@ -0,0 +1,39 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<!-- Created with Cambalache 0.17.0 -->
|
||||
<interface>
|
||||
<requires lib="gtk" version="4.0"/>
|
||||
<object class="GtkShortcutsWindow" id="help_overlay">
|
||||
<child>
|
||||
<object class="GtkShortcutsSection">
|
||||
<child>
|
||||
<object class="GtkShortcutsGroup">
|
||||
<child>
|
||||
<object class="GtkShortcutsShortcut">
|
||||
<property name="accelerator"><Ctrl>F</property>
|
||||
<property name="action-name">win.search</property>
|
||||
<property name="icon-set">True</property>
|
||||
<property name="title">Search for Setting</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkShortcutsShortcut">
|
||||
<property name="accelerator"><Ctrl>Q</property>
|
||||
<property name="action-name">win.close</property>
|
||||
<property name="icon-set">True</property>
|
||||
<property name="title">Close ReSet</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkShortcutsShortcut">
|
||||
<property name="accelerator"><Ctrl>A</property>
|
||||
<property name="action-name">win.about</property>
|
||||
<property name="icon-set">True</property>
|
||||
<property name="title">Show about window</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</interface>
|
|
@ -21,7 +21,8 @@
|
|||
(20,None,None,"resetCardEntry.ui",None,None,None,None,None,None,None),
|
||||
(21,1,None,"resetWifiOptions.ui",None,None,None,None,None,None,None),
|
||||
(22,1,None,"resetWifiAddressEntry.ui",None,None,None,None,None,None,None),
|
||||
(23,1,None,"resetWifiRouteEntry.ui",None,None,None,None,None,None,None)
|
||||
(23,1,None,"resetWifiRouteEntry.ui",None,None,None,None,None,None,None),
|
||||
(24,None,None,"resetShortcuts.ui",None,None,None,None,None,None,None)
|
||||
</ui>
|
||||
<ui_library>
|
||||
(21,"gtk","4.12",None),
|
||||
|
@ -40,17 +41,23 @@
|
|||
(3,26,"GtkButton","reset_sidebar_toggle",25,None,None,None,None,None),
|
||||
(3,31,"GtkButton","reset_close",25,None,None,None,2,None),
|
||||
(3,33,"GtkMenuButton",None,25,None,None,None,1,None),
|
||||
(3,35,"GtkPopoverMenu","reset_popover_menu",33,None,None,None,-1,None),
|
||||
(3,36,"GtkBox",None,35,None,None,None,-1,None),
|
||||
(3,38,"GtkButton","reset_preference_button",36,None,None,None,1,None),
|
||||
(3,39,"GtkButton","reset_about_button",36,None,None,None,2,None),
|
||||
(3,40,"GtkScrolledWindow",None,18,None,None,None,1,None),
|
||||
(3,41,"GtkViewport",None,40,None,None,None,None,None),
|
||||
(3,42,"GtkListBox","reset_sidebar_list",41,None,None,None,None,None),
|
||||
(3,43,"GtkScrolledWindow",None,3,None,None,None,1,None),
|
||||
(3,44,"GtkViewport",None,43,None,None,None,None,None),
|
||||
(3,45,"GtkFlowBox","reset_main",44,None,None,None,None,None),
|
||||
(3,51,"GtkButton","reset_shortcuts_button",36,None,None,None,None,None),
|
||||
(3,54,"(menu)","main_menu",None,None,None,None,None,None),
|
||||
(3,59,"(external)","54",None,None,None,None,None,None),
|
||||
(3,61,"(external)","59",None,None,None,None,None,None),
|
||||
(3,63,"(external)","61",None,None,None,None,None,None),
|
||||
(3,65,"(external)","63",None,None,None,None,None,None),
|
||||
(3,69,"(external)","67",None,None,None,None,None,None),
|
||||
(3,72,"(external)","71",None,None,None,None,None,None),
|
||||
(3,73,"(item)",None,54,None,None,None,1,None),
|
||||
(3,74,"(external)","72",None,None,None,None,None,None),
|
||||
(3,75,"(item)",None,54,None,None,None,2,None),
|
||||
(3,76,"(external)","74",None,None,None,None,None,None),
|
||||
(4,7,"GtkBox","resetWifi",None,None,None,None,None,None),
|
||||
(4,152,"AdwNavigationView","reset_wifi_navigation",7,None,None,None,1,None),
|
||||
(4,153,"AdwNavigationPage",None,152,None,None,None,None,None),
|
||||
|
@ -284,7 +291,13 @@
|
|||
(23,8,"AdwEntryRow","reset_route_metric",6,None,None,None,1,None),
|
||||
(23,9,"GtkBox",None,2,None,None,None,None,None),
|
||||
(23,10,"AdwEntryRow","reset_route_address",9,None,None,None,None,None),
|
||||
(23,11,"AdwEntryRow","reset_route_prefix",9,None,None,None,1,None)
|
||||
(23,11,"AdwEntryRow","reset_route_prefix",9,None,None,None,1,None),
|
||||
(24,1,"GtkShortcutsWindow","help_overlay",None,None,None,None,-1,None),
|
||||
(24,2,"GtkShortcutsSection",None,1,None,None,None,-1,None),
|
||||
(24,3,"GtkShortcutsGroup",None,2,None,None,None,-1,None),
|
||||
(24,4,"GtkShortcutsShortcut",None,3,None,None,None,-1,None),
|
||||
(24,5,"GtkShortcutsShortcut",None,3,None,None,None,-1,None),
|
||||
(24,6,"GtkShortcutsShortcut",None,3,None,None,None,2,None)
|
||||
</object>
|
||||
<object_property>
|
||||
(3,1,"GtkWidget","height-request","200",None,None,None,None,None,None,None,None,None),
|
||||
|
@ -316,18 +329,12 @@
|
|||
(3,33,"GtkMenuButton","can-shrink","True",None,None,None,None,None,None,None,None,None),
|
||||
(3,33,"GtkMenuButton","has-frame","False",None,None,None,None,None,None,None,None,None),
|
||||
(3,33,"GtkMenuButton","icon-name","open-menu-symbolic",None,None,None,None,None,None,None,None,None),
|
||||
(3,33,"GtkMenuButton","popover",None,None,None,None,None,35,None,None,None,None),
|
||||
(3,33,"GtkMenuButton","menu-model","54",None,None,None,None,None,None,None,None,None),
|
||||
(3,33,"GtkWidget","halign","end",None,None,None,None,None,None,None,None,None),
|
||||
(3,33,"GtkWidget","hexpand","True",None,None,None,None,None,None,None,None,None),
|
||||
(3,33,"GtkWidget","hexpand-set","True",None,None,None,None,None,None,None,None,None),
|
||||
(3,33,"GtkWidget","valign","end",None,None,None,None,None,None,None,None,None),
|
||||
(3,33,"GtkWidget","vexpand","True",None,None,None,None,None,None,None,None,None),
|
||||
(3,35,"GtkPopover","child",None,None,None,None,None,36,None,None,None,None),
|
||||
(3,36,"GtkOrientable","orientation","vertical",None,None,None,None,None,None,None,None,None),
|
||||
(3,38,"GtkButton","has-frame","False",None,None,None,None,None,None,None,None,None),
|
||||
(3,38,"GtkButton","label","Preferences",None,None,None,None,None,None,None,None,None),
|
||||
(3,39,"GtkButton","has-frame","False",None,None,None,None,None,None,None,None,None),
|
||||
(3,39,"GtkButton","label","About",None,None,None,None,None,None,None,None,None),
|
||||
(3,40,"GtkScrolledWindow","propagate-natural-height","True",None,None,None,None,None,None,None,None,None),
|
||||
(3,40,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
||||
(3,42,"GtkWidget","css-name","resetList",None,None,None,None,None,None,None,None,None),
|
||||
|
@ -340,8 +347,10 @@
|
|||
(3,45,"GtkWidget","hexpand-set","True",None,None,None,None,None,None,None,None,None),
|
||||
(3,45,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
||||
(3,45,"GtkWidget","valign","start",None,None,None,None,None,None,None,None,None),
|
||||
(3,51,"GtkButton","has-frame","False",None,None,None,None,None,None,None,None,None),
|
||||
(3,51,"GtkButton","label","Shortcuts",None,None,None,None,None,None,None,None,None),
|
||||
(3,73,"(item)","action","win.about",None,None,None,None,None,None,None,None,None),
|
||||
(3,73,"(item)","label","About",None,None,None,None,None,None,None,None,None),
|
||||
(3,75,"(item)","action","win.show-help-overlay",None,None,None,None,None,None,None,None,None),
|
||||
(3,75,"(item)","label","Shortcuts",None,None,None,None,None,None,None,None,None),
|
||||
(4,7,"GtkOrientable","orientation","vertical",None,None,None,None,None,None,None,None,None),
|
||||
(4,7,"GtkWidget","hexpand","True",None,None,None,None,None,None,None,None,None),
|
||||
(4,7,"GtkWidget","hexpand-set","True",None,None,None,None,None,None,None,None,None),
|
||||
|
@ -804,7 +813,19 @@
|
|||
(23,10,"AdwPreferencesRow","title","Address",None,None,None,None,None,None,None,None,None),
|
||||
(23,10,"GtkWidget","hexpand","True",None,None,None,None,None,None,None,None,None),
|
||||
(23,11,"AdwPreferencesRow","title","Prefix",None,None,None,None,None,None,None,None,None),
|
||||
(23,11,"GtkEditable","max-width-chars","5",None,None,None,None,None,None,None,None,None)
|
||||
(23,11,"GtkEditable","max-width-chars","5",None,None,None,None,None,None,None,None,None),
|
||||
(24,4,"GtkShortcutsShortcut","accelerator","<Ctrl>F",None,None,None,None,None,None,None,None,None),
|
||||
(24,4,"GtkShortcutsShortcut","action-name","win.search",None,None,None,None,None,None,None,None,None),
|
||||
(24,4,"GtkShortcutsShortcut","icon-set","True",None,None,None,None,None,None,None,None,None),
|
||||
(24,4,"GtkShortcutsShortcut","title","Search for Setting",None,None,None,None,None,None,None,None,None),
|
||||
(24,5,"GtkShortcutsShortcut","accelerator","<Ctrl>Q",None,None,None,None,None,None,None,None,None),
|
||||
(24,5,"GtkShortcutsShortcut","action-name","win.close",None,None,None,None,None,None,None,None,None),
|
||||
(24,5,"GtkShortcutsShortcut","icon-set","True",None,None,None,None,None,None,None,None,None),
|
||||
(24,5,"GtkShortcutsShortcut","title","Close ReSet",None,None,None,None,None,None,None,None,None),
|
||||
(24,6,"GtkShortcutsShortcut","accelerator","<Ctrl>A",None,None,None,None,None,None,None,None,None),
|
||||
(24,6,"GtkShortcutsShortcut","action-name","win.about",None,None,None,None,None,None,None,None,None),
|
||||
(24,6,"GtkShortcutsShortcut","icon-set","True",None,None,None,None,None,None,None,None,None),
|
||||
(24,6,"GtkShortcutsShortcut","title","Show about window",None,None,None,None,None,None,None,None,None)
|
||||
</object_property>
|
||||
<object_data>
|
||||
(3,42,"GtkWidget",1,1,None,None,None,None,None,None),
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<gresources>
|
||||
<gresource prefix="/org/Xetibo/ReSet/">
|
||||
<!--Main window-->
|
||||
<!--Main
|
||||
window-->
|
||||
<file compressed="true" preprocess="xml-stripblanks">resetMainWindow.ui</file>
|
||||
<file compressed="true" preprocess="xml-stripblanks">resetSidebarEntry.ui</file>
|
||||
<file compressed="true" preprocess="xml-stripblanks">resetSettingBox.ui</file>
|
||||
|
@ -26,6 +27,8 @@
|
|||
<file compressed="true" preprocess="xml-stripblanks">resetSourceEntry.ui</file>
|
||||
<!--Misc-->
|
||||
<file compressed="true" preprocess="xml-stripblanks">resetPopup.ui</file>
|
||||
<file compressed="true" preprocess="xml-stripblanks" alias="gtk/help-overlay.ui">resetShortcuts.ui</file>
|
||||
<file compressed="true" preprocess="xml-stripblanks">resetMenu.ui</file>
|
||||
<file compressed="true" preprocess="xml-stripblanks">resetCardEntry.ui</file>
|
||||
</gresource>
|
||||
</gresources>
|
||||
|
|
Loading…
Reference in a new issue