screenshot: Get cursor texture from window
When a window is in the background and should not have the cursor on top of it, its _cursor will be null. By getting the texture through it, we add this extra check, which was missing before, leading to a cursor drawn at 0, 0 on windows where it should not have been drawn. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2702>
This commit is contained in:
@@ -917,6 +917,10 @@ class UIWindowSelectorWindow extends St.Button {
|
|||||||
this.insert_child_below(this._cursor, this._border);
|
this.insert_child_below(this._cursor, this._border);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getCursorTexture() {
|
||||||
|
return this._cursor?.content;
|
||||||
|
}
|
||||||
|
|
||||||
setCursorVisible(visible) {
|
setCursorVisible(visible) {
|
||||||
if (!this._cursor)
|
if (!this._cursor)
|
||||||
return;
|
return;
|
||||||
@@ -1812,7 +1816,7 @@ var ScreenshotUI = GObject.registerClass({
|
|||||||
|
|
||||||
const texture = content.get_texture();
|
const texture = content.get_texture();
|
||||||
|
|
||||||
let cursorTexture = this._cursor.content?.get_texture();
|
let cursorTexture = window.getCursorTexture()?.get_texture();
|
||||||
if (!this._cursor.visible)
|
if (!this._cursor.visible)
|
||||||
cursorTexture = null;
|
cursorTexture = null;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user