eis: Rebuild absolute pointers when any viewport changes

This fixes remote desktop client side resize via changing virtual
monitor stream sizes.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3241>
This commit is contained in:
Jonas Ådahl
2023-09-04 12:10:32 +02:00
parent 1a1a16324b
commit 15a3c47df5
4 changed files with 57 additions and 0 deletions

View File

@ -22,6 +22,7 @@
#include "backends/meta-crtc-mode.h"
#include "backends/meta-cursor-tracker-private.h"
#include "backends/meta-eis-viewport.h"
#include "backends/meta-monitor.h"
#include "backends/meta-output.h"
#include "backends/meta-screen-cast-session.h"
@ -243,10 +244,13 @@ on_monitors_changed (MetaMonitorManager *monitor_manager,
{
MetaScreenCastStreamSrc *src = META_SCREEN_CAST_STREAM_SRC (virtual_src);
MetaStage *stage = META_STAGE (stage_from_src (src));
MetaScreenCastStream *stream = meta_screen_cast_stream_src_get_stream (src);
meta_stage_remove_watch (stage, virtual_src->watch);
virtual_src->watch = NULL;
add_watch (virtual_src);
meta_eis_viewport_notify_changed (META_EIS_VIEWPORT (stream));
}
static void