screen-cast: Implement MetaEisViewport in all stream types

This will be used to describe a eis_region in a eis_device.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3228>
This commit is contained in:
Jonas Ådahl
2023-08-29 20:34:05 +02:00
committed by Robert Mader
parent 7faac2aef4
commit d4559a9ca4
8 changed files with 393 additions and 13 deletions

View File

@ -22,6 +22,8 @@
#include "backends/meta-crtc-mode.h"
#include "backends/meta-cursor-tracker-private.h"
#include "backends/meta-monitor.h"
#include "backends/meta-output.h"
#include "backends/meta-screen-cast-session.h"
#include "backends/meta-stage-private.h"
#include "backends/meta-virtual-monitor.h"
@ -108,6 +110,16 @@ meta_screen_cast_virtual_stream_src_get_view (MetaScreenCastVirtualStreamSrc *vi
return view_from_src (META_SCREEN_CAST_STREAM_SRC (virtual_src));
}
MetaLogicalMonitor *
meta_screen_cast_virtual_stream_src_logical_monitor (MetaScreenCastVirtualStreamSrc *virtual_src)
{
MetaVirtualMonitor *virtual_monitor = virtual_src->virtual_monitor;
MetaOutput *output = meta_virtual_monitor_get_output (virtual_monitor);
MetaMonitor *monitor = meta_output_get_monitor (output);
return meta_monitor_get_logical_monitor (monitor);
}
static void
sync_cursor_state (MetaScreenCastVirtualStreamSrc *virtual_src)
{