mirror of
https://github.com/edu4rdshl/gnome-shell.git
synced 2026-07-17 23:24:51 +00:00
screenshot: Connect shot/cast toggle with bind_property
This way we don't need to uncheck the other button manually, and it also allows switching the mode by setting the other button's checked to false, and not just by setting the target mode's button to true. An example clean-up can be seen in the "V" key handler. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2107>
This commit is contained in:
parent
b0ebbb00b8
commit
6d3dd232ad
1 changed files with 4 additions and 7 deletions
|
|
@ -1212,6 +1212,9 @@ var ScreenshotUI = GObject.registerClass({
|
|||
this._onCastButtonToggled.bind(this));
|
||||
this._shotCastContainer.add_child(this._castButton);
|
||||
|
||||
this._shotButton.bind_property('checked', this._castButton, 'checked',
|
||||
GObject.BindingFlags.BIDIRECTIONAL | GObject.BindingFlags.INVERT_BOOLEAN);
|
||||
|
||||
this._shotCastTooltip = new Tooltip(this._shotCastContainer, {
|
||||
text: _('Screenshot / Screencast'),
|
||||
style_class: 'screenshot-ui-tooltip',
|
||||
|
|
@ -1638,7 +1641,6 @@ var ScreenshotUI = GObject.registerClass({
|
|||
_onShotButtonToggled() {
|
||||
if (this._shotButton.checked) {
|
||||
this._shotButton.toggle_mode = false;
|
||||
this._castButton.checked = false;
|
||||
|
||||
this._stageScreenshotContainer.show();
|
||||
this._stageScreenshotContainer.remove_all_transitions();
|
||||
|
|
@ -1655,7 +1657,6 @@ var ScreenshotUI = GObject.registerClass({
|
|||
_onCastButtonToggled() {
|
||||
if (this._castButton.checked) {
|
||||
this._castButton.toggle_mode = false;
|
||||
this._shotButton.checked = false;
|
||||
|
||||
this._captureButton.add_style_pseudo_class('cast');
|
||||
|
||||
|
|
@ -1966,11 +1967,7 @@ var ScreenshotUI = GObject.registerClass({
|
|||
}
|
||||
|
||||
if (symbol === Clutter.KEY_v || symbol === Clutter.KEY_V) {
|
||||
if (this._shotButton.checked)
|
||||
this._castButton.checked = true;
|
||||
else
|
||||
this._shotButton.checked = true;
|
||||
|
||||
this._castButton.checked = !this._castButton.checked;
|
||||
return Clutter.EVENT_STOP;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue