layout: Don't build input region rects on Wayland
This is an X11-specific routine, and building the list of input region rects on Wayland is a waste, since it incurs in many trampolines only to throw them in the trash. Don't build input region rects on Wayland. By modifying the 'wantsInputRegion' variable, it also skips actors that only update input, which is another small optimization for Wayland. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1678>
This commit is contained in:
parent
ba0b9239d3
commit
bc0974618f
@ -959,7 +959,10 @@ var LayoutManager = GObject.registerClass({
|
|||||||
|
|
||||||
let rects = [], struts = [], i;
|
let rects = [], struts = [], i;
|
||||||
let isPopupMenuVisible = global.top_window_group.get_children().some(isPopupMetaWindow);
|
let isPopupMenuVisible = global.top_window_group.get_children().some(isPopupMetaWindow);
|
||||||
const wantsInputRegion = !isPopupMenuVisible && Main.modalCount === 0;
|
const wantsInputRegion =
|
||||||
|
!isPopupMenuVisible &&
|
||||||
|
Main.modalCount === 0 &&
|
||||||
|
!Meta.is_wayland_compositor();
|
||||||
|
|
||||||
for (i = 0; i < this._trackedActors.length; i++) {
|
for (i = 0; i < this._trackedActors.length; i++) {
|
||||||
let actorData = this._trackedActors[i];
|
let actorData = this._trackedActors[i];
|
||||||
|
Loading…
Reference in New Issue
Block a user