mirror of
https://github.com/Xetibo/ReSet.git
synced 2025-04-17 10:18:32 +02:00
Merge pull request #78 from Xetibo/ina
make wifi options a little bit better
This commit is contained in:
commit
b422a50efd
|
@ -6,7 +6,7 @@ description = "A wip universal Linux settings application."
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
reset_daemon = "0.4.6"
|
reset_daemon = "0.4.6"
|
||||||
re_set-lib = "0.6.6"
|
re_set-lib = { git = "https://github.com/Xetibo/ReSet-Lib", branch = "main" }
|
||||||
adw = { version = "0.5.3", package = "libadwaita", features = ["v1_4"] }
|
adw = { version = "0.5.3", package = "libadwaita", features = ["v1_4"] }
|
||||||
dbus = "0.9.7"
|
dbus = "0.9.7"
|
||||||
gtk = { version = "0.7.3", package = "gtk4", features = ["v4_12"] }
|
gtk = { version = "0.7.3", package = "gtk4", features = ["v4_12"] }
|
||||||
|
|
|
@ -54,6 +54,7 @@ fn setup_callbacks(
|
||||||
imp.reset_visibility
|
imp.reset_visibility
|
||||||
.set_action_target_value(Some(&Variant::from("visibility")));
|
.set_action_target_value(Some(&Variant::from("visibility")));
|
||||||
|
|
||||||
|
imp.reset_bluetooth_main_tab.set_activatable(true);
|
||||||
imp.reset_bluetooth_main_tab
|
imp.reset_bluetooth_main_tab
|
||||||
.set_action_name(Some("navigation.pop"));
|
.set_action_name(Some("navigation.pop"));
|
||||||
|
|
||||||
|
@ -67,15 +68,13 @@ fn setup_callbacks(
|
||||||
});
|
});
|
||||||
|
|
||||||
imp.reset_bluetooth_discoverable_switch
|
imp.reset_bluetooth_discoverable_switch
|
||||||
.connect_state_set(clone!(@weak imp => @default-return glib::Propagation::Proceed,move |_, state| {
|
.connect_active_notify(clone!(@weak imp => move |state| {
|
||||||
set_bluetooth_adapter_visibility(imp.reset_current_bluetooth_adapter.borrow().path.clone(), state);
|
set_bluetooth_adapter_visibility(imp.reset_current_bluetooth_adapter.borrow().path.clone(), state.is_active());
|
||||||
glib::Propagation::Proceed
|
|
||||||
}));
|
}));
|
||||||
|
|
||||||
imp.reset_bluetooth_pairable_switch
|
imp.reset_bluetooth_pairable_switch
|
||||||
.connect_state_set(clone!(@weak imp => @default-return glib::Propagation::Proceed,move |_, state| {
|
.connect_active_notify(clone!(@weak imp => move |state| {
|
||||||
set_bluetooth_adapter_pairability(imp.reset_current_bluetooth_adapter.borrow().path.clone(), state);
|
set_bluetooth_adapter_pairability(imp.reset_current_bluetooth_adapter.borrow().path.clone(), state.is_active());
|
||||||
glib::Propagation::Proceed
|
|
||||||
}));
|
}));
|
||||||
|
|
||||||
imp.reset_bluetooth_switch
|
imp.reset_bluetooth_switch
|
||||||
|
@ -151,11 +150,11 @@ pub fn populate_conntected_bluetooth_devices(bluetooth_box: Arc<BluetoothBox>) {
|
||||||
imp.reset_bluetooth_switch
|
imp.reset_bluetooth_switch
|
||||||
.set_active(current_adapter.powered);
|
.set_active(current_adapter.powered);
|
||||||
imp.reset_bluetooth_discoverable_switch
|
imp.reset_bluetooth_discoverable_switch
|
||||||
.set_state(current_adapter.discoverable);
|
.set_active(current_adapter.discoverable);
|
||||||
imp.reset_bluetooth_discoverable_switch
|
imp.reset_bluetooth_discoverable_switch
|
||||||
.set_active(current_adapter.discoverable);
|
.set_active(current_adapter.discoverable);
|
||||||
imp.reset_bluetooth_pairable_switch
|
imp.reset_bluetooth_pairable_switch
|
||||||
.set_state(current_adapter.pairable);
|
.set_active(current_adapter.pairable);
|
||||||
imp.reset_bluetooth_pairable_switch
|
imp.reset_bluetooth_pairable_switch
|
||||||
.set_active(current_adapter.pairable);
|
.set_active(current_adapter.pairable);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use adw::{ActionRow, ComboRow, PreferencesGroup};
|
use adw::{ActionRow, ComboRow, PreferencesGroup, SwitchRow};
|
||||||
use dbus::Path;
|
use dbus::Path;
|
||||||
use gtk::subclass::prelude::*;
|
use gtk::subclass::prelude::*;
|
||||||
use gtk::{glib, Button, CompositeTemplate, Switch};
|
use gtk::{glib, Button, CompositeTemplate, Switch};
|
||||||
|
@ -30,11 +30,11 @@ pub struct BluetoothBox {
|
||||||
#[template_child]
|
#[template_child]
|
||||||
pub reset_visibility: TemplateChild<ActionRow>,
|
pub reset_visibility: TemplateChild<ActionRow>,
|
||||||
#[template_child]
|
#[template_child]
|
||||||
pub reset_bluetooth_main_tab: TemplateChild<ListEntry>,
|
pub reset_bluetooth_main_tab: TemplateChild<ActionRow>,
|
||||||
#[template_child]
|
#[template_child]
|
||||||
pub reset_bluetooth_discoverable_switch: TemplateChild<Switch>,
|
pub reset_bluetooth_discoverable_switch: TemplateChild<SwitchRow>,
|
||||||
#[template_child]
|
#[template_child]
|
||||||
pub reset_bluetooth_pairable_switch: TemplateChild<Switch>,
|
pub reset_bluetooth_pairable_switch: TemplateChild<SwitchRow>,
|
||||||
pub available_devices: BluetoothMap,
|
pub available_devices: BluetoothMap,
|
||||||
pub connected_devices: BluetoothMap,
|
pub connected_devices: BluetoothMap,
|
||||||
pub reset_bluetooth_adapters: Arc<RwLock<HashMap<String, (BluetoothAdapter, u32)>>>,
|
pub reset_bluetooth_adapters: Arc<RwLock<HashMap<String, (BluetoothAdapter, u32)>>>,
|
||||||
|
|
|
@ -7,7 +7,7 @@ use std::time::SystemTime;
|
||||||
|
|
||||||
use crate::components::input::output_stream_entry;
|
use crate::components::input::output_stream_entry;
|
||||||
use gtk::subclass::prelude::*;
|
use gtk::subclass::prelude::*;
|
||||||
use gtk::{glib, Button, CompositeTemplate, Label, ProgressBar, Scale};
|
use gtk::{glib, Button, CompositeTemplate, Label, Scale};
|
||||||
|
|
||||||
#[derive(Default, CompositeTemplate)]
|
#[derive(Default, CompositeTemplate)]
|
||||||
#[template(resource = "/org/Xetibo/ReSet/resetOutputStreamEntry.ui")]
|
#[template(resource = "/org/Xetibo/ReSet/resetOutputStreamEntry.ui")]
|
||||||
|
@ -20,8 +20,6 @@ pub struct OutputStreamEntry {
|
||||||
pub reset_volume_slider: TemplateChild<Scale>,
|
pub reset_volume_slider: TemplateChild<Scale>,
|
||||||
#[template_child]
|
#[template_child]
|
||||||
pub reset_volume_percentage: TemplateChild<Label>,
|
pub reset_volume_percentage: TemplateChild<Label>,
|
||||||
#[template_child]
|
|
||||||
pub reset_volume_meter: TemplateChild<ProgressBar>,
|
|
||||||
pub stream: Arc<RefCell<OutputStream>>,
|
pub stream: Arc<RefCell<OutputStream>>,
|
||||||
pub associated_source: Arc<RefCell<(u32, String)>>,
|
pub associated_source: Arc<RefCell<(u32, String)>>,
|
||||||
pub volume_time_stamp: RefCell<Option<SystemTime>>,
|
pub volume_time_stamp: RefCell<Option<SystemTime>>,
|
||||||
|
|
|
@ -120,6 +120,16 @@ pub fn populate_sources(input_box: Arc<SourceBox>) {
|
||||||
let default_sink = input_box_imp.reset_default_source.clone();
|
let default_sink = input_box_imp.reset_default_source.clone();
|
||||||
let source = default_sink.borrow();
|
let source = default_sink.borrow();
|
||||||
|
|
||||||
|
if source.muted {
|
||||||
|
input_box_imp
|
||||||
|
.reset_source_mute
|
||||||
|
.set_icon_name("microphone-disabled-symbolic");
|
||||||
|
} else {
|
||||||
|
input_box_imp
|
||||||
|
.reset_source_mute
|
||||||
|
.set_icon_name("audio-input-microphone-symbolic");
|
||||||
|
}
|
||||||
|
|
||||||
let volume = source.volume.first().unwrap_or(&0_u32);
|
let volume = source.volume.first().unwrap_or(&0_u32);
|
||||||
let fraction = (*volume as f64 / 655.36).round();
|
let fraction = (*volume as f64 / 655.36).round();
|
||||||
let percentage = (fraction).to_string() + "%";
|
let percentage = (fraction).to_string() + "%";
|
||||||
|
|
|
@ -9,7 +9,7 @@ use crate::components::base::list_entry::ListEntry;
|
||||||
use crate::components::input::source_box;
|
use crate::components::input::source_box;
|
||||||
use gtk::subclass::prelude::*;
|
use gtk::subclass::prelude::*;
|
||||||
use gtk::{glib, CheckButton, CompositeTemplate, StringList, TemplateChild};
|
use gtk::{glib, CheckButton, CompositeTemplate, StringList, TemplateChild};
|
||||||
use gtk::{prelude::*, Button, Label, ProgressBar, Scale};
|
use gtk::{prelude::*, Button, Label, Scale};
|
||||||
|
|
||||||
use super::output_stream_entry::OutputStreamEntry;
|
use super::output_stream_entry::OutputStreamEntry;
|
||||||
use super::source_entry::SourceEntry;
|
use super::source_entry::SourceEntry;
|
||||||
|
@ -33,8 +33,7 @@ pub struct SourceBox {
|
||||||
pub reset_volume_slider: TemplateChild<Scale>,
|
pub reset_volume_slider: TemplateChild<Scale>,
|
||||||
#[template_child]
|
#[template_child]
|
||||||
pub reset_volume_percentage: TemplateChild<Label>,
|
pub reset_volume_percentage: TemplateChild<Label>,
|
||||||
#[template_child]
|
|
||||||
pub reset_volume_meter: TemplateChild<ProgressBar>,
|
|
||||||
#[template_child]
|
#[template_child]
|
||||||
pub reset_sources: TemplateChild<gtk::Box>,
|
pub reset_sources: TemplateChild<gtk::Box>,
|
||||||
#[template_child]
|
#[template_child]
|
||||||
|
|
|
@ -6,7 +6,7 @@ use std::sync::Arc;
|
||||||
use std::time::SystemTime;
|
use std::time::SystemTime;
|
||||||
|
|
||||||
use gtk::subclass::prelude::*;
|
use gtk::subclass::prelude::*;
|
||||||
use gtk::{glib, Button, CompositeTemplate, Label, ProgressBar, Scale};
|
use gtk::{glib, Button, CompositeTemplate, Label, Scale};
|
||||||
|
|
||||||
use super::input_stream_entry;
|
use super::input_stream_entry;
|
||||||
|
|
||||||
|
@ -21,8 +21,6 @@ pub struct InputStreamEntry {
|
||||||
pub reset_volume_slider: TemplateChild<Scale>,
|
pub reset_volume_slider: TemplateChild<Scale>,
|
||||||
#[template_child]
|
#[template_child]
|
||||||
pub reset_volume_percentage: TemplateChild<Label>,
|
pub reset_volume_percentage: TemplateChild<Label>,
|
||||||
#[template_child]
|
|
||||||
pub reset_volume_meter: TemplateChild<ProgressBar>,
|
|
||||||
pub stream: Arc<RefCell<InputStream>>,
|
pub stream: Arc<RefCell<InputStream>>,
|
||||||
pub associated_sink: Arc<RefCell<(u32, String)>>,
|
pub associated_sink: Arc<RefCell<(u32, String)>>,
|
||||||
pub volume_time_stamp: RefCell<Option<SystemTime>>,
|
pub volume_time_stamp: RefCell<Option<SystemTime>>,
|
||||||
|
|
|
@ -119,6 +119,16 @@ pub fn populate_sinks(output_box: Arc<SinkBox>) {
|
||||||
let default_sink = output_box_imp.reset_default_sink.clone();
|
let default_sink = output_box_imp.reset_default_sink.clone();
|
||||||
let sink = default_sink.borrow();
|
let sink = default_sink.borrow();
|
||||||
|
|
||||||
|
if sink.muted {
|
||||||
|
output_box_imp
|
||||||
|
.reset_sink_mute
|
||||||
|
.set_icon_name("audio-volume-muted-symbolic");
|
||||||
|
} else {
|
||||||
|
output_box_imp
|
||||||
|
.reset_sink_mute
|
||||||
|
.set_icon_name("audio-volume-high-symbolic");
|
||||||
|
}
|
||||||
|
|
||||||
let volume = sink.volume.first().unwrap_or(&0);
|
let volume = sink.volume.first().unwrap_or(&0);
|
||||||
let fraction = (*volume as f64 / 655.36).round();
|
let fraction = (*volume as f64 / 655.36).round();
|
||||||
let percentage = (fraction).to_string() + "%";
|
let percentage = (fraction).to_string() + "%";
|
||||||
|
|
|
@ -9,7 +9,7 @@ use crate::components::base::list_entry::ListEntry;
|
||||||
use crate::components::output::input_stream_entry::InputStreamEntry;
|
use crate::components::output::input_stream_entry::InputStreamEntry;
|
||||||
use gtk::subclass::prelude::*;
|
use gtk::subclass::prelude::*;
|
||||||
use gtk::{glib, Box, Button, CheckButton, CompositeTemplate, Label, StringList, TemplateChild};
|
use gtk::{glib, Box, Button, CheckButton, CompositeTemplate, Label, StringList, TemplateChild};
|
||||||
use gtk::{prelude::*, ProgressBar, Scale};
|
use gtk::{prelude::*, Scale};
|
||||||
|
|
||||||
use super::sink_box;
|
use super::sink_box;
|
||||||
use super::sink_entry::SinkEntry;
|
use super::sink_entry::SinkEntry;
|
||||||
|
@ -36,8 +36,6 @@ pub struct SinkBox {
|
||||||
#[template_child]
|
#[template_child]
|
||||||
pub reset_volume_percentage: TemplateChild<Label>,
|
pub reset_volume_percentage: TemplateChild<Label>,
|
||||||
#[template_child]
|
#[template_child]
|
||||||
pub reset_volume_meter: TemplateChild<ProgressBar>,
|
|
||||||
#[template_child]
|
|
||||||
pub reset_sinks: TemplateChild<Box>,
|
pub reset_sinks: TemplateChild<Box>,
|
||||||
#[template_child]
|
#[template_child]
|
||||||
pub reset_input_stream_button: TemplateChild<ActionRow>,
|
pub reset_input_stream_button: TemplateChild<ActionRow>,
|
||||||
|
|
|
@ -7,7 +7,7 @@ use std::time::SystemTime;
|
||||||
|
|
||||||
use crate::components::output::sink_entry;
|
use crate::components::output::sink_entry;
|
||||||
use gtk::subclass::prelude::*;
|
use gtk::subclass::prelude::*;
|
||||||
use gtk::{glib, Button, CheckButton, CompositeTemplate, Label, ProgressBar, Scale};
|
use gtk::{glib, Button, CheckButton, CompositeTemplate, Label, Scale};
|
||||||
|
|
||||||
#[derive(Default, CompositeTemplate)]
|
#[derive(Default, CompositeTemplate)]
|
||||||
#[template(resource = "/org/Xetibo/ReSet/resetSinkEntry.ui")]
|
#[template(resource = "/org/Xetibo/ReSet/resetSinkEntry.ui")]
|
||||||
|
@ -22,8 +22,6 @@ pub struct SinkEntry {
|
||||||
pub reset_volume_slider: TemplateChild<Scale>,
|
pub reset_volume_slider: TemplateChild<Scale>,
|
||||||
#[template_child]
|
#[template_child]
|
||||||
pub reset_volume_percentage: TemplateChild<Label>,
|
pub reset_volume_percentage: TemplateChild<Label>,
|
||||||
#[template_child]
|
|
||||||
pub reset_volume_meter: TemplateChild<ProgressBar>,
|
|
||||||
pub stream: Arc<RefCell<Sink>>,
|
pub stream: Arc<RefCell<Sink>>,
|
||||||
pub volume_time_stamp: RefCell<Option<SystemTime>>,
|
pub volume_time_stamp: RefCell<Option<SystemTime>>,
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,16 +1,19 @@
|
||||||
|
use std::rc::Rc;
|
||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
|
|
||||||
use crate::components::wifi::saved_wifi_entry_impl;
|
use crate::components::wifi::saved_wifi_entry_impl;
|
||||||
use crate::components::wifi::wifi_box_impl::WifiBox;
|
use crate::components::wifi::wifi_box_impl::WifiBox;
|
||||||
use adw::glib;
|
use adw::glib;
|
||||||
use adw::glib::Object;
|
use adw::glib::Object;
|
||||||
use adw::prelude::{ActionRowExt, ButtonExt, PreferencesRowExt, WidgetExt};
|
use adw::prelude::{ActionRowExt, ButtonExt, PreferencesRowExt, PreferencesGroupExt};
|
||||||
use dbus::blocking::Connection;
|
use dbus::blocking::Connection;
|
||||||
use dbus::{Error, Path};
|
use dbus::{Error, Path};
|
||||||
use glib::subclass::types::ObjectSubclassIsExt;
|
use glib::subclass::types::ObjectSubclassIsExt;
|
||||||
use glib::{clone, PropertySet};
|
use glib::{clone, PropertySet};
|
||||||
use gtk::{Align, Button, gio, Orientation};
|
use gtk::{Align, Button, gio, Orientation};
|
||||||
use gtk::prelude::{BoxExt, ListBoxRowExt};
|
use gtk::prelude::{BoxExt, ListBoxRowExt};
|
||||||
|
use crate::components::wifi::utils::get_connection_settings;
|
||||||
|
use crate::components::wifi::wifi_options::WifiOptions;
|
||||||
|
|
||||||
glib::wrapper! {
|
glib::wrapper! {
|
||||||
pub struct SavedWifiEntry(ObjectSubclass<saved_wifi_entry_impl::SavedWifiEntry>)
|
pub struct SavedWifiEntry(ObjectSubclass<saved_wifi_entry_impl::SavedWifiEntry>)
|
||||||
|
@ -19,8 +22,8 @@ glib::wrapper! {
|
||||||
}
|
}
|
||||||
|
|
||||||
impl SavedWifiEntry {
|
impl SavedWifiEntry {
|
||||||
pub fn new(name: &str, path: Path<'static>, wifi_box: &WifiBox) -> Self {
|
pub fn new(name: &str, path: Path<'static>, wifi_box: &WifiBox) -> Rc<Self> {
|
||||||
let entry: SavedWifiEntry = Object::builder().build();
|
let entry: Rc<SavedWifiEntry> = Rc::new(Object::builder().build());
|
||||||
entry.set_activatable(false);
|
entry.set_activatable(false);
|
||||||
let entry_imp = entry.imp();
|
let entry_imp = entry.imp();
|
||||||
|
|
||||||
|
@ -43,21 +46,18 @@ impl SavedWifiEntry {
|
||||||
|
|
||||||
edit_button.connect_clicked(
|
edit_button.connect_clicked(
|
||||||
clone!(@ weak entry_imp, @ weak wifi_box => move |_| {
|
clone!(@ weak entry_imp, @ weak wifi_box => move |_| {
|
||||||
// TODO accesspoint has to be saved somewhere i guess
|
let _option = get_connection_settings(entry_imp.reset_connection_path.borrow().clone());
|
||||||
// let _option = getConnectionSettings(entryImp.accessPoint.borrow().associated_connection.clone());
|
wifi_box.reset_wifi_navigation.push(&*WifiOptions::new(_option, entry_imp.reset_connection_path.borrow().clone()));
|
||||||
// wifiBox.resetWifiNavigation.push(&*WifiOptions::new(_option));
|
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
delete_button.connect_clicked(
|
let entry_ref = entry.clone();
|
||||||
clone!(@weak entry as entry => move |_| {
|
delete_button.connect_clicked(clone!(@weak wifi_box => move |_| {
|
||||||
delete_connection(entry.imp().reset_connection_path.take());
|
delete_connection(entry_ref.imp().reset_connection_path.take());
|
||||||
// TODO handle error
|
// TODO handle error
|
||||||
let parent = entry.parent().unwrap();
|
wifi_box.reset_stored_wifi_list.remove(&*entry_ref);
|
||||||
parent.set_visible(false);
|
|
||||||
parent.unparent();
|
}));
|
||||||
}),
|
|
||||||
);
|
|
||||||
entry
|
entry
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@ use std::cell::RefCell;
|
||||||
|
|
||||||
use dbus::Path;
|
use dbus::Path;
|
||||||
use gtk::subclass::prelude::*;
|
use gtk::subclass::prelude::*;
|
||||||
use gtk::{glib, Button, CompositeTemplate, Label};
|
use gtk::{glib, CompositeTemplate};
|
||||||
|
|
||||||
use super::saved_wifi_entry;
|
use super::saved_wifi_entry;
|
||||||
|
|
||||||
|
|
|
@ -178,7 +178,7 @@ pub fn show_stored_connections(wifi_box: Arc<WifiBox>) {
|
||||||
let name =
|
let name =
|
||||||
&String::from_utf8(connection.1).unwrap_or_else(|_| String::from(""));
|
&String::from_utf8(connection.1).unwrap_or_else(|_| String::from(""));
|
||||||
let entry = SavedWifiEntry::new(name, connection.0, self_imp);
|
let entry = SavedWifiEntry::new(name, connection.0, self_imp);
|
||||||
self_imp.reset_stored_wifi_list.add(&entry);
|
self_imp.reset_stored_wifi_list.add(&*entry);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -99,7 +99,7 @@ impl WifiEntry {
|
||||||
let self_imp = self.imp();
|
let self_imp = self.imp();
|
||||||
self_imp.reset_wifi_edit_button.borrow().connect_clicked(clone!(@ weak self_imp, @ weak wifi_box => move |_| {
|
self_imp.reset_wifi_edit_button.borrow().connect_clicked(clone!(@ weak self_imp, @ weak wifi_box => move |_| {
|
||||||
let _option = get_connection_settings(self_imp.access_point.borrow().associated_connection.clone());
|
let _option = get_connection_settings(self_imp.access_point.borrow().associated_connection.clone());
|
||||||
wifi_box.reset_wifi_navigation.push(&*WifiOptions::new(_option, self_imp.access_point.borrow().dbus_path.clone()));
|
wifi_box.reset_wifi_navigation.push(&*WifiOptions::new(_option, self_imp.access_point.borrow().associated_connection.clone()));
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,7 @@ use dbus::arg::PropMap;
|
||||||
use dbus::{Error, Path};
|
use dbus::{Error, Path};
|
||||||
use glib::{clone, PropertySet};
|
use glib::{clone, PropertySet};
|
||||||
use gtk::prelude::{ButtonExt, EditableExt, WidgetExt};
|
use gtk::prelude::{ButtonExt, EditableExt, WidgetExt};
|
||||||
use re_set_lib::network::connection::{Connection, DNSMethod4, DNSMethod6, Enum, TypeSettings};
|
use re_set_lib::network::connection::{Connection, DNSMethod4, DNSMethod6, Enum, KeyManagement, TypeSettings};
|
||||||
use IpProtocol::{IPv4, IPv6};
|
use IpProtocol::{IPv4, IPv6};
|
||||||
|
|
||||||
use crate::components::wifi::utils::IpProtocol;
|
use crate::components::wifi::utils::IpProtocol;
|
||||||
|
@ -30,11 +30,11 @@ unsafe impl Send for WifiOptions {}
|
||||||
unsafe impl Sync for WifiOptions {}
|
unsafe impl Sync for WifiOptions {}
|
||||||
|
|
||||||
impl WifiOptions {
|
impl WifiOptions {
|
||||||
pub fn new(connection: Connection, access_point: Path<'static>) -> Arc<Self> {
|
pub fn new(connection: Connection, connection_path: Path<'static>) -> Arc<Self> {
|
||||||
let wifi_option: Arc<WifiOptions> = Arc::new(Object::builder().build());
|
let wifi_option: Arc<WifiOptions> = Arc::new(Object::builder().build());
|
||||||
wifi_option.imp().connection.set(connection);
|
wifi_option.imp().connection.set(connection);
|
||||||
wifi_option.initialize_ui();
|
wifi_option.initialize_ui();
|
||||||
setup_callbacks(&wifi_option, access_point);
|
setup_callbacks(&wifi_option, connection_path);
|
||||||
wifi_option
|
wifi_option
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -59,7 +59,7 @@ impl WifiOptions {
|
||||||
.reset_wifi_metered
|
.reset_wifi_metered
|
||||||
.set_active(conn.settings.metered != -1);
|
.set_active(conn.settings.metered != -1);
|
||||||
match &conn.device {
|
match &conn.device {
|
||||||
TypeSettings::WIFI(wifi) => {
|
TypeSettings::WIFI(wifi, _) => {
|
||||||
self_imp.reset_wifi_link_speed.set_visible(false);
|
self_imp.reset_wifi_link_speed.set_visible(false);
|
||||||
self_imp.reset_wifi_ip4_addr.set_visible(false);
|
self_imp.reset_wifi_ip4_addr.set_visible(false);
|
||||||
self_imp.reset_wifi_ip6_addr.set_visible(false);
|
self_imp.reset_wifi_ip6_addr.set_visible(false);
|
||||||
|
@ -93,27 +93,26 @@ impl WifiOptions {
|
||||||
// IPv4
|
// IPv4
|
||||||
self_imp
|
self_imp
|
||||||
.reset_ip4_method
|
.reset_ip4_method
|
||||||
.set_selected(conn.ipv4.dns_method.to_i32() as u32);
|
.set_selected(conn.ipv4.method.to_i32() as u32);
|
||||||
self.set_ip4_visibility(conn.ipv4.dns_method.to_i32() as u32);
|
self.set_ip4_visibility(conn.ipv4.method.to_i32() as u32);
|
||||||
|
|
||||||
let ipv4_dns: Vec<String> = conn
|
let ipv4_dns: Vec<Ipv4Addr> = conn
|
||||||
.ipv4
|
.ipv4
|
||||||
.dns
|
.dns
|
||||||
.iter()
|
.iter()
|
||||||
.map(|addr| {
|
.map(|addr| Ipv4Addr::from(*addr))
|
||||||
addr.iter()
|
|
||||||
.map(|octet| octet.to_string())
|
|
||||||
.collect::<Vec<String>>()
|
|
||||||
.join(".")
|
|
||||||
})
|
|
||||||
.collect();
|
.collect();
|
||||||
self_imp.reset_ip4_dns.set_text(&ipv4_dns.join(", "));
|
|
||||||
|
self_imp.reset_ip4_dns.set_text(&ipv4_dns.iter()
|
||||||
|
.map(|ip| ip.to_string())
|
||||||
|
.collect::<Vec<String>>()
|
||||||
|
.join(", "));
|
||||||
self_imp.reset_ip4_gateway.set_text(&conn.ipv4.gateway);
|
self_imp.reset_ip4_gateway.set_text(&conn.ipv4.gateway);
|
||||||
// IPv6
|
// IPv6
|
||||||
self_imp
|
self_imp
|
||||||
.reset_ip6_method
|
.reset_ip6_method
|
||||||
.set_selected(conn.ipv6.dns_method.to_i32() as u32);
|
.set_selected(conn.ipv6.method.to_i32() as u32);
|
||||||
self.set_ip6_visibility(conn.ipv6.dns_method.to_i32() as u32);
|
self.set_ip6_visibility(conn.ipv6.method.to_i32() as u32);
|
||||||
|
|
||||||
let ipv6_dns: Vec<String> = conn
|
let ipv6_dns: Vec<String> = conn
|
||||||
.ipv6
|
.ipv6
|
||||||
|
@ -126,23 +125,24 @@ impl WifiOptions {
|
||||||
.join(":")
|
.join(":")
|
||||||
})
|
})
|
||||||
.collect();
|
.collect();
|
||||||
|
|
||||||
self_imp.reset_ip6_dns.set_text(&ipv6_dns.join(", "));
|
self_imp.reset_ip6_dns.set_text(&ipv6_dns.join(", "));
|
||||||
self_imp.reset_ip6_gateway.set_text(&conn.ipv6.gateway);
|
self_imp.reset_ip6_gateway.set_text(&conn.ipv6.gateway);
|
||||||
|
|
||||||
// Security
|
// Security
|
||||||
if let TypeSettings::WIFI(wifi) = &conn.device {
|
if let TypeSettings::WIFI(_, wifi_security) = &conn.device {
|
||||||
match wifi.security_settings.key_management.as_str() {
|
match wifi_security.key_management {
|
||||||
"none" => {
|
KeyManagement::NONE => {
|
||||||
self_imp.reset_wifi_security_dropdown.set_selected(0);
|
self_imp.reset_wifi_security_dropdown.set_selected(0);
|
||||||
self_imp.reset_wifi_password.set_visible(false);
|
self_imp.reset_wifi_password.set_visible(false);
|
||||||
self_imp.reset_wifi_password.set_text("");
|
self_imp.reset_wifi_password.set_text("");
|
||||||
}
|
}
|
||||||
"wpa-psk" => {
|
KeyManagement::WPAPSK => {
|
||||||
self_imp.reset_wifi_security_dropdown.set_selected(1);
|
self_imp.reset_wifi_security_dropdown.set_selected(1);
|
||||||
self_imp.reset_wifi_password.set_visible(true);
|
self_imp.reset_wifi_password.set_visible(true);
|
||||||
self_imp
|
self_imp
|
||||||
.reset_wifi_password
|
.reset_wifi_password
|
||||||
.set_text(&wifi.security_settings.psk);
|
.set_text(&wifi_security.psk);
|
||||||
}
|
}
|
||||||
_ => {}
|
_ => {}
|
||||||
}
|
}
|
||||||
|
@ -242,6 +242,7 @@ fn setup_callbacks(wifi_options: &Arc<WifiOptions>, path: Path<'static>) {
|
||||||
imp.wifi_options_apply_button
|
imp.wifi_options_apply_button
|
||||||
.connect_clicked(clone!(@weak imp => move |_| {
|
.connect_clicked(clone!(@weak imp => move |_| {
|
||||||
let prop = imp.connection.borrow().convert_to_propmap();
|
let prop = imp.connection.borrow().convert_to_propmap();
|
||||||
|
dbg!(&prop);
|
||||||
set_connection_settings(path.clone(), prop);
|
set_connection_settings(path.clone(), prop);
|
||||||
}));
|
}));
|
||||||
// IPv4
|
// IPv4
|
||||||
|
@ -250,7 +251,7 @@ fn setup_callbacks(wifi_options: &Arc<WifiOptions>, path: Path<'static>) {
|
||||||
.connect_selected_notify(clone!(@weak imp => move |dropdown| {
|
.connect_selected_notify(clone!(@weak imp => move |dropdown| {
|
||||||
let selected = dropdown.selected();
|
let selected = dropdown.selected();
|
||||||
let mut conn = imp.connection.borrow_mut();
|
let mut conn = imp.connection.borrow_mut();
|
||||||
conn.ipv4.dns_method = DNSMethod4::from_i32(selected as i32);
|
conn.ipv4.method = DNSMethod4::from_i32(selected as i32);
|
||||||
wifi_options_ip4.set_ip4_visibility(selected);
|
wifi_options_ip4.set_ip4_visibility(selected);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
@ -266,7 +267,7 @@ fn setup_callbacks(wifi_options: &Arc<WifiOptions>, path: Path<'static>) {
|
||||||
for dns_entry in dns_input.as_str().split(',').map(|s| s.trim()) {
|
for dns_entry in dns_input.as_str().split(',').map(|s| s.trim()) {
|
||||||
if let Ok(addr) = Ipv4Addr::from_str(dns_entry) {
|
if let Ok(addr) = Ipv4Addr::from_str(dns_entry) {
|
||||||
imp.reset_ip4_dns.remove_css_class("error");
|
imp.reset_ip4_dns.remove_css_class("error");
|
||||||
conn.ipv4.dns.push(addr.octets().to_vec());
|
conn.ipv4.dns.push(u32::from_be_bytes(addr.octets()));
|
||||||
} else {
|
} else {
|
||||||
imp.reset_ip4_dns.add_css_class("error");
|
imp.reset_ip4_dns.add_css_class("error");
|
||||||
}
|
}
|
||||||
|
@ -274,7 +275,7 @@ fn setup_callbacks(wifi_options: &Arc<WifiOptions>, path: Path<'static>) {
|
||||||
}));
|
}));
|
||||||
imp.reset_ip4_address_add_button
|
imp.reset_ip4_address_add_button
|
||||||
.connect_clicked(clone!(@weak imp => move |_| {
|
.connect_clicked(clone!(@weak imp => move |_| {
|
||||||
let address = &WifiAddressEntry::new(None, imp.connection.clone(), IpProtocol::IPv4);
|
let address = &WifiAddressEntry::new(None, imp.connection.clone(), IPv4);
|
||||||
imp.reset_ip4_address_group.add(address);
|
imp.reset_ip4_address_group.add(address);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
@ -300,7 +301,7 @@ fn setup_callbacks(wifi_options: &Arc<WifiOptions>, path: Path<'static>) {
|
||||||
.connect_selected_notify(clone!(@weak imp => move |dropdown| {
|
.connect_selected_notify(clone!(@weak imp => move |dropdown| {
|
||||||
let selected = dropdown.selected();
|
let selected = dropdown.selected();
|
||||||
let mut conn = imp.connection.borrow_mut();
|
let mut conn = imp.connection.borrow_mut();
|
||||||
conn.ipv6.dns_method = DNSMethod6::from_i32(selected as i32);
|
conn.ipv6.method = DNSMethod6::from_i32(selected as i32);
|
||||||
wifi_options_ip6.set_ip6_visibility(selected);
|
wifi_options_ip6.set_ip6_visibility(selected);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
@ -324,7 +325,7 @@ fn setup_callbacks(wifi_options: &Arc<WifiOptions>, path: Path<'static>) {
|
||||||
}));
|
}));
|
||||||
imp.reset_ip6_address_add_button
|
imp.reset_ip6_address_add_button
|
||||||
.connect_clicked(clone!(@weak imp => move |_| {
|
.connect_clicked(clone!(@weak imp => move |_| {
|
||||||
let address = &WifiAddressEntry::new(None, imp.connection.clone(), IpProtocol::IPv4);
|
let address = &WifiAddressEntry::new(None, imp.connection.clone(), IPv4);
|
||||||
imp.reset_ip6_address_group.add(address);
|
imp.reset_ip6_address_group.add(address);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
@ -352,15 +353,15 @@ fn setup_callbacks(wifi_options: &Arc<WifiOptions>, path: Path<'static>) {
|
||||||
let mut conn = imp.connection.borrow_mut();
|
let mut conn = imp.connection.borrow_mut();
|
||||||
|
|
||||||
match (selected, &mut conn.device) {
|
match (selected, &mut conn.device) {
|
||||||
(0 , TypeSettings::WIFI(wifi)) => { // None
|
(0 , TypeSettings::WIFI(_, wifi_security)) => { // None
|
||||||
imp.reset_wifi_password.set_visible(false);
|
imp.reset_wifi_password.set_visible(false);
|
||||||
wifi.security_settings.key_management = String::from("none");
|
wifi_security.key_management = KeyManagement::NONE;
|
||||||
wifi.security_settings.authentication_algorithm = String::from("open");
|
wifi_security.authentication_algorithm = String::from("none");
|
||||||
},
|
},
|
||||||
(1 , TypeSettings::WIFI(wifi)) => { // WPA/WPA2 Personal
|
(1 , TypeSettings::WIFI(_, wifi_security)) => { // WPA/WPA2 Personal
|
||||||
imp.reset_wifi_password.set_visible(true);
|
imp.reset_wifi_password.set_visible(true);
|
||||||
wifi.security_settings.key_management = String::from("wpa-psk");
|
wifi_security.key_management = KeyManagement::WPAPSK;
|
||||||
wifi.security_settings.authentication_algorithm = String::from("");
|
wifi_security.authentication_algorithm = String::from("none");
|
||||||
},
|
},
|
||||||
(_, _) => {}
|
(_, _) => {}
|
||||||
}
|
}
|
||||||
|
@ -370,8 +371,8 @@ fn setup_callbacks(wifi_options: &Arc<WifiOptions>, path: Path<'static>) {
|
||||||
.connect_changed(clone!(@weak imp => move |entry| {
|
.connect_changed(clone!(@weak imp => move |entry| {
|
||||||
let password_input = entry.text();
|
let password_input = entry.text();
|
||||||
let mut conn = imp.connection.borrow_mut();
|
let mut conn = imp.connection.borrow_mut();
|
||||||
if let TypeSettings::WIFI(wifi) = &mut conn.device {
|
if let TypeSettings::WIFI(_, wifi_security) = &mut conn.device {
|
||||||
wifi.security_settings.psk = password_input.to_string();
|
wifi_security.psk = password_input.to_string();
|
||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
|
@ -97,11 +97,6 @@
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
<child>
|
|
||||||
<object class="GtkProgressBar" id="reset_volume_meter">
|
|
||||||
<property name="margin-top">5</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
|
|
|
@ -97,11 +97,6 @@
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
<child>
|
|
||||||
<object class="GtkProgressBar" id="reset_volume_meter">
|
|
||||||
<property name="margin-top">5</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
|
|
|
@ -91,33 +91,16 @@
|
||||||
<object class="GtkBox">
|
<object class="GtkBox">
|
||||||
<property name="orientation">vertical</property>
|
<property name="orientation">vertical</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkListBox">
|
<object class="AdwPreferencesGroup">
|
||||||
<property name="css-classes">boxed-list</property>
|
|
||||||
<property name="margin-bottom">10</property>
|
|
||||||
<property name="margin-end">5</property>
|
|
||||||
<property name="margin-start">5</property>
|
|
||||||
<property name="margin-top">5</property>
|
|
||||||
<property name="show-separators">True</property>
|
|
||||||
<property name="valign">start</property>
|
|
||||||
<child>
|
<child>
|
||||||
<object class="resetListBoxRow" id="reset_bluetooth_main_tab">
|
<object class="AdwActionRow" id="reset_bluetooth_main_tab">
|
||||||
|
<property name="title">Available Networks</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkBox">
|
<object class="GtkImage">
|
||||||
<property name="height-request">40</property>
|
<property name="halign">end</property>
|
||||||
<child>
|
<property name="hexpand">True</property>
|
||||||
<object class="GtkLabel">
|
<property name="icon-name">go-previous-symbolic</property>
|
||||||
<property name="label">Main</property>
|
<property name="margin-end">5</property>
|
||||||
<property name="margin-start">5</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkImage">
|
|
||||||
<property name="halign">end</property>
|
|
||||||
<property name="hexpand">True</property>
|
|
||||||
<property name="icon-name">go-previous-symbolic</property>
|
|
||||||
<property name="margin-end">5</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
|
@ -125,46 +108,18 @@
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkLabel">
|
<object class="AdwPreferencesGroup">
|
||||||
<property name="halign">start</property>
|
<property name="title">Visibility Settings</property>
|
||||||
<property name="label">Visibility Settings</property>
|
|
||||||
<property name="margin-start">5</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkBox">
|
|
||||||
<property name="margin-bottom">5</property>
|
|
||||||
<property name="margin-start">5</property>
|
|
||||||
<property name="margin-top">5</property>
|
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkLabel">
|
<object class="AdwSwitchRow" id="reset_bluetooth_pairable_switch">
|
||||||
<property name="halign">start</property>
|
<property name="title">Pairable</property>
|
||||||
<property name="hexpand">True</property>
|
|
||||||
<property name="hexpand-set">True</property>
|
|
||||||
<property name="label">Pairable</property>
|
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkSwitch" id="reset_bluetooth_pairable_switch"/>
|
<object class="AdwSwitchRow" id="reset_bluetooth_discoverable_switch">
|
||||||
</child>
|
<property name="title">Discoverable</property>
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
<child>
|
|
||||||
<object class="GtkBox">
|
|
||||||
<property name="margin-bottom">5</property>
|
|
||||||
<property name="margin-start">5</property>
|
|
||||||
<property name="margin-top">5</property>
|
|
||||||
<child>
|
|
||||||
<object class="GtkLabel">
|
|
||||||
<property name="halign">start</property>
|
|
||||||
<property name="hexpand">True</property>
|
|
||||||
<property name="hexpand-set">True</property>
|
|
||||||
<property name="label">Discoverable</property>
|
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
<child>
|
|
||||||
<object class="GtkSwitch" id="reset_bluetooth_discoverable_switch"/>
|
|
||||||
</child>
|
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
|
|
|
@ -59,11 +59,6 @@
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
<child>
|
|
||||||
<object class="GtkProgressBar" id="reset_volume_meter">
|
|
||||||
<property name="margin-top">5</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
</object>
|
</object>
|
||||||
</property>
|
</property>
|
||||||
<property name="css-classes">audioRow
|
<property name="css-classes">audioRow
|
||||||
|
|
|
@ -58,11 +58,6 @@
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
<child>
|
|
||||||
<object class="GtkProgressBar" id="reset_volume_meter">
|
|
||||||
<property name="margin-top">5</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
</object>
|
</object>
|
||||||
</property>
|
</property>
|
||||||
<property name="css-classes">audioRow
|
<property name="css-classes">audioRow
|
||||||
|
|
|
@ -60,11 +60,6 @@
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
<child>
|
|
||||||
<object class="GtkProgressBar" id="reset_volume_meter">
|
|
||||||
<property name="margin-top">5</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
</object>
|
</object>
|
||||||
</property>
|
</property>
|
||||||
<property name="css-classes">audioRow
|
<property name="css-classes">audioRow
|
||||||
|
|
|
@ -60,11 +60,6 @@
|
||||||
</child>
|
</child>
|
||||||
</object>
|
</object>
|
||||||
</child>
|
</child>
|
||||||
<child>
|
|
||||||
<object class="GtkProgressBar" id="reset_volume_meter">
|
|
||||||
<property name="margin-top">5</property>
|
|
||||||
</object>
|
|
||||||
</child>
|
|
||||||
</object>
|
</object>
|
||||||
</property>
|
</property>
|
||||||
<property name="css-classes">audioRow
|
<property name="css-classes">audioRow
|
||||||
|
|
|
@ -21,8 +21,7 @@
|
||||||
(20,None,None,"resetCardEntry.ui",None,None,None,None,None,None,None),
|
(20,None,None,"resetCardEntry.ui",None,None,None,None,None,None,None),
|
||||||
(21,1,None,"resetWifiOptions.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),
|
(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)
|
||||||
(25,None,None,None,None,None,None,None,None,None,None)
|
|
||||||
</ui>
|
</ui>
|
||||||
<ui_library>
|
<ui_library>
|
||||||
(21,"gtk","4.12",None),
|
(21,"gtk","4.12",None),
|
||||||
|
@ -85,7 +84,6 @@
|
||||||
(7,20,"GtkScale","reset_volume_slider",18,None,None,None,1,None),
|
(7,20,"GtkScale","reset_volume_slider",18,None,None,None,1,None),
|
||||||
(7,21,"GtkAdjustment",None,20,None,None,None,None,None),
|
(7,21,"GtkAdjustment",None,20,None,None,None,None,None),
|
||||||
(7,22,"GtkLabel","reset_volume_percentage",18,None,None,None,2,None),
|
(7,22,"GtkLabel","reset_volume_percentage",18,None,None,None,2,None),
|
||||||
(7,23,"GtkProgressBar","reset_volume_meter",17,None,None,None,1,None),
|
|
||||||
(7,24,"GtkSeparator",None,14,None,None,None,-1,None),
|
(7,24,"GtkSeparator",None,14,None,None,None,-1,None),
|
||||||
(8,1,"GtkBox","resetAudioOutput",None,None,None,None,None,None),
|
(8,1,"GtkBox","resetAudioOutput",None,None,None,None,None,None),
|
||||||
(8,53,"GtkLabel",None,1,None,None,None,None,None),
|
(8,53,"GtkLabel",None,1,None,None,None,None,None),
|
||||||
|
@ -104,7 +102,6 @@
|
||||||
(8,98,"GtkButton","reset_sink_mute",97,None,None,None,None,None),
|
(8,98,"GtkButton","reset_sink_mute",97,None,None,None,None,None),
|
||||||
(8,99,"GtkScale","reset_volume_slider",97,None,None,None,1,None),
|
(8,99,"GtkScale","reset_volume_slider",97,None,None,None,1,None),
|
||||||
(8,101,"GtkLabel","reset_volume_percentage",97,None,None,None,2,None),
|
(8,101,"GtkLabel","reset_volume_percentage",97,None,None,None,2,None),
|
||||||
(8,102,"GtkProgressBar","reset_volume_meter",93,None,None,None,1,None),
|
|
||||||
(8,103,"GtkSeparator",None,56,None,None,None,3,None),
|
(8,103,"GtkSeparator",None,56,None,None,None,3,None),
|
||||||
(8,115,"GtkAdjustment",None,99,None,None,None,-1,None),
|
(8,115,"GtkAdjustment",None,99,None,None,None,-1,None),
|
||||||
(8,116,"AdwNavigationPage",None,54,None,None,None,2,None),
|
(8,116,"AdwNavigationPage",None,54,None,None,None,2,None),
|
||||||
|
@ -132,25 +129,19 @@
|
||||||
(10,143,"GtkLabel",None,142,None,None,None,None,None),
|
(10,143,"GtkLabel",None,142,None,None,None,None,None),
|
||||||
(10,144,"GtkSwitch","reset_bluetooth_switch",142,None,None,None,1,None),
|
(10,144,"GtkSwitch","reset_bluetooth_switch",142,None,None,None,1,None),
|
||||||
(10,153,"GtkBox",None,138,None,None,None,None,None),
|
(10,153,"GtkBox",None,138,None,None,None,None,None),
|
||||||
(10,154,"GtkListBox",None,153,None,None,None,None,None),
|
|
||||||
(10,155,"resetListBoxRow","reset_bluetooth_main_tab",154,None,None,None,1,None),
|
|
||||||
(10,156,"GtkBox",None,155,None,None,None,None,None),
|
|
||||||
(10,157,"GtkLabel",None,156,None,None,None,None,None),
|
|
||||||
(10,158,"GtkImage",None,156,None,None,None,1,None),
|
|
||||||
(10,159,"GtkLabel",None,153,None,None,None,1,None),
|
|
||||||
(10,172,"AdwPreferencesGroup","reset_bluetooth_details",121,None,None,None,None,None),
|
(10,172,"AdwPreferencesGroup","reset_bluetooth_details",121,None,None,None,None,None),
|
||||||
(10,173,"AdwComboRow","reset_bluetooth_adapter",172,None,None,None,None,None),
|
(10,173,"AdwComboRow","reset_bluetooth_adapter",172,None,None,None,None,None),
|
||||||
(10,174,"AdwActionRow","reset_visibility",172,None,None,None,1,None),
|
(10,174,"AdwActionRow","reset_visibility",172,None,None,None,1,None),
|
||||||
(10,175,"GtkImage",None,174,None,None,None,None,None),
|
(10,175,"GtkImage",None,174,None,None,None,None,None),
|
||||||
(10,188,"GtkBox",None,153,None,None,None,4,None),
|
|
||||||
(10,193,"GtkLabel",None,188,None,None,None,None,None),
|
|
||||||
(10,196,"GtkSwitch","reset_bluetooth_discoverable_switch",188,None,None,None,1,None),
|
|
||||||
(10,197,"GtkBox",None,153,None,None,None,3,None),
|
|
||||||
(10,198,"GtkLabel",None,197,None,None,None,None,None),
|
|
||||||
(10,199,"GtkSwitch","reset_bluetooth_pairable_switch",197,None,None,None,1,None),
|
|
||||||
(10,204,"AdwPreferencesGroup","reset_bluetooth_available_devices",121,None,None,None,1,None),
|
(10,204,"AdwPreferencesGroup","reset_bluetooth_available_devices",121,None,None,None,1,None),
|
||||||
(10,206,"AdwPreferencesGroup","reset_bluetooth_connected_devices",121,None,None,None,2,None),
|
(10,206,"AdwPreferencesGroup","reset_bluetooth_connected_devices",121,None,None,None,2,None),
|
||||||
(10,207,"GtkButton","reset_bluetooth_refresh_button",204,None,None,None,-1,None),
|
(10,207,"GtkButton","reset_bluetooth_refresh_button",204,None,None,None,-1,None),
|
||||||
|
(10,208,"AdwPreferencesGroup",None,153,None,None,None,None,None),
|
||||||
|
(10,209,"AdwPreferencesGroup",None,153,None,None,None,1,None),
|
||||||
|
(10,210,"AdwSwitchRow","reset_bluetooth_pairable_switch",209,None,None,None,-1,None),
|
||||||
|
(10,211,"AdwSwitchRow","reset_bluetooth_discoverable_switch",209,None,None,None,-1,None),
|
||||||
|
(10,212,"AdwActionRow","reset_bluetooth_main_tab",208,None,None,None,None,None),
|
||||||
|
(10,213,"GtkImage",None,212,None,None,None,None,None),
|
||||||
(11,1,"AdwActionRow","resetBluetoothEntry",None,None,None,None,None,None),
|
(11,1,"AdwActionRow","resetBluetoothEntry",None,None,None,None,None,None),
|
||||||
(12,11,"GtkBox","resetAudioInput",None,None,None,None,None,None),
|
(12,11,"GtkBox","resetAudioInput",None,None,None,None,None,None),
|
||||||
(12,12,"GtkLabel",None,11,None,None,None,None,None),
|
(12,12,"GtkLabel",None,11,None,None,None,None,None),
|
||||||
|
@ -162,7 +153,6 @@
|
||||||
(12,24,"GtkButton","reset_source_mute",23,None,None,None,None,None),
|
(12,24,"GtkButton","reset_source_mute",23,None,None,None,None,None),
|
||||||
(12,25,"GtkScale","reset_volume_slider",23,None,None,None,1,None),
|
(12,25,"GtkScale","reset_volume_slider",23,None,None,None,1,None),
|
||||||
(12,27,"GtkLabel","reset_volume_percentage",23,None,None,None,2,None),
|
(12,27,"GtkLabel","reset_volume_percentage",23,None,None,None,2,None),
|
||||||
(12,28,"GtkProgressBar","reset_volume_meter",22,None,None,None,1,None),
|
|
||||||
(12,29,"GtkSeparator",None,15,None,None,None,3,None),
|
(12,29,"GtkSeparator",None,15,None,None,None,3,None),
|
||||||
(12,30,"GtkBox","reset_output_streams",15,None,None,None,4,None),
|
(12,30,"GtkBox","reset_output_streams",15,None,None,None,4,None),
|
||||||
(12,31,"GtkLabel",None,30,None,None,None,None,None),
|
(12,31,"GtkLabel",None,30,None,None,None,None,None),
|
||||||
|
@ -196,7 +186,6 @@
|
||||||
(13,38,"GtkScale","reset_volume_slider",36,None,None,None,1,None),
|
(13,38,"GtkScale","reset_volume_slider",36,None,None,None,1,None),
|
||||||
(13,39,"GtkAdjustment",None,38,None,None,None,None,None),
|
(13,39,"GtkAdjustment",None,38,None,None,None,None,None),
|
||||||
(13,40,"GtkLabel","reset_volume_percentage",36,None,None,None,2,None),
|
(13,40,"GtkLabel","reset_volume_percentage",36,None,None,None,2,None),
|
||||||
(13,41,"GtkProgressBar","reset_volume_meter",27,None,None,None,1,None),
|
|
||||||
(13,42,"GtkSeparator",None,22,None,None,None,-1,None),
|
(13,42,"GtkSeparator",None,22,None,None,None,-1,None),
|
||||||
(14,3,"GtkBox","resetSettingBox",None,None,None,None,-1,None),
|
(14,3,"GtkBox","resetSettingBox",None,None,None,None,-1,None),
|
||||||
(15,1,"GtkListBoxRow","resetListBoxRow",None,None,None,None,None,None),
|
(15,1,"GtkListBoxRow","resetListBoxRow",None,None,None,None,None,None),
|
||||||
|
@ -217,7 +206,6 @@
|
||||||
(18,20,"GtkScale","reset_volume_slider",18,None,None,None,1,None),
|
(18,20,"GtkScale","reset_volume_slider",18,None,None,None,1,None),
|
||||||
(18,21,"GtkAdjustment",None,20,None,None,None,None,None),
|
(18,21,"GtkAdjustment",None,20,None,None,None,None,None),
|
||||||
(18,22,"GtkLabel","reset_volume_percentage",18,None,None,None,2,None),
|
(18,22,"GtkLabel","reset_volume_percentage",18,None,None,None,2,None),
|
||||||
(18,23,"GtkProgressBar","reset_volume_meter",17,None,None,None,1,None),
|
|
||||||
(18,24,"GtkSeparator",None,13,None,None,None,2,None),
|
(18,24,"GtkSeparator",None,13,None,None,None,2,None),
|
||||||
(19,13,"AdwPreferencesGroup","resetSourceEntry",None,None,None,None,None,None),
|
(19,13,"AdwPreferencesGroup","resetSourceEntry",None,None,None,None,None,None),
|
||||||
(19,14,"AdwActionRow","reset_source_name",13,None,None,None,None,None),
|
(19,14,"AdwActionRow","reset_source_name",13,None,None,None,None,None),
|
||||||
|
@ -229,7 +217,6 @@
|
||||||
(19,20,"GtkScale","reset_volume_slider",18,None,None,None,1,None),
|
(19,20,"GtkScale","reset_volume_slider",18,None,None,None,1,None),
|
||||||
(19,21,"GtkAdjustment",None,20,None,None,None,None,None),
|
(19,21,"GtkAdjustment",None,20,None,None,None,None,None),
|
||||||
(19,22,"GtkLabel","reset_volume_percentage",18,None,None,None,2,None),
|
(19,22,"GtkLabel","reset_volume_percentage",18,None,None,None,2,None),
|
||||||
(19,23,"GtkProgressBar","reset_volume_meter",17,None,None,None,1,None),
|
|
||||||
(19,24,"GtkSeparator",None,13,None,None,None,2,None),
|
(19,24,"GtkSeparator",None,13,None,None,None,2,None),
|
||||||
(20,2,"AdwComboRow","reset_card_entry",None,None,None,None,None,None),
|
(20,2,"AdwComboRow","reset_card_entry",None,None,None,None,None,None),
|
||||||
(21,1,"AdwNavigationPage","resetWifiOptions",None,None,None,None,-1,None),
|
(21,1,"AdwNavigationPage","resetWifiOptions",None,None,None,None,-1,None),
|
||||||
|
@ -297,11 +284,7 @@
|
||||||
(23,8,"AdwEntryRow","reset_route_metric",6,None,None,None,1,None),
|
(23,8,"AdwEntryRow","reset_route_metric",6,None,None,None,1,None),
|
||||||
(23,9,"GtkBox",None,2,None,None,None,None,None),
|
(23,9,"GtkBox",None,2,None,None,None,None,None),
|
||||||
(23,10,"AdwEntryRow","reset_route_address",9,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)
|
||||||
(25,1,"GtkBox",None,None,None,None,None,None,None),
|
|
||||||
(25,2,"GtkLabel","reset_saved_wifi_label",1,None,None,None,None,None),
|
|
||||||
(25,3,"GtkButton","reset_edit_saved_wifi_button",1,None,None,None,1,None),
|
|
||||||
(25,4,"GtkButton","reset_delete_saved_wifi_button",1,None,None,None,2,None)
|
|
||||||
</object>
|
</object>
|
||||||
<object_property>
|
<object_property>
|
||||||
(3,1,"GtkWidget","height-request","200",None,None,None,None,None,None,None,None,None),
|
(3,1,"GtkWidget","height-request","200",None,None,None,None,None,None,None,None,None),
|
||||||
|
@ -422,7 +405,6 @@
|
||||||
(7,22,"GtkLabel","label","100%",None,None,None,None,None,None,None,None,None),
|
(7,22,"GtkLabel","label","100%",None,None,None,None,None,None,None,None,None),
|
||||||
(7,22,"GtkLabel","lines","1",None,None,None,None,None,None,None,None,None),
|
(7,22,"GtkLabel","lines","1",None,None,None,None,None,None,None,None,None),
|
||||||
(7,22,"GtkWidget","width-request","40",None,None,None,None,None,None,None,None,None),
|
(7,22,"GtkWidget","width-request","40",None,None,None,None,None,None,None,None,None),
|
||||||
(7,23,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(7,24,"GtkWidget","margin-top","10",None,None,None,None,None,None,None,None,None),
|
(7,24,"GtkWidget","margin-top","10",None,None,None,None,None,None,None,None,None),
|
||||||
(8,1,"GtkOrientable","orientation","vertical",None,None,None,None,None,None,None,None,None),
|
(8,1,"GtkOrientable","orientation","vertical",None,None,None,None,None,None,None,None,None),
|
||||||
(8,1,"GtkWidget","valign","start",None,None,None,None,None,None,None,None,None),
|
(8,1,"GtkWidget","valign","start",None,None,None,None,None,None,None,None,None),
|
||||||
|
@ -463,7 +445,6 @@
|
||||||
(8,101,"GtkLabel","label","100%",None,None,None,None,None,None,None,None,None),
|
(8,101,"GtkLabel","label","100%",None,None,None,None,None,None,None,None,None),
|
||||||
(8,101,"GtkLabel","lines","1",None,None,None,None,None,None,None,None,None),
|
(8,101,"GtkLabel","lines","1",None,None,None,None,None,None,None,None,None),
|
||||||
(8,101,"GtkWidget","width-request","40",None,None,None,None,None,None,None,None,None),
|
(8,101,"GtkWidget","width-request","40",None,None,None,None,None,None,None,None,None),
|
||||||
(8,102,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(8,115,"GtkAdjustment","page-increment","2005.4016",None,None,None,None,None,None,None,None,None),
|
(8,115,"GtkAdjustment","page-increment","2005.4016",None,None,None,None,None,None,None,None,None),
|
||||||
(8,115,"GtkAdjustment","step-increment","2005.4016",None,None,None,None,None,None,None,None,None),
|
(8,115,"GtkAdjustment","step-increment","2005.4016",None,None,None,None,None,None,None,None,None),
|
||||||
(8,115,"GtkAdjustment","upper","100270.08",None,None,None,None,None,None,None,None,None),
|
(8,115,"GtkAdjustment","upper","100270.08",None,None,None,None,None,None,None,None,None),
|
||||||
|
@ -504,43 +485,12 @@
|
||||||
(10,144,"GtkWidget","margin-end","5",None,None,None,None,None,None,None,None,None),
|
(10,144,"GtkWidget","margin-end","5",None,None,None,None,None,None,None,None,None),
|
||||||
(10,144,"GtkWidget","valign","center",None,None,None,None,None,None,None,None,None),
|
(10,144,"GtkWidget","valign","center",None,None,None,None,None,None,None,None,None),
|
||||||
(10,153,"GtkOrientable","orientation","vertical",None,None,None,None,None,None,None,None,None),
|
(10,153,"GtkOrientable","orientation","vertical",None,None,None,None,None,None,None,None,None),
|
||||||
(10,154,"GtkListBox","show-separators","True",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,154,"GtkWidget","css-classes","boxed-list",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,154,"GtkWidget","margin-bottom","10",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,154,"GtkWidget","margin-end","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,154,"GtkWidget","margin-start","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,154,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,154,"GtkWidget","valign","start",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,156,"GtkWidget","height-request","40",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,157,"GtkLabel","label","Main",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,157,"GtkWidget","margin-start","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,158,"GtkImage","icon-name","go-previous-symbolic",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,158,"GtkWidget","halign","end",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,158,"GtkWidget","hexpand","True",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,158,"GtkWidget","margin-end","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,159,"GtkLabel","label","Visibility Settings",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,159,"GtkWidget","halign","start",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,159,"GtkWidget","margin-start","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,173,"AdwPreferencesRow","title","Bluetooth Adapter",None,None,None,None,None,None,None,None,None),
|
(10,173,"AdwPreferencesRow","title","Bluetooth Adapter",None,None,None,None,None,None,None,None,None),
|
||||||
(10,174,"AdwPreferencesRow","title","Visibility Settings",None,None,None,None,None,None,None,None,None),
|
(10,174,"AdwPreferencesRow","title","Visibility Settings",None,None,None,None,None,None,None,None,None),
|
||||||
(10,175,"GtkImage","icon-name","go-previous-symbolic-rtl",None,None,None,None,None,None,None,None,None),
|
(10,175,"GtkImage","icon-name","go-previous-symbolic-rtl",None,None,None,None,None,None,None,None,None),
|
||||||
(10,175,"GtkWidget","halign","end",None,None,None,None,None,None,None,None,None),
|
(10,175,"GtkWidget","halign","end",None,None,None,None,None,None,None,None,None),
|
||||||
(10,175,"GtkWidget","hexpand","True",None,None,None,None,None,None,None,None,None),
|
(10,175,"GtkWidget","hexpand","True",None,None,None,None,None,None,None,None,None),
|
||||||
(10,175,"GtkWidget","margin-end","5",None,None,None,None,None,None,None,None,None),
|
(10,175,"GtkWidget","margin-end","5",None,None,None,None,None,None,None,None,None),
|
||||||
(10,188,"GtkWidget","margin-bottom","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,188,"GtkWidget","margin-start","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,188,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,193,"GtkLabel","label","Discoverable",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,193,"GtkWidget","halign","start",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,193,"GtkWidget","hexpand","True",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,193,"GtkWidget","hexpand-set","True",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,197,"GtkWidget","margin-bottom","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,197,"GtkWidget","margin-start","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,197,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,198,"GtkLabel","label","Pairable",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,198,"GtkWidget","halign","start",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,198,"GtkWidget","hexpand","True",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,198,"GtkWidget","hexpand-set","True",None,None,None,None,None,None,None,None,None),
|
|
||||||
(10,204,"AdwPreferencesGroup","header-suffix",None,None,None,None,None,207,None,None,None,None),
|
(10,204,"AdwPreferencesGroup","header-suffix",None,None,None,None,None,207,None,None,None,None),
|
||||||
(10,204,"AdwPreferencesGroup","title","Available Devices",None,None,None,None,None,None,None,None,None),
|
(10,204,"AdwPreferencesGroup","title","Available Devices",None,None,None,None,None,None,None,None,None),
|
||||||
(10,204,"GtkWidget","margin-end","5",None,None,None,None,None,None,None,None,None),
|
(10,204,"GtkWidget","margin-end","5",None,None,None,None,None,None,None,None,None),
|
||||||
|
@ -551,6 +501,14 @@
|
||||||
(10,206,"GtkWidget","margin-start","5",None,None,None,None,None,None,None,None,None),
|
(10,206,"GtkWidget","margin-start","5",None,None,None,None,None,None,None,None,None),
|
||||||
(10,206,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
(10,206,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
||||||
(10,207,"GtkButton","icon-name","view-refresh-symbolic",None,None,None,None,None,None,None,None,None),
|
(10,207,"GtkButton","icon-name","view-refresh-symbolic",None,None,None,None,None,None,None,None,None),
|
||||||
|
(10,209,"AdwPreferencesGroup","title","Visibility Settings",None,None,None,None,None,None,None,None,None),
|
||||||
|
(10,210,"AdwPreferencesRow","title","Pairable",None,None,None,None,None,None,None,None,None),
|
||||||
|
(10,211,"AdwPreferencesRow","title","Discoverable",None,None,None,None,None,None,None,None,None),
|
||||||
|
(10,212,"AdwPreferencesRow","title","Available Networks",None,None,None,None,None,None,None,None,None),
|
||||||
|
(10,213,"GtkImage","icon-name","go-previous-symbolic",None,None,None,None,None,None,None,None,None),
|
||||||
|
(10,213,"GtkWidget","halign","end",None,None,None,None,None,None,None,None,None),
|
||||||
|
(10,213,"GtkWidget","hexpand","True",None,None,None,None,None,None,None,None,None),
|
||||||
|
(10,213,"GtkWidget","margin-end","5",None,None,None,None,None,None,None,None,None),
|
||||||
(11,1,"GtkWidget","margin-start","5",None,None,None,None,None,None,None,None,None),
|
(11,1,"GtkWidget","margin-start","5",None,None,None,None,None,None,None,None,None),
|
||||||
(11,32,"GtkListBoxRow","child",None,None,None,None,None,39,None,None,None,None),
|
(11,32,"GtkListBoxRow","child",None,None,None,None,None,39,None,None,None,None),
|
||||||
(11,32,"GtkWidget","margin-start","5",None,None,None,None,None,None,None,None,None),
|
(11,32,"GtkWidget","margin-start","5",None,None,None,None,None,None,None,None,None),
|
||||||
|
@ -620,7 +578,6 @@
|
||||||
(12,27,"GtkLabel","label","100%",None,None,None,None,None,None,None,None,None),
|
(12,27,"GtkLabel","label","100%",None,None,None,None,None,None,None,None,None),
|
||||||
(12,27,"GtkLabel","lines","1",None,None,None,None,None,None,None,None,None),
|
(12,27,"GtkLabel","lines","1",None,None,None,None,None,None,None,None,None),
|
||||||
(12,27,"GtkWidget","width-request","40",None,None,None,None,None,None,None,None,None),
|
(12,27,"GtkWidget","width-request","40",None,None,None,None,None,None,None,None,None),
|
||||||
(12,28,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(12,30,"GtkOrientable","orientation","vertical",None,None,None,None,None,None,None,None,None),
|
(12,30,"GtkOrientable","orientation","vertical",None,None,None,None,None,None,None,None,None),
|
||||||
(12,30,"GtkWidget","margin-top","10",None,None,None,None,None,None,None,None,None),
|
(12,30,"GtkWidget","margin-top","10",None,None,None,None,None,None,None,None,None),
|
||||||
(12,31,"GtkLabel","label","Input Streams",None,None,None,None,None,None,None,None,None),
|
(12,31,"GtkLabel","label","Input Streams",None,None,None,None,None,None,None,None,None),
|
||||||
|
@ -678,7 +635,6 @@
|
||||||
(13,40,"GtkLabel","label","100%",None,None,None,None,None,None,None,None,None),
|
(13,40,"GtkLabel","label","100%",None,None,None,None,None,None,None,None,None),
|
||||||
(13,40,"GtkLabel","lines","1",None,None,None,None,None,None,None,None,None),
|
(13,40,"GtkLabel","lines","1",None,None,None,None,None,None,None,None,None),
|
||||||
(13,40,"GtkWidget","width-request","40",None,None,None,None,None,None,None,None,None),
|
(13,40,"GtkWidget","width-request","40",None,None,None,None,None,None,None,None,None),
|
||||||
(13,41,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(13,42,"GtkWidget","margin-top","10",None,None,None,None,None,None,None,None,None),
|
(13,42,"GtkWidget","margin-top","10",None,None,None,None,None,None,None,None,None),
|
||||||
(14,3,"GtkOrientable","orientation","vertical",None,None,None,None,None,None,None,None,None),
|
(14,3,"GtkOrientable","orientation","vertical",None,None,None,None,None,None,None,None,None),
|
||||||
(14,3,"GtkWidget","css-classes","settings-box",None,None,None,None,None,None,None,None,None),
|
(14,3,"GtkWidget","css-classes","settings-box",None,None,None,None,None,None,None,None,None),
|
||||||
|
@ -725,7 +681,6 @@
|
||||||
(18,22,"GtkLabel","label","100%",None,None,None,None,None,None,None,None,None),
|
(18,22,"GtkLabel","label","100%",None,None,None,None,None,None,None,None,None),
|
||||||
(18,22,"GtkLabel","lines","1",None,None,None,None,None,None,None,None,None),
|
(18,22,"GtkLabel","lines","1",None,None,None,None,None,None,None,None,None),
|
||||||
(18,22,"GtkWidget","width-request","40",None,None,None,None,None,None,None,None,None),
|
(18,22,"GtkWidget","width-request","40",None,None,None,None,None,None,None,None,None),
|
||||||
(18,23,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(18,24,"GtkWidget","margin-bottom","5",None,None,None,None,None,None,None,None,None),
|
(18,24,"GtkWidget","margin-bottom","5",None,None,None,None,None,None,None,None,None),
|
||||||
(18,24,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
(18,24,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
||||||
(19,14,"AdwActionRow","title-lines","3",None,None,None,None,None,None,None,None,None),
|
(19,14,"AdwActionRow","title-lines","3",None,None,None,None,None,None,None,None,None),
|
||||||
|
@ -752,7 +707,6 @@
|
||||||
(19,22,"GtkLabel","label","100%",None,None,None,None,None,None,None,None,None),
|
(19,22,"GtkLabel","label","100%",None,None,None,None,None,None,None,None,None),
|
||||||
(19,22,"GtkLabel","lines","1",None,None,None,None,None,None,None,None,None),
|
(19,22,"GtkLabel","lines","1",None,None,None,None,None,None,None,None,None),
|
||||||
(19,22,"GtkWidget","width-request","40",None,None,None,None,None,None,None,None,None),
|
(19,22,"GtkWidget","width-request","40",None,None,None,None,None,None,None,None,None),
|
||||||
(19,23,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
|
||||||
(19,24,"GtkWidget","margin-bottom","5",None,None,None,None,None,None,None,None,None),
|
(19,24,"GtkWidget","margin-bottom","5",None,None,None,None,None,None,None,None,None),
|
||||||
(19,24,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
(19,24,"GtkWidget","margin-top","5",None,None,None,None,None,None,None,None,None),
|
||||||
(20,2,"AdwComboRow","use-subtitle","True",None,None,None,None,None,None,None,None,None),
|
(20,2,"AdwComboRow","use-subtitle","True",None,None,None,None,None,None,None,None,None),
|
||||||
|
@ -850,22 +804,7 @@
|
||||||
(23,10,"AdwPreferencesRow","title","Address",None,None,None,None,None,None,None,None,None),
|
(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,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,"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)
|
||||||
(25,2,"GtkLabel","ellipsize","end",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,2,"GtkLabel","label","LoremIpsumInternet",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,2,"GtkLabel","single-line-mode","True",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,2,"GtkLabel","xalign","0.0",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,2,"GtkWidget","hexpand","True",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,2,"GtkWidget","margin-end","10",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,2,"GtkWidget","width-request","200",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,3,"GtkButton","has-frame","False",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,3,"GtkButton","icon-name","document-edit-symbolic",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,3,"GtkWidget","halign","end",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,3,"GtkWidget","hexpand","True",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,4,"GtkButton","has-frame","False",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,4,"GtkButton","icon-name","user-trash-symbolic",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,4,"GtkWidget","halign","start",None,None,None,None,None,None,None,None,None),
|
|
||||||
(25,4,"GtkWidget","valign","center",None,None,None,None,None,None,None,None,None)
|
|
||||||
</object_property>
|
</object_property>
|
||||||
<object_data>
|
<object_data>
|
||||||
(3,42,"GtkWidget",1,1,None,None,None,None,None,None),
|
(3,42,"GtkWidget",1,1,None,None,None,None,None,None),
|
||||||
|
|
Loading…
Reference in a new issue