wayland/actor-surface: Consider clones in is_on_logical_monitor()

Robert Mader requested to merge rmader/mutter:clones_on_logicol_monitor into main

While the check for clutter_actor_has_mapped_clones clearly indicates an intention to take clones into account, the following code does not do so, likely because it predates the introduction of clutter_actor_is_effectively_on_stage_view().

Switch to that newer API in order to take clones into account. This avoids unnecessary wl_surface_send_enter() and wl_surface_send_leave() events when entering the overview, reducing client work.

Note: wl_surface_send_leave() and wl_surface_send_enter() may trigger a buffer_scale or buffer_transform change. Depending on the client implementation this may result in a buffer resize, potentially a quite heavy operation.

Edited by Robert Mader

Merge request reports