diff options
author | Ivan Molodetskikh <yalterz@gmail.com> | 2023-03-18 21:45:41 -0700 |
---|---|---|
committer | Ivan Molodetskikh <yalterz@gmail.com> | 2023-03-21 09:46:52 -0700 |
commit | 237c3e958db16bb4aa2aa575085e2e249cdee67e (patch) | |
tree | 13e25325c8bd37ba909440f67d72b4ae694aa7bd | |
parent | 69e7b8e79ad71094283fb41ad018f6a8c43ade65 (diff) | |
download | gnome-shell-237c3e958db16bb4aa2aa575085e2e249cdee67e.tar.gz |
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>
-rw-r--r-- | js/ui/screenshot.js | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/js/ui/screenshot.js b/js/ui/screenshot.js index 59c63c71e..ecbe50bcc 100644 --- a/js/ui/screenshot.js +++ b/js/ui/screenshot.js @@ -917,6 +917,10 @@ class UIWindowSelectorWindow extends St.Button { this.insert_child_below(this._cursor, this._border); } + getCursorTexture() { + return this._cursor?.content; + } + setCursorVisible(visible) { if (!this._cursor) return; @@ -1812,7 +1816,7 @@ var ScreenshotUI = GObject.registerClass({ const texture = content.get_texture(); - let cursorTexture = this._cursor.content?.get_texture(); + let cursorTexture = window.getCursorTexture()?.get_texture(); if (!this._cursor.visible) cursorTexture = null; |