screenshot: Use independent tooltips for the Screenshot/Screencast buttons
Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6189 Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2683>
This commit is contained in:
parent
9168e2fc63
commit
65ec7b3fa8
@ -1226,6 +1226,12 @@ var ScreenshotUI = GObject.registerClass({
|
|||||||
this._onShotButtonToggled.bind(this));
|
this._onShotButtonToggled.bind(this));
|
||||||
this._shotCastContainer.add_child(this._shotButton);
|
this._shotCastContainer.add_child(this._shotButton);
|
||||||
|
|
||||||
|
this.add_child(new Tooltip(this._shotButton, {
|
||||||
|
text: _('Take Screenshot'),
|
||||||
|
style_class: 'screenshot-ui-tooltip',
|
||||||
|
visible: false,
|
||||||
|
}));
|
||||||
|
|
||||||
this._castButton = new St.Button({
|
this._castButton = new St.Button({
|
||||||
style_class: 'screenshot-ui-shot-cast-button',
|
style_class: 'screenshot-ui-shot-cast-button',
|
||||||
icon_name: 'camera-web-symbolic',
|
icon_name: 'camera-web-symbolic',
|
||||||
@ -1236,23 +1242,14 @@ var ScreenshotUI = GObject.registerClass({
|
|||||||
this._onCastButtonToggled.bind(this));
|
this._onCastButtonToggled.bind(this));
|
||||||
this._shotCastContainer.add_child(this._castButton);
|
this._shotCastContainer.add_child(this._castButton);
|
||||||
|
|
||||||
this._shotButton.bind_property('checked', this._castButton, 'checked',
|
this.add_child(new Tooltip(this._castButton, {
|
||||||
GObject.BindingFlags.BIDIRECTIONAL | GObject.BindingFlags.INVERT_BOOLEAN);
|
text: _('Record Screen'),
|
||||||
|
|
||||||
this._shotCastTooltip = new Tooltip(this._shotCastContainer, {
|
|
||||||
text: _('Screenshot / Screencast'),
|
|
||||||
style_class: 'screenshot-ui-tooltip',
|
style_class: 'screenshot-ui-tooltip',
|
||||||
visible: false,
|
visible: false,
|
||||||
});
|
}));
|
||||||
const shotCastCallback = () => {
|
|
||||||
if (this._shotButton.hover || this._castButton.hover)
|
this._shotButton.bind_property('checked', this._castButton, 'checked',
|
||||||
this._shotCastTooltip.open();
|
GObject.BindingFlags.BIDIRECTIONAL | GObject.BindingFlags.INVERT_BOOLEAN);
|
||||||
else
|
|
||||||
this._shotCastTooltip.close();
|
|
||||||
};
|
|
||||||
this._shotButton.connect('notify::hover', shotCastCallback);
|
|
||||||
this._castButton.connect('notify::hover', shotCastCallback);
|
|
||||||
this.add_child(this._shotCastTooltip);
|
|
||||||
|
|
||||||
this._captureButton = new St.Button({ style_class: 'screenshot-ui-capture-button' });
|
this._captureButton = new St.Button({ style_class: 'screenshot-ui-capture-button' });
|
||||||
this._captureButton.set_child(new St.Widget({
|
this._captureButton.set_child(new St.Widget({
|
||||||
|
Loading…
Reference in New Issue
Block a user