Add possible capabilities CURSOR_PLANE and ARBITRARY_MODE
The CURSOR_PLANE capability indicates that the backend has a concept of a cursor plane and can handle a cursor without compositing. This is currently only advertised by the DRM backend. The ARBITRARY_MODE flag specifies that the backend is capable of switching to virtually any resolution. This is currently only advertised in the RDP backend. While it's a bit buggy right now, it should be capable of this. Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
parent
a4ab5422e9
commit
9fc7151991
|
@ -2788,6 +2788,11 @@ drm_compositor_create(struct wl_display *display,
|
|||
goto err_sprite;
|
||||
}
|
||||
|
||||
/* A this point we have some idea of whether or not we have a working
|
||||
* cursor plane. */
|
||||
if (!ec->cursors_are_broken)
|
||||
ec->base.capabilities |= WESTON_CAP_CURSOR_PLANE;
|
||||
|
||||
path = NULL;
|
||||
|
||||
if (udev_input_init(&ec->input,
|
||||
|
|
|
@ -1005,7 +1005,9 @@ rdp_compositor_create(struct wl_display *display,
|
|||
if (rdp_compositor_create_output(c, config->width, config->height) < 0)
|
||||
goto err_compositor;
|
||||
|
||||
if (!config->env_socket) {
|
||||
c->base.capabilities |= WESTON_CAP_ARBITRARY_MODES;
|
||||
|
||||
if(!config->env_socket) {
|
||||
c->listener = freerdp_listener_new();
|
||||
c->listener->PeerAccepted = rdp_incoming_peer;
|
||||
c->listener->param4 = c;
|
||||
|
|
|
@ -558,6 +558,12 @@ enum weston_capability {
|
|||
|
||||
/* screencaptures need to be y-flipped */
|
||||
WESTON_CAP_CAPTURE_YFLIP = 0x0002,
|
||||
|
||||
/* backend/renderer has a seperate cursor plane */
|
||||
WESTON_CAP_CURSOR_PLANE = 0x0004,
|
||||
|
||||
/* backend supports setting arbitrary resolutions */
|
||||
WESTON_CAP_ARBITRARY_MODES = 0x0008,
|
||||
};
|
||||
|
||||
struct weston_compositor {
|
||||
|
|
Loading…
Reference in New Issue