[PATCH weston v6 26/73] libweston: remove output_pending_signal
Pekka Paalanen
ppaalanen at gmail.com
Fri Feb 16 14:57:11 UTC 2018
From: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
The signal has been replaced with the heads_changed hook and is no
longer useful.
weston_pending_output_coldplug() is renamed to
weston_compositor_flush_heads_changed() for two reasons: it better
describes what it does now, and it serves as an obvious flag that
libweston ABI has been broken.
Signed-off-by: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
---
compositor/main.c | 2 +-
libweston/compositor.c | 21 +++++----------------
libweston/compositor.h | 3 +--
3 files changed, 7 insertions(+), 19 deletions(-)
diff --git a/compositor/main.c b/compositor/main.c
index 61587870..c9554625 100644
--- a/compositor/main.c
+++ b/compositor/main.c
@@ -1939,7 +1939,7 @@ int main(int argc, char *argv[])
goto out;
}
- weston_pending_output_coldplug(ec);
+ weston_compositor_flush_heads_changed(ec);
if (user_data.init_failed)
goto out;
diff --git a/libweston/compositor.c b/libweston/compositor.c
index 02d92faf..2a2ec845 100644
--- a/libweston/compositor.c
+++ b/libweston/compositor.c
@@ -5467,9 +5467,6 @@ weston_output_init(struct weston_output *output,
* \param output The weston_output object to add
* \param compositor The compositor instance.
*
- * Also notifies the compositor that an output is pending for
- * configuration.
- *
* The opposite of this operation is built into weston_output_release().
*
* \memberof weston_output
@@ -5484,7 +5481,6 @@ weston_compositor_add_pending_output(struct weston_output *output,
wl_list_remove(&output->link);
wl_list_insert(compositor->pending_output_list.prev, &output->link);
- wl_signal_emit(&compositor->output_pending_signal, output);
}
/** Constructs a weston_output object that can be used by the compositor.
@@ -5631,22 +5627,16 @@ weston_output_disable(struct weston_output *output)
output->destroying = 0;
}
-/** Emits a signal to indicate that there are outputs waiting to be configured.
+/** Forces a synchronous call to heads_changed hook
*
* \param compositor The compositor instance
+ *
+ * If there are new or changed heads, calls the heads_changed hook and
+ * returns after the hook returns.
*/
WL_EXPORT void
-weston_pending_output_coldplug(struct weston_compositor *compositor)
+weston_compositor_flush_heads_changed(struct weston_compositor *compositor)
{
- struct weston_output *output, *next;
-
- wl_list_for_each_safe(output, next, &compositor->pending_output_list, link)
- wl_signal_emit(&compositor->output_pending_signal, output);
-
- /* Execute the heads changed callback manually to ensure it is
- * processed before any plugins get their start-up idle tasks ran.
- * This ensures the plugins see all the initial outputs.
- */
if (compositor->heads_changed_source) {
wl_event_source_remove(compositor->heads_changed_source);
weston_compositor_call_heads_changed(compositor);
@@ -6115,7 +6105,6 @@ weston_compositor_create(struct wl_display *display, void *user_data)
wl_signal_init(&ec->hide_input_panel_signal);
wl_signal_init(&ec->update_input_panel_signal);
wl_signal_init(&ec->seat_created_signal);
- wl_signal_init(&ec->output_pending_signal);
wl_signal_init(&ec->output_created_signal);
wl_signal_init(&ec->output_destroyed_signal);
wl_signal_init(&ec->output_moved_signal);
diff --git a/libweston/compositor.h b/libweston/compositor.h
index 4b866932..16af3cfb 100644
--- a/libweston/compositor.h
+++ b/libweston/compositor.h
@@ -951,7 +951,6 @@ struct weston_compositor {
struct wl_signal update_input_panel_signal;
struct wl_signal seat_created_signal;
- struct wl_signal output_pending_signal;
struct wl_signal output_created_signal;
struct wl_signal output_destroyed_signal;
struct wl_signal output_moved_signal;
@@ -2111,7 +2110,7 @@ void
weston_output_disable(struct weston_output *output);
void
-weston_pending_output_coldplug(struct weston_compositor *compositor);
+weston_compositor_flush_heads_changed(struct weston_compositor *compositor);
struct weston_head *
weston_head_from_resource(struct wl_resource *resource);
--
2.13.6
More information about the wayland-devel
mailing list