diff options
author | Philipp Zabel <philipp.zabel@gmail.com> | 2023-04-16 18:26:03 +0200 |
---|---|---|
committer | Philipp Zabel <philipp.zabel@gmail.com> | 2023-04-17 09:40:52 +0200 |
commit | 0a1d77a72876042db742b73dd34ff3ba6c6a5878 (patch) | |
tree | 8a5662773bd7d8d83aa93fff8913ae0b7ce8a6b3 | |
parent | 7d2112c713ffd504fa1e2e0c7053e52f4cdbf2a1 (diff) | |
download | weston-0a1d77a72876042db742b73dd34ff3ba6c6a5878.tar.gz |
backend-rdp: pass rdp_backend to rdp_head_create()
Pass the RDP backend to rdp_head_create().
That way the already known backend will not have to be found from the
compositor. This is trivial now, but in the multi-backend case would
entail iterating over all backends to find the correct one.
Also remove the now unused to_rdp_backend() helper.
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
-rw-r--r-- | libweston/backend-rdp/rdp.c | 7 | ||||
-rw-r--r-- | libweston/backend-rdp/rdp.h | 8 | ||||
-rw-r--r-- | libweston/backend-rdp/rdpdisp.c | 2 |
3 files changed, 5 insertions, 12 deletions
diff --git a/libweston/backend-rdp/rdp.c b/libweston/backend-rdp/rdp.c index c4a1e248..915b7c02 100644 --- a/libweston/backend-rdp/rdp.c +++ b/libweston/backend-rdp/rdp.c @@ -575,9 +575,8 @@ rdp_output_create(struct weston_backend *backend, const char *name) } void -rdp_head_create(struct weston_compositor *compositor, rdpMonitor *config) +rdp_head_create(struct rdp_backend *backend, rdpMonitor *config) { - struct rdp_backend *backend = to_rdp_backend(compositor); struct rdp_head *head; char name[13] = {}; /* "rdp-" + 8 chars for hex uint32_t + NULL. */ @@ -609,7 +608,7 @@ rdp_head_create(struct weston_compositor *compositor, rdpMonitor *config) head->base.backend = &backend->base; weston_head_set_connection_status(&head->base, true); - weston_compositor_add_head(compositor, &head->base); + weston_compositor_add_head(backend->compositor, &head->base); } void @@ -1884,7 +1883,7 @@ rdp_backend_create(struct weston_compositor *compositor, NULL) < 0) goto err_compositor; - rdp_head_create(compositor, NULL); + rdp_head_create(b, NULL); compositor->capabilities |= WESTON_CAP_ARBITRARY_MODES; diff --git a/libweston/backend-rdp/rdp.h b/libweston/backend-rdp/rdp.h index 43ff2a57..11b12734 100644 --- a/libweston/backend-rdp/rdp.h +++ b/libweston/backend-rdp/rdp.h @@ -251,7 +251,7 @@ rdp_clipboard_destroy(RdpPeerContext *peerCtx); /* rdp.c */ void -rdp_head_create(struct weston_compositor *compositor, rdpMonitor *config); +rdp_head_create(struct rdp_backend *backend, rdpMonitor *config); void rdp_destroy(struct weston_backend *backend); @@ -278,10 +278,4 @@ to_rdp_output(struct weston_output *base) return container_of(base, struct rdp_output, base); } -static inline struct rdp_backend * -to_rdp_backend(struct weston_compositor *base) -{ - return container_of(base->backend, struct rdp_backend, base); -} - #endif diff --git a/libweston/backend-rdp/rdpdisp.c b/libweston/backend-rdp/rdpdisp.c index 3ad55423..3e2ee210 100644 --- a/libweston/backend-rdp/rdpdisp.c +++ b/libweston/backend-rdp/rdpdisp.c @@ -213,7 +213,7 @@ disp_layout_change(freerdp_peer *client, rdpMonitor *config, UINT32 monitorCount /* Create new heads for any without matches */ if (!(done & (1 << i))) - rdp_head_create(b->compositor, &config[i]); + rdp_head_create(b, &config[i]); } peerCtx->desktop_left = desktop.extents.x1; peerCtx->desktop_top = desktop.extents.y1; |