1From 6339c12d59e740347c9c6a5922e3a9acf4def32c Mon Sep 17 00:00:00 2001 2From: Jeffy Chen <jeffy.chen@rock-chips.com> 3Date: Sat, 7 May 2022 16:41:20 +0800 4Subject: [PATCH 23/79] Avoid adding views to other outputs 5 6The outputs can be overlapped now. 7 8Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com> 9--- 10 libweston/compositor.c | 5 +++++ 11 1 file changed, 5 insertions(+) 12 13diff --git a/libweston/compositor.c b/libweston/compositor.c 14index b959424..02d1fa1 100644 15--- a/libweston/compositor.c 16+++ b/libweston/compositor.c 17@@ -1314,6 +1314,7 @@ weston_view_set_output(struct weston_view *view, struct weston_output *output) 18 } 19 view->output = output; 20 if (output) { 21+ view->output_mask |= output->id; 22 view->output_destroy_listener.notify = 23 notify_view_output_destroy; 24 wl_signal_add(&output->destroy_signal, 25@@ -2834,6 +2835,10 @@ view_list_add(struct weston_compositor *compositor, 26 struct weston_paint_node *pnode; 27 struct weston_subsurface *sub; 28 29+ /* HACK: Avoid adding views to other outputs */ 30+ if (output && !(view->output_mask & 1 << output->id)) 31+ output = NULL; 32+ 33 weston_view_update_transform(view); 34 pnode = view_ensure_paint_node(view, output); 35 36-- 372.20.1 38 39