monitor-stream-src: Generalize function
We'll need to pass a custom callback to the stage views watcher. Generalize and rename the add_view_painted_watches() function to allow accepting custom callbacks. https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1421
This commit is contained in:
parent
b63e94af31
commit
aed286aa46
@ -277,8 +277,9 @@ uninhibit_hw_cursor (MetaScreenCastMonitorStreamSrc *monitor_src)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
add_view_painted_watches (MetaScreenCastMonitorStreamSrc *monitor_src,
|
add_view_watches (MetaScreenCastMonitorStreamSrc *monitor_src,
|
||||||
MetaStageWatchPhase watch_phase)
|
MetaStageWatchPhase watch_phase,
|
||||||
|
MetaStageWatchFunc callback)
|
||||||
{
|
{
|
||||||
MetaBackend *backend = get_backend (monitor_src);
|
MetaBackend *backend = get_backend (monitor_src);
|
||||||
MetaRenderer *renderer = meta_backend_get_renderer (backend);
|
MetaRenderer *renderer = meta_backend_get_renderer (backend);
|
||||||
@ -308,7 +309,7 @@ add_view_painted_watches (MetaScreenCastMonitorStreamSrc *monitor_src,
|
|||||||
watch = meta_stage_watch_view (meta_stage,
|
watch = meta_stage_watch_view (meta_stage,
|
||||||
CLUTTER_STAGE_VIEW (view),
|
CLUTTER_STAGE_VIEW (view),
|
||||||
watch_phase,
|
watch_phase,
|
||||||
stage_painted,
|
callback,
|
||||||
monitor_src);
|
monitor_src);
|
||||||
|
|
||||||
monitor_src->watches = g_list_prepend (monitor_src->watches, watch);
|
monitor_src->watches = g_list_prepend (monitor_src->watches, watch);
|
||||||
@ -343,14 +344,16 @@ meta_screen_cast_monitor_stream_src_enable (MetaScreenCastStreamSrc *src)
|
|||||||
meta_cursor_tracker_track_position (cursor_tracker);
|
meta_cursor_tracker_track_position (cursor_tracker);
|
||||||
G_GNUC_FALLTHROUGH;
|
G_GNUC_FALLTHROUGH;
|
||||||
case META_SCREEN_CAST_CURSOR_MODE_HIDDEN:
|
case META_SCREEN_CAST_CURSOR_MODE_HIDDEN:
|
||||||
add_view_painted_watches (monitor_src,
|
add_view_watches (monitor_src,
|
||||||
META_STAGE_WATCH_AFTER_ACTOR_PAINT);
|
META_STAGE_WATCH_AFTER_ACTOR_PAINT,
|
||||||
|
stage_painted);
|
||||||
break;
|
break;
|
||||||
case META_SCREEN_CAST_CURSOR_MODE_EMBEDDED:
|
case META_SCREEN_CAST_CURSOR_MODE_EMBEDDED:
|
||||||
inhibit_hw_cursor (monitor_src);
|
inhibit_hw_cursor (monitor_src);
|
||||||
meta_cursor_tracker_track_position (cursor_tracker);
|
meta_cursor_tracker_track_position (cursor_tracker);
|
||||||
add_view_painted_watches (monitor_src,
|
add_view_watches (monitor_src,
|
||||||
META_STAGE_WATCH_AFTER_PAINT);
|
META_STAGE_WATCH_AFTER_PAINT,
|
||||||
|
stage_painted);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user