Merge pull request #15 from ba32107/improvement/settings_panel

Improve settings panel experience
This commit is contained in:
Fmstrat
2020-01-06 10:29:22 -05:00
committed by GitHub

View File

@@ -78,21 +78,6 @@ function buildPrefsWidget() {
layout.attach(colsLabel, 0, row, 1, 1); layout.attach(colsLabel, 0, row, 1, 1);
layout.attach(colsInput, 1, row++, 1, 1); layout.attach(colsInput, 1, row++, 1, 1);
// Maximize setting
let doubleWidthLabel = new Gtk.Label({
label: _("Use double width previews on sides in 4 column mode"),
visible: true,
hexpand: true,
halign: Gtk.Align.START
});
let doubleWidthInput = new Gtk.Switch({
active: this.settings.get_boolean ('double-width'),
halign: Gtk.Align.END,
visible: true
});
layout.attach(doubleWidthLabel, 0, row, 1, 1);
layout.attach(doubleWidthInput, 1, row++, 1, 1);
// Maximize setting // Maximize setting
let maximizeLabel = new Gtk.Label({ let maximizeLabel = new Gtk.Label({
label: _("Use true maximizing of windows"), label: _("Use true maximizing of windows"),
@@ -108,21 +93,37 @@ function buildPrefsWidget() {
layout.attach(maximizeLabel, 0, row, 1, 1); layout.attach(maximizeLabel, 0, row, 1, 1);
layout.attach(maximizeInput, 1, row++, 1, 1); layout.attach(maximizeInput, 1, row++, 1, 1);
// Preview setting // Preview settings
let previewEnabled = this.settings.get_boolean ('preview');
let previewLabel = new Gtk.Label({ let previewLabel = new Gtk.Label({
label: _("Turn on mouse dragging support"), label: _("Enable preview while dragging windows"),
visible: true, visible: true,
hexpand: true, hexpand: true,
halign: Gtk.Align.START halign: Gtk.Align.START
}); });
let previewInput = new Gtk.Switch({ let previewInput = new Gtk.Switch({
active: this.settings.get_boolean ('preview'), active: previewEnabled,
halign: Gtk.Align.END, halign: Gtk.Align.END,
visible: true visible: true
}); });
layout.attach(previewLabel, 0, row, 1, 1); layout.attach(previewLabel, 0, row, 1, 1);
layout.attach(previewInput, 1, row++, 1, 1); layout.attach(previewInput, 1, row++, 1, 1);
// Double width previews
let doubleWidthLabel = new Gtk.Label({
label: _(" Use double width previews on sides in 4 column mode"),
visible: true,
hexpand: true,
halign: Gtk.Align.START
});
let doubleWidthInput = new Gtk.Switch({
active: this.settings.get_boolean ('double-width'),
halign: Gtk.Align.END,
visible: true
});
layout.attach(doubleWidthLabel, 0, row, 1, 1);
layout.attach(doubleWidthInput, 1, row++, 1, 1);
// Debug setting // Debug setting
let debugLabel = new Gtk.Label({ let debugLabel = new Gtk.Label({
label: _("Turn on debugging"), label: _("Turn on debugging"),
@@ -144,6 +145,16 @@ function buildPrefsWidget() {
this.settings.bind('preview', previewInput, 'active', Gio.SettingsBindFlags.DEFAULT); this.settings.bind('preview', previewInput, 'active', Gio.SettingsBindFlags.DEFAULT);
this.settings.bind('debug', debugInput, 'active', Gio.SettingsBindFlags.DEFAULT); this.settings.bind('debug', debugInput, 'active', Gio.SettingsBindFlags.DEFAULT);
let setDoubleWidthWidgetsEnabled = function(enabled) {
doubleWidthLabel.set_sensitive(enabled);
doubleWidthInput.set_sensitive(enabled);
};
setDoubleWidthWidgetsEnabled(previewEnabled);
previewInput.connect('state-set', function(widget, state) {
setDoubleWidthWidgetsEnabled(state);
});
// Return our widget which will be added to the window // Return our widget which will be added to the window
return layout; return layout;
} }