Organize UI into pages, adjust license view
This commit is contained in:
parent
7607de7d1a
commit
abdee1e77e
|
|
@ -222,7 +222,7 @@ export default class BreezyDesktopExtension extends Extension {
|
|||
this._start_binding = this.settings.bind('toggle-display-distance-start', this._xr_effect, 'toggle-display-distance-start', Gio.SettingsBindFlags.DEFAULT)
|
||||
this._end_binding = this.settings.bind('toggle-display-distance-end', this._xr_effect, 'toggle-display-distance-end', Gio.SettingsBindFlags.DEFAULT)
|
||||
this._curved_display_binding = this.settings.bind('curved-display', this._xr_effect, 'curved-display', Gio.SettingsBindFlags.DEFAULT)
|
||||
this._display_size_binding = this.settings.bind('widescreen-display-size', this._xr_effect, 'widescreen-display-size', Gio.SettingsBindFlags.DEFAULT);
|
||||
this._display_size_binding = this.settings.bind('display-size', this._xr_effect, 'display-size', Gio.SettingsBindFlags.DEFAULT);
|
||||
|
||||
this._overlay.add_effect_with_name('xr-desktop', this._xr_effect);
|
||||
Meta.disable_unredirect_for_display(global.display);
|
||||
|
|
|
|||
|
|
@ -218,6 +218,15 @@ export const XREffect = GObject.registerClass({
|
|||
2.5,
|
||||
1.05
|
||||
),
|
||||
'display-size': GObject.ParamSpec.double(
|
||||
'display-size',
|
||||
'Display size',
|
||||
'Size of the display',
|
||||
GObject.ParamFlags.READWRITE,
|
||||
0.2,
|
||||
2.5,
|
||||
1.0
|
||||
),
|
||||
'toggle-display-distance-start': GObject.ParamSpec.double(
|
||||
'toggle-display-distance-start',
|
||||
'Display distance start',
|
||||
|
|
@ -249,15 +258,6 @@ export const XREffect = GObject.registerClass({
|
|||
'The state of widescreen mode from the perspective of the driver',
|
||||
GObject.ParamFlags.READWRITE,
|
||||
false
|
||||
),
|
||||
'widescreen-display-size': GObject.ParamSpec.double(
|
||||
'widescreen-display-size',
|
||||
'Widescreen display size',
|
||||
'Size of the display when in widescreen/SBS mode',
|
||||
GObject.ParamFlags.READWRITE,
|
||||
0.2,
|
||||
2.5,
|
||||
1.0
|
||||
)
|
||||
}
|
||||
}, class XREffect extends Shell.GLSLEffect {
|
||||
|
|
@ -344,7 +344,7 @@ export const XREffect = GObject.registerClass({
|
|||
setSingleFloat(this, 'display_north_offset', this.display_distance);
|
||||
setSingleFloat(this, 'look_ahead_ms', lookAheadMS(this._dataView));
|
||||
setUniformMatrix(this, 'imu_quat_data', 4, this._dataView, IMU_QUAT_DATA);
|
||||
setSingleFloat(this, 'display_size', this.widescreen_mode_state ? this.widescreen_display_size : 1.0);
|
||||
setSingleFloat(this, 'display_size', this.display_size);
|
||||
success = true;
|
||||
}
|
||||
} else if (this._dataView.byteLength !== 0) {
|
||||
|
|
|
|||
|
|
@ -73,13 +73,13 @@
|
|||
Enable widescreen/SBS mode
|
||||
</description>
|
||||
</key>
|
||||
<key name="widescreen-display-size" type="d">
|
||||
<key name="display-size" type="d">
|
||||
<default>
|
||||
1.0
|
||||
</default>
|
||||
<summary>Widescreen display size</summary>
|
||||
<summary>Display size</summary>
|
||||
<description>
|
||||
The size of the display when in widescreen/SBS mode
|
||||
The size of the display
|
||||
</description>
|
||||
</key>
|
||||
<key name="curved-display" type="b">
|
||||
|
|
|
|||
|
|
@ -12,18 +12,14 @@ class ConnectedDevice(Gtk.Box):
|
|||
|
||||
device_label = Gtk.Template.Child()
|
||||
effect_enable_switch = Gtk.Template.Child()
|
||||
display_distance_row = Gtk.Template.Child()
|
||||
display_distance_scale = Gtk.Template.Child()
|
||||
display_distance_adjustment = Gtk.Template.Child()
|
||||
display_size_scale = Gtk.Template.Child()
|
||||
display_size_adjustment = Gtk.Template.Child()
|
||||
follow_threshold_scale = Gtk.Template.Child()
|
||||
follow_threshold_adjustment = Gtk.Template.Child()
|
||||
follow_mode_switch = Gtk.Template.Child()
|
||||
widescreen_mode_switch = Gtk.Template.Child()
|
||||
widescreen_display_distance_row = Gtk.Template.Child()
|
||||
widescreen_display_distance_scale = Gtk.Template.Child()
|
||||
widescreen_display_distance_adjustment = Gtk.Template.Child()
|
||||
widescreen_display_size_scale = Gtk.Template.Child()
|
||||
widescreen_display_size_adjustment = Gtk.Template.Child()
|
||||
curved_display_switch = Gtk.Template.Child()
|
||||
set_toggle_display_distance_start_button = Gtk.Template.Child()
|
||||
set_toggle_display_distance_end_button = Gtk.Template.Child()
|
||||
|
|
@ -39,11 +35,10 @@ class ConnectedDevice(Gtk.Box):
|
|||
self.init_template()
|
||||
self.all_enabled_state_inputs = [
|
||||
self.display_distance_scale,
|
||||
self.display_size_scale,
|
||||
self.follow_mode_switch,
|
||||
self.follow_threshold_scale,
|
||||
self.widescreen_mode_switch,
|
||||
self.widescreen_display_distance_scale,
|
||||
self.widescreen_display_size_scale,
|
||||
self.curved_display_switch,
|
||||
self.set_toggle_display_distance_start_button,
|
||||
self.set_toggle_display_distance_end_button,
|
||||
|
|
@ -57,10 +52,9 @@ class ConnectedDevice(Gtk.Box):
|
|||
self.extensions_manager = ExtensionsManager.get_instance()
|
||||
|
||||
self.settings.bind('display-distance', self.display_distance_adjustment, 'value', Gio.SettingsBindFlags.DEFAULT)
|
||||
self.settings.bind('display-distance', self.widescreen_display_distance_adjustment, 'value', Gio.SettingsBindFlags.DEFAULT)
|
||||
self.settings.bind('display-size', self.display_size_adjustment, 'value', Gio.SettingsBindFlags.DEFAULT)
|
||||
self.settings.bind('follow-threshold', self.follow_threshold_adjustment, 'value', Gio.SettingsBindFlags.DEFAULT)
|
||||
self.settings.bind('widescreen-mode', self.widescreen_mode_switch, 'active', Gio.SettingsBindFlags.DEFAULT)
|
||||
self.settings.bind('widescreen-display-size', self.widescreen_display_size_adjustment, 'value', Gio.SettingsBindFlags.DEFAULT)
|
||||
self.settings.bind('curved-display', self.curved_display_switch, 'active', Gio.SettingsBindFlags.DEFAULT)
|
||||
|
||||
bind_shortcut_settings(self.get_parent(), [
|
||||
|
|
@ -81,8 +75,6 @@ class ConnectedDevice(Gtk.Box):
|
|||
self.follow_mode_switch.set_active(self.state_manager.follow_mode)
|
||||
self.follow_mode_switch.connect('notify::active', self._refresh_follow_mode)
|
||||
|
||||
self.widescreen_mode_switch.connect('notify::active', self._refresh_widescreen_mode)
|
||||
|
||||
self.effect_enable_switch.set_active(self._is_config_enabled(self.ipc.retrieve_config()) and self.extensions_manager.is_enabled())
|
||||
self.effect_enable_switch.connect('notify::active', self._refresh_inputs_for_enabled_state)
|
||||
|
||||
|
|
@ -101,14 +93,6 @@ class ConnectedDevice(Gtk.Box):
|
|||
|
||||
def _is_config_enabled(self, config):
|
||||
return config.get('disabled') == False and 'breezy_desktop' in config.get('external_mode', [])
|
||||
|
||||
def _refresh_widescreen_mode(self, switch, param):
|
||||
widescreen_mode_enabled = switch.get_active()
|
||||
self.widescreen_display_distance_row.set_visible(widescreen_mode_enabled)
|
||||
self.display_distance_row.set_visible(not widescreen_mode_enabled)
|
||||
for widget in [self.widescreen_display_distance_scale, self.widescreen_display_size_scale]:
|
||||
widget.set_sensitive(widescreen_mode_enabled)
|
||||
|
||||
|
||||
def _refresh_inputs_for_enabled_state(self, switch, param):
|
||||
requesting_enabled = switch.get_active()
|
||||
|
|
@ -126,7 +110,6 @@ class ConnectedDevice(Gtk.Box):
|
|||
|
||||
if requesting_enabled:
|
||||
self._refresh_follow_mode(self.follow_mode_switch, None)
|
||||
self._refresh_widescreen_mode(self.widescreen_mode_switch, None)
|
||||
|
||||
def _refresh_follow_mode(self, switch, param):
|
||||
self.follow_threshold_scale.set_sensitive(switch.get_active())
|
||||
|
|
@ -148,6 +131,7 @@ class ConnectedDevice(Gtk.Box):
|
|||
def _on_widget_destroy(self, widget):
|
||||
self.state_manager.unbind_property('follow-mode', self.follow_mode_switch, 'active')
|
||||
self.settings.unbind('display-distance', self.display_distance_adjustment, 'value')
|
||||
self.settings.unbind('display-size', self.display_size_adjustment, 'value')
|
||||
self.settings.unbind('follow-threshold', self.follow_threshold_adjustment, 'value')
|
||||
self.settings.unbind('widescreen-mode', self.widescreen_mode_switch, 'active')
|
||||
self.extensions_manager.unbind_property('breezy-enabled', self.effect_enable_switch, 'active')
|
||||
|
|
@ -160,4 +144,4 @@ def on_set_display_distance_toggle(widget):
|
|||
settings = SettingsManager.get_instance().settings
|
||||
distance = settings.get_double('display-distance')
|
||||
settings.set_double(widget.get_name(), distance)
|
||||
reload_display_distance_toggle_button(widget)
|
||||
reload_display_distance_toggle_button(widget)
|
||||
|
|
|
|||
|
|
@ -24,288 +24,298 @@
|
|||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwPreferencesGroup">
|
||||
<property name="title" translatable="true">Settings</property>
|
||||
<object class="AdwViewStack" id="stack">
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Effect enabled</property>
|
||||
<property name="subtitle" translatable="true">Turn on or off the XR desktop effect</property>
|
||||
<child>
|
||||
<object class="GtkSwitch" id="effect_enable_switch">
|
||||
<property name="valign">3</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow" id="display_distance_row">
|
||||
<property name="title" translatable="true">Display distance</property>
|
||||
<child>
|
||||
<object class="GtkScale" id="display_distance_scale">
|
||||
<property name="valign">3</property>
|
||||
<property name="draw-value">true</property>
|
||||
<property name="value-pos">0</property>
|
||||
<property name="digits">2</property>
|
||||
<property name="width-request">350</property>
|
||||
<property name="has-origin">false</property>
|
||||
<property name="adjustment">
|
||||
<object class="GtkAdjustment" id="display_distance_adjustment">
|
||||
<property name="lower">0.2</property>
|
||||
<property name="upper">2.5</property>
|
||||
<property name="step-increment">0.01</property>
|
||||
<property name="value">1.05</property>
|
||||
<object class="AdwViewStackPage">
|
||||
<property name="name">general</property>
|
||||
<property name="title">General Settings</property>
|
||||
<property name="icon-name">applications-system-symbolic</property>
|
||||
<property name="child">
|
||||
<object class="GtkBox">
|
||||
<property name="orientation">1</property>
|
||||
<property name="margin-top">20</property>
|
||||
<property name="margin-bottom">20</property>
|
||||
<property name="margin-start">20</property>
|
||||
<property name="margin-end">20</property>
|
||||
<property name="spacing">20</property>
|
||||
<child>
|
||||
<object class="AdwPreferencesGroup">
|
||||
<property name="title" translatable="true">Features</property>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">XR effect</property>
|
||||
<property name="subtitle" translatable="true">Enables the Breezy Desktop XR effect.</property>
|
||||
<child>
|
||||
<object class="GtkSwitch" id="effect_enable_switch">
|
||||
<property name="valign">3</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Widescreen mode</property>
|
||||
<property name="subtitle" translatable="true">Switches your glasses into side-by-side mode and doubles the width of the display.</property>
|
||||
<property name="valign">2</property>
|
||||
<child>
|
||||
<object class="GtkSwitch" id="widescreen_mode_switch">
|
||||
<property name="valign">3</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Follow mode</property>
|
||||
<property name="subtitle" translatable="true">Keep the virtual display near the center of your view.</property>
|
||||
<child>
|
||||
<object class="GtkSwitch" id="follow_mode_switch">
|
||||
<property name="valign">3</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Curved display</property>
|
||||
<property name="subtitle" translatable="true">Switch between flat and curved displays.</property>
|
||||
<property name="valign">2</property>
|
||||
<child>
|
||||
<object class="GtkSwitch" id="curved_display_switch">
|
||||
<property name="valign">3</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
<marks>
|
||||
<mark value="0.2" position="bottom"></mark>
|
||||
<mark value="1.0" position="bottom"></mark>
|
||||
<mark value="2.5" position="bottom"></mark>
|
||||
</marks>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Follow enabled</property>
|
||||
<property name="subtitle" translatable="true">Keep the virtual display near the center of your view</property>
|
||||
<child>
|
||||
<object class="GtkSwitch" id="follow_mode_switch">
|
||||
<property name="valign">3</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Follow threshold</property>
|
||||
<property name="subtitle" translatable="true">How far away you can look before the display follows</property>
|
||||
<child>
|
||||
<object class="GtkScale" id="follow_threshold_scale">
|
||||
<property name="valign">3</property>
|
||||
<property name="draw-value">true</property>
|
||||
<property name="value-pos">0</property>
|
||||
<property name="digits">0</property>
|
||||
<property name="width-request">350</property>
|
||||
<property name="has-origin">false</property>
|
||||
<property name="adjustment">
|
||||
<object class="GtkAdjustment" id="follow_threshold_adjustment">
|
||||
<property name="lower">1</property>
|
||||
<property name="upper">45</property>
|
||||
<property name="step-increment">1</property>
|
||||
<property name="value">15</property>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwPreferencesGroup">
|
||||
<property name="title" translatable="true">Adjustments</property>
|
||||
<child>
|
||||
<object class="AdwActionRow" id="display_distance_row">
|
||||
<property name="title" translatable="true">Display distance</property>
|
||||
<property name="subtitle" translatable="true">Closer appears larger, further appears smaller. Controls depth when in widescreen mode.</property>
|
||||
<child>
|
||||
<object class="GtkScale" id="display_distance_scale">
|
||||
<property name="valign">3</property>
|
||||
<property name="draw-value">true</property>
|
||||
<property name="value-pos">0</property>
|
||||
<property name="digits">2</property>
|
||||
<property name="width-request">350</property>
|
||||
<property name="has-origin">false</property>
|
||||
<property name="adjustment">
|
||||
<object class="GtkAdjustment" id="display_distance_adjustment">
|
||||
<property name="lower">0.2</property>
|
||||
<property name="upper">2.5</property>
|
||||
<property name="step-increment">0.01</property>
|
||||
<property name="value">1.05</property>
|
||||
</object>
|
||||
</property>
|
||||
<marks>
|
||||
<mark value="0.2" position="bottom"></mark>
|
||||
<mark value="1.0" position="bottom"></mark>
|
||||
<mark value="2.5" position="bottom"></mark>
|
||||
</marks>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Display size</property>
|
||||
<property name="subtitle" translatable="true">Combine with display distance to achieve a comfortable level of depth and size.</property>
|
||||
<child>
|
||||
<object class="GtkScale" id="display_size_scale">
|
||||
<property name="valign">3</property>
|
||||
<property name="draw-value">true</property>
|
||||
<property name="value-pos">0</property>
|
||||
<property name="digits">2</property>
|
||||
<property name="width-request">350</property>
|
||||
<property name="has-origin">false</property>
|
||||
<property name="adjustment">
|
||||
<object class="GtkAdjustment" id="display_size_adjustment">
|
||||
<property name="lower">0.2</property>
|
||||
<property name="upper">2.5</property>
|
||||
<property name="step-increment">0.01</property>
|
||||
<property name="value">1.0</property>
|
||||
</object>
|
||||
</property>
|
||||
<marks>
|
||||
<mark value="0.2" position="bottom"></mark>
|
||||
<mark value="1.0" position="bottom"></mark>
|
||||
<mark value="2.5" position="bottom"></mark>
|
||||
</marks>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Display toggle distances</property>
|
||||
<property name="subtitle" translatable="true">Use the buttons to capture the current display distance for use with the keyboard shortcut.</property>
|
||||
<property name="valign">2</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="spacing">30</property>
|
||||
<property name="width-request">150</property>
|
||||
<property name="margin-start">30</property>
|
||||
<child>
|
||||
<object class="GtkButton" id="set_toggle_display_distance_start_button">
|
||||
<property name="name">toggle-display-distance-start</property>
|
||||
<property name="valign">3</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="set_toggle_display_distance_end_button">
|
||||
<property name="name">toggle-display-distance-end</property>
|
||||
<property name="valign">3</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Follow threshold</property>
|
||||
<property name="subtitle" translatable="true">How far away you can look before the display follows.</property>
|
||||
<child>
|
||||
<object class="GtkScale" id="follow_threshold_scale">
|
||||
<property name="valign">3</property>
|
||||
<property name="draw-value">true</property>
|
||||
<property name="value-pos">0</property>
|
||||
<property name="digits">0</property>
|
||||
<property name="width-request">350</property>
|
||||
<property name="has-origin">false</property>
|
||||
<property name="adjustment">
|
||||
<object class="GtkAdjustment" id="follow_threshold_adjustment">
|
||||
<property name="lower">1</property>
|
||||
<property name="upper">45</property>
|
||||
<property name="step-increment">1</property>
|
||||
<property name="value">15</property>
|
||||
</object>
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Curved display</property>
|
||||
<property name="subtitle" translatable="true">Switch between flat and curved displays</property>
|
||||
<property name="valign">2</property>
|
||||
<child>
|
||||
<object class="GtkSwitch" id="curved_display_switch">
|
||||
<property name="valign">3</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child><child>
|
||||
<object class="AdwPreferencesGroup">
|
||||
<property name="title" translatable="true">Widescreen</property>
|
||||
<property name="description" translatable="true">Widescreen mode switches your glasses into side-by-side mode and doubles the width of the display</property>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Enable widescreen</property>
|
||||
<property name="subtitle" translatable="true">Switches your glasses into side-by-side mode</property>
|
||||
<property name="valign">2</property>
|
||||
<child>
|
||||
<object class="GtkSwitch" id="widescreen_mode_switch">
|
||||
<property name="valign">3</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow" id="widescreen_display_distance_row">
|
||||
<property name="title" translatable="true">Display distance</property>
|
||||
<property name="subtitle" translatable="true">Move the screen closer or further using SBS depth</property>
|
||||
<child>
|
||||
<object class="GtkScale" id="widescreen_display_distance_scale">
|
||||
<property name="valign">3</property>
|
||||
<property name="draw-value">true</property>
|
||||
<property name="value-pos">0</property>
|
||||
<property name="digits">2</property>
|
||||
<property name="width-request">350</property>
|
||||
<property name="has-origin">false</property>
|
||||
<property name="adjustment">
|
||||
<object class="GtkAdjustment" id="widescreen_display_distance_adjustment">
|
||||
<property name="lower">0.2</property>
|
||||
<property name="upper">2.5</property>
|
||||
<property name="step-increment">0.01</property>
|
||||
<property name="value">1.05</property>
|
||||
<object class="AdwViewStackPage">
|
||||
<property name="name">shortcuts</property>
|
||||
<property name="title">Shortcuts</property>
|
||||
<property name="icon-name">preferences-desktop-keyboard-shortcuts-symbolic</property>
|
||||
<property name="child">
|
||||
<object class="GtkBox">
|
||||
<child>
|
||||
<object class="AdwPreferencesGroup">
|
||||
<property name="title" translatable="true">Shortcuts</property>
|
||||
<property name="description" translatable="true">Modify keyboard shortcuts and how they work.</property>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Re-center display shortcut</property>
|
||||
<property name="subtitle" translatable="true">Pin the virtual display to the current position.</property>
|
||||
<property name="valign">2</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="spacing">30</property>
|
||||
<property name="margin-start">30</property>
|
||||
<child>
|
||||
<object class="GtkShortcutLabel" id="recenter_display_shortcut_label">
|
||||
<property name="valign">3</property>
|
||||
<property name="accelerator"></property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reassign_recenter_display_shortcut_button">
|
||||
<style>
|
||||
<class name="row-button"/>
|
||||
</style>
|
||||
<property name="name">recenter-display-shortcut</property>
|
||||
<property name="valign">3</property>
|
||||
<property name="label" translatable="true">Change</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Display distance shortcut</property>
|
||||
<property name="subtitle" translatable="true">Quickly toggle between two predefined distances.</property>
|
||||
<property name="valign">2</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="spacing">30</property>
|
||||
<property name="margin-start">30</property>
|
||||
<child>
|
||||
<object class="GtkShortcutLabel" id="toggle_display_distance_shortcut_label">
|
||||
<property name="valign">3</property>
|
||||
<property name="accelerator"></property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reassign_toggle_display_distance_shortcut_button">
|
||||
<style>
|
||||
<class name="row-button"/>
|
||||
</style>
|
||||
<property name="name">toggle-display-distance-shortcut</property>
|
||||
<property name="valign">3</property>
|
||||
<property name="label" translatable="true">Change</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Toggle follow mode shortcut</property>
|
||||
<property name="subtitle" translatable="true">Quickly toggle follow mode.</property>
|
||||
<property name="valign">2</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="spacing">30</property>
|
||||
<property name="margin-start">30</property>
|
||||
<child>
|
||||
<object class="GtkShortcutLabel" id="toggle_follow_shortcut_label">
|
||||
<property name="valign">3</property>
|
||||
<property name="accelerator"></property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reassign_toggle_follow_shortcut_button">
|
||||
<style>
|
||||
<class name="row-button"/>
|
||||
</style>
|
||||
<property name="name">toggle-follow-shortcut</property>
|
||||
<property name="valign">3</property>
|
||||
<property name="label" translatable="true">Change</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</property>
|
||||
<marks>
|
||||
<mark value="0.2" position="bottom"></mark>
|
||||
<mark value="1.0" position="bottom"></mark>
|
||||
<mark value="2.5" position="bottom"></mark>
|
||||
</marks>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Display size</property>
|
||||
<property name="subtitle" translatable="true">Combine with display distance to achieve a comfortable level of depth and size</property>
|
||||
<child>
|
||||
<object class="GtkScale" id="widescreen_display_size_scale">
|
||||
<property name="valign">3</property>
|
||||
<property name="draw-value">true</property>
|
||||
<property name="value-pos">0</property>
|
||||
<property name="digits">2</property>
|
||||
<property name="width-request">350</property>
|
||||
<property name="has-origin">false</property>
|
||||
<property name="adjustment">
|
||||
<object class="GtkAdjustment" id="widescreen_display_size_adjustment">
|
||||
<property name="lower">0.2</property>
|
||||
<property name="upper">2.5</property>
|
||||
<property name="step-increment">0.01</property>
|
||||
<property name="value">1.0</property>
|
||||
</object>
|
||||
</property>
|
||||
<marks>
|
||||
<mark value="0.2" position="bottom"></mark>
|
||||
<mark value="1.0" position="bottom"></mark>
|
||||
<mark value="2.5" position="bottom"></mark>
|
||||
</marks>
|
||||
</object>
|
||||
</child>
|
||||
</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwPreferencesGroup">
|
||||
<property name="title" translatable="true">Shortcuts</property>
|
||||
<property name="description" translatable="true">Modify keyboard shortcuts and how they work</property>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Re-center display shortcut</property>
|
||||
<property name="subtitle" translatable="true">Pin the virtual display to the current position</property>
|
||||
<property name="valign">2</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="spacing">30</property>
|
||||
<property name="margin-start">30</property>
|
||||
<child>
|
||||
<object class="GtkShortcutLabel" id="recenter_display_shortcut_label">
|
||||
<property name="valign">3</property>
|
||||
<property name="accelerator"></property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reassign_recenter_display_shortcut_button">
|
||||
<style>
|
||||
<class name="row-button"/>
|
||||
</style>
|
||||
<property name="name">recenter-display-shortcut</property>
|
||||
<property name="valign">3</property>
|
||||
<property name="label" translatable="true">Change</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Display distance shortcut</property>
|
||||
<property name="subtitle" translatable="true">Quickly toggle between two predefined distances</property>
|
||||
<property name="valign">2</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="spacing">30</property>
|
||||
<property name="margin-start">30</property>
|
||||
<child>
|
||||
<object class="GtkShortcutLabel" id="toggle_display_distance_shortcut_label">
|
||||
<property name="valign">3</property>
|
||||
<property name="accelerator"></property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reassign_toggle_display_distance_shortcut_button">
|
||||
<style>
|
||||
<class name="row-button"/>
|
||||
</style>
|
||||
<property name="name">toggle-display-distance-shortcut</property>
|
||||
<property name="valign">3</property>
|
||||
<property name="label" translatable="true">Change</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Display distance start and end</property>
|
||||
<property name="subtitle" translatable="true">Use the buttons to capture the current display distance as start and end points.</property>
|
||||
<property name="valign">2</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="spacing">30</property>
|
||||
<property name="width-request">150</property>
|
||||
<property name="margin-start">30</property>
|
||||
<child>
|
||||
<object class="GtkButton" id="set_toggle_display_distance_start_button">
|
||||
<property name="name">toggle-display-distance-start</property>
|
||||
<property name="valign">3</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="set_toggle_display_distance_end_button">
|
||||
<property name="name">toggle-display-distance-end</property>
|
||||
<property name="valign">3</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="AdwActionRow">
|
||||
<property name="title" translatable="true">Toggle follow mode shortcut</property>
|
||||
<property name="subtitle" translatable="true">Quickly toggle follow mode</property>
|
||||
<property name="valign">2</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="spacing">30</property>
|
||||
<property name="margin-start">30</property>
|
||||
<child>
|
||||
<object class="GtkShortcutLabel" id="toggle_follow_shortcut_label">
|
||||
<property name="valign">3</property>
|
||||
<property name="accelerator"></property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="reassign_toggle_follow_shortcut_button">
|
||||
<style>
|
||||
<class name="row-button"/>
|
||||
</style>
|
||||
<property name="name">toggle-follow-shortcut</property>
|
||||
<property name="valign">3</property>
|
||||
<property name="label" translatable="true">Change</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<object class="AdwViewSwitcher" id="switcher">
|
||||
<property name="stack">stack</property>
|
||||
<property name="policy">wide</property>
|
||||
</object>
|
||||
</child>
|
||||
</template>
|
||||
|
|
|
|||
|
|
@ -57,11 +57,11 @@
|
|||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox" id="tiers">
|
||||
<object class="GtkBox" id="features">
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox" id="features">
|
||||
<object class="GtkBox" id="tiers">
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
|
|
|
|||
|
|
@ -3,10 +3,10 @@ from gi.repository import Adw
|
|||
from .time import time_remaining_text
|
||||
|
||||
FEATURE_NAMES = {
|
||||
'sbs': 'Side-by-side mode (for gaming)',
|
||||
'smooth_follow': 'Smooth Follow',
|
||||
'productivity_basic': 'Breezy Desktop',
|
||||
'productivity_pro': 'Breezy Desktop w/ multiple monitors',
|
||||
'sbs': 'Side-by-side mode (gaming)',
|
||||
'smooth_follow': 'Smooth Follow (gaming)',
|
||||
'productivity_basic': 'Breezy Desktop (productivity)',
|
||||
'productivity_pro': 'Breezy Desktop Pro (productivity)',
|
||||
}
|
||||
|
||||
class LicenseFeatureRow(Adw.ActionRow):
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ class LicenseTierRow(Adw.ExpanderRow):
|
|||
elif active_period is not None:
|
||||
amount_text += " to upgrade"
|
||||
elif active_period is not None and PERIOD_RANKS[period] >= PERIOD_RANKS[active_period]:
|
||||
amount_text = "Ready to auto-renew"
|
||||
amount_text = "Paid through next renewal period"
|
||||
|
||||
if amount_text is not None:
|
||||
row_widget = Adw.ActionRow(title=period.capitalize())
|
||||
|
|
|
|||
Loading…
Reference in New Issue