magnifier: Avoid cursor visibility changes on startup
When initializing the shell, we create the magnifier, and (normally) let it disabled. This still toggles cursor visibility on, which is not right since there's other considerations to take during initialization. Only do this after actual changes to the magnifier state, so initialization is left unperturbed. https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1486
This commit is contained in:
parent
709c226fc3
commit
a9a54ba2a3
@ -158,20 +158,21 @@ var Magnifier = class Magnifier {
|
||||
zoomRegion.setActive(activate);
|
||||
});
|
||||
|
||||
if (isActive != activate) {
|
||||
if (activate) {
|
||||
this._updateMouseSprite();
|
||||
this._cursorSpriteChangedId =
|
||||
this._cursorTracker.connect('cursor-changed',
|
||||
this._updateMouseSprite.bind(this));
|
||||
Meta.disable_unredirect_for_display(global.display);
|
||||
this.startTrackingMouse();
|
||||
} else {
|
||||
this._cursorTracker.disconnect(this._cursorSpriteChangedId);
|
||||
this._mouseSprite.content.texture = null;
|
||||
Meta.enable_unredirect_for_display(global.display);
|
||||
this.stopTrackingMouse();
|
||||
}
|
||||
if (isActive === activate)
|
||||
return;
|
||||
|
||||
if (activate) {
|
||||
this._updateMouseSprite();
|
||||
this._cursorSpriteChangedId =
|
||||
this._cursorTracker.connect('cursor-changed',
|
||||
this._updateMouseSprite.bind(this));
|
||||
Meta.disable_unredirect_for_display(global.display);
|
||||
this.startTrackingMouse();
|
||||
} else {
|
||||
this._cursorTracker.disconnect(this._cursorSpriteChangedId);
|
||||
this._mouseSprite.content.texture = null;
|
||||
Meta.enable_unredirect_for_display(global.display);
|
||||
this.stopTrackingMouse();
|
||||
}
|
||||
|
||||
// Make sure system mouse pointer is shown when all zoom regions are
|
||||
|
Loading…
Reference in New Issue
Block a user