39 lines
1.2 KiB
Diff
39 lines
1.2 KiB
Diff
From f4dea99ef832601fea53137c0bc9843182b796df Mon Sep 17 00:00:00 2001
|
|
From: Jeffy Chen <jeffy.chen@rock-chips.com>
|
|
Date: Sat, 7 May 2022 16:41:20 +0800
|
|
Subject: [PATCH 26/93] Avoid adding views to other outputs
|
|
|
|
The outputs can be overlapped now.
|
|
|
|
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
|
|
---
|
|
libweston/compositor.c | 5 +++++
|
|
1 file changed, 5 insertions(+)
|
|
|
|
diff --git a/libweston/compositor.c b/libweston/compositor.c
|
|
index 306b2c6..2e56db2 100644
|
|
--- a/libweston/compositor.c
|
|
+++ b/libweston/compositor.c
|
|
@@ -1323,6 +1323,7 @@ weston_view_set_output(struct weston_view *view, struct weston_output *output)
|
|
}
|
|
view->output = output;
|
|
if (output) {
|
|
+ view->output_mask = output->id;
|
|
view->output_destroy_listener.notify =
|
|
notify_view_output_destroy;
|
|
wl_signal_add(&output->destroy_signal,
|
|
@@ -3169,6 +3170,10 @@ view_list_add(struct weston_compositor *compositor,
|
|
struct weston_paint_node *pnode;
|
|
struct weston_subsurface *sub;
|
|
|
|
+ /* HACK: Avoid adding views to other outputs */
|
|
+ if (output && !(view->output_mask & 1 << output->id))
|
|
+ output = NULL;
|
|
+
|
|
weston_view_update_transform(view);
|
|
|
|
/* It is possible for a view to appear in the layer list even though
|
|
--
|
|
2.20.1
|
|
|