aboutsummaryrefslogtreecommitdiff
path: root/main/src
diff options
context:
space:
mode:
authorChristopher Davis <christopherdavis@gnome.org>2023-02-08 19:17:56 -0500
committerfiaxh <fiaxh@users.noreply.github.com>2023-02-09 11:36:33 +0100
commitb19986a68513f0605dd003dad1e0759380f23835 (patch)
tree697156bfd09ba4c4ce999ad2db974a96fccb21e3 /main/src
parent5568bbc6bf505c4f8ea93fc460dbeff6f4d36e15 (diff)
downloaddino-b19986a68513f0605dd003dad1e0759380f23835.tar.gz
dino-b19986a68513f0605dd003dad1e0759380f23835.zip
settings_dialog: Use AdwPreferencesWindow and AdwActionRow
AdwPreferencesWindow contains a nice API for preferences windows, and AdwActionRow is the widget to use for rows of preferences.
Diffstat (limited to 'main/src')
-rw-r--r--main/src/ui/settings_dialog.vala38
1 files changed, 19 insertions, 19 deletions
diff --git a/main/src/ui/settings_dialog.vala b/main/src/ui/settings_dialog.vala
index e994e00c..5dc338bc 100644
--- a/main/src/ui/settings_dialog.vala
+++ b/main/src/ui/settings_dialog.vala
@@ -3,30 +3,30 @@ using Gtk;
namespace Dino.Ui {
[GtkTemplate (ui = "/im/dino/Dino/settings_dialog.ui")]
-class SettingsDialog : Dialog {
+class SettingsDialog : Adw.PreferencesWindow {
- [GtkChild] private unowned CheckButton typing_checkbutton;
- [GtkChild] private unowned CheckButton marker_checkbutton;
- [GtkChild] private unowned CheckButton notification_checkbutton;
- [GtkChild] private unowned CheckButton emoji_checkbutton;
- [GtkChild] private unowned CheckButton check_spelling_checkbutton;
+ [GtkChild] private unowned Switch typing_switch;
+ [GtkChild] private unowned Switch marker_switch;
+ [GtkChild] private unowned Switch notification_switch;
+ [GtkChild] private unowned Switch emoji_switch;
+ [GtkChild] private unowned Switch check_spelling_switch;
Dino.Entities.Settings settings = Dino.Application.get_default().settings;
public SettingsDialog() {
- Object(use_header_bar : Util.use_csd() ? 1 : 0);
-
- typing_checkbutton.active = settings.send_typing;
- marker_checkbutton.active = settings.send_marker;
- notification_checkbutton.active = settings.notifications;
- emoji_checkbutton.active = settings.convert_utf8_smileys;
- check_spelling_checkbutton.active = settings.check_spelling;
-
- typing_checkbutton.toggled.connect(() => { settings.send_typing = typing_checkbutton.active; } );
- marker_checkbutton.toggled.connect(() => { settings.send_marker = marker_checkbutton.active; } );
- notification_checkbutton.toggled.connect(() => { settings.notifications = notification_checkbutton.active; } );
- emoji_checkbutton.toggled.connect(() => { settings.convert_utf8_smileys = emoji_checkbutton.active; });
- check_spelling_checkbutton.toggled.connect(() => { settings.check_spelling = check_spelling_checkbutton.active; });
+ Object();
+
+ typing_switch.active = settings.send_typing;
+ marker_switch.active = settings.send_marker;
+ notification_switch.active = settings.notifications;
+ emoji_switch.active = settings.convert_utf8_smileys;
+ check_spelling_switch.active = settings.check_spelling;
+
+ typing_switch.activate.connect(() => { settings.send_typing = typing_switch.active; } );
+ marker_switch.activate.connect(() => { settings.send_marker = marker_switch.active; } );
+ notification_switch.activate.connect(() => { settings.notifications = notification_switch.active; } );
+ emoji_switch.activate.connect(() => { settings.convert_utf8_smileys = emoji_switch.active; });
+ check_spelling_switch.activate.connect(() => { settings.check_spelling = check_spelling_switch.active; });
}
}