diff options
author | Miquel Lionel <lionel@les-miquelots.net> | 2023-10-13 00:05:26 +0200 |
---|---|---|
committer | Miquel Lionel <lionel@les-miquelots.net> | 2023-10-18 01:37:45 +0200 |
commit | 1c4d47f35274d560ee9eb855d7f1c45dd4dd140c (patch) | |
tree | 75a62a5828459d6f1481bee0f5701901edf6a655 /main/src/ui/settings_dialog.vala | |
parent | 86b101900c28a09ebc6bcbf212f9969f70ce51b7 (diff) | |
download | dino-1c4d47f35274d560ee9eb855d7f1c45dd4dd140c.tar.gz dino-1c4d47f35274d560ee9eb855d7f1c45dd4dd140c.zip |
Add keyboard shortcut and setting to increase text size (fixes #978)add-kbd-shortcut-to-zoom-text
* Can zoom in / out or reset zoom levels via shortcuts
* Can change zoom value via global preferences window
Diffstat (limited to 'main/src/ui/settings_dialog.vala')
-rw-r--r-- | main/src/ui/settings_dialog.vala | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/main/src/ui/settings_dialog.vala b/main/src/ui/settings_dialog.vala index 3635879c..c4890a86 100644 --- a/main/src/ui/settings_dialog.vala +++ b/main/src/ui/settings_dialog.vala @@ -5,13 +5,14 @@ namespace Dino.Ui { [GtkTemplate (ui = "/im/dino/Dino/settings_dialog.ui")] class SettingsDialog : Adw.PreferencesWindow { + [GtkChild] private unowned SpinButton zoom_spinbutton; [GtkChild] private unowned Switch typing_switch; [GtkChild] private unowned Switch marker_switch; [GtkChild] private unowned Switch notification_switch; [GtkChild] private unowned Switch emoji_switch; Dino.Entities.Settings settings = Dino.Application.get_default().settings; - + public Adjustment zoom_spinbutton_config; public SettingsDialog() { Object(); @@ -19,11 +20,14 @@ class SettingsDialog : Adw.PreferencesWindow { marker_switch.active = settings.send_marker; notification_switch.active = settings.notifications; emoji_switch.active = settings.convert_utf8_smileys; + zoom_spinbutton_config = new Adjustment((double) settings.zoom_level, 0.0, 300.0, 1.0, 5.0, 0.0); + zoom_spinbutton.set_adjustment(zoom_spinbutton_config); typing_switch.notify["active"].connect(() => { settings.send_typing = typing_switch.active; } ); marker_switch.notify["active"].connect(() => { settings.send_marker = marker_switch.active; } ); notification_switch.notify["active"].connect(() => { settings.notifications = notification_switch.active; } ); emoji_switch.notify["active"].connect(() => { settings.convert_utf8_smileys = emoji_switch.active; }); + zoom_spinbutton.value_changed.connect(() => { settings.zoom_level = zoom_spinbutton.get_value_as_int(); }); } } |