diff options
author | Jonas Ådahl <jadahl@gmail.com> | 2019-11-08 11:31:29 +0100 |
---|---|---|
committer | Jonas Ådahl <jadahl@gmail.com> | 2020-02-11 18:32:07 +0100 |
commit | 3a8c545b32eb09247d86ef19d83029b94f040734 (patch) | |
tree | bc1fda90cfaa212a5d47c1a648787385149c99eb /src/backends/native | |
parent | 6c1e9b51f9215d449690238db80f43de1682ce50 (diff) | |
download | mutter-3a8c545b32eb09247d86ef19d83029b94f040734.tar.gz |
kms/device: Add getter for finding cursor planes
Works the same as the getter for the primary planes.
https://gitlab.gnome.org/GNOME/mutter/merge_requests/930
Diffstat (limited to 'src/backends/native')
-rw-r--r-- | src/backends/native/meta-kms-device.c | 23 | ||||
-rw-r--r-- | src/backends/native/meta-kms-device.h | 3 |
2 files changed, 22 insertions, 4 deletions
diff --git a/src/backends/native/meta-kms-device.c b/src/backends/native/meta-kms-device.c index c6a05e83c..376ac5a91 100644 --- a/src/backends/native/meta-kms-device.c +++ b/src/backends/native/meta-kms-device.c @@ -89,9 +89,10 @@ meta_kms_device_get_planes (MetaKmsDevice *device) return device->planes; } -MetaKmsPlane * -meta_kms_device_get_primary_plane_for (MetaKmsDevice *device, - MetaKmsCrtc *crtc) +static MetaKmsPlane * +get_plane_with_type_for (MetaKmsDevice *device, + MetaKmsCrtc *crtc, + MetaKmsPlaneType type) { GList *l; @@ -99,7 +100,7 @@ meta_kms_device_get_primary_plane_for (MetaKmsDevice *device, { MetaKmsPlane *plane = l->data; - if (meta_kms_plane_get_plane_type (plane) != META_KMS_PLANE_TYPE_PRIMARY) + if (meta_kms_plane_get_plane_type (plane) != type) continue; if (meta_kms_plane_is_usable_with (plane, crtc)) @@ -109,6 +110,20 @@ meta_kms_device_get_primary_plane_for (MetaKmsDevice *device, return NULL; } +MetaKmsPlane * +meta_kms_device_get_primary_plane_for (MetaKmsDevice *device, + MetaKmsCrtc *crtc) +{ + return get_plane_with_type_for (device, crtc, META_KMS_PLANE_TYPE_PRIMARY); +} + +MetaKmsPlane * +meta_kms_device_get_cursor_plane_for (MetaKmsDevice *device, + MetaKmsCrtc *crtc) +{ + return get_plane_with_type_for (device, crtc, META_KMS_PLANE_TYPE_CURSOR); +} + void meta_kms_device_update_states_in_impl (MetaKmsDevice *device) { diff --git a/src/backends/native/meta-kms-device.h b/src/backends/native/meta-kms-device.h index ea0f9aab5..d3d655fec 100644 --- a/src/backends/native/meta-kms-device.h +++ b/src/backends/native/meta-kms-device.h @@ -42,6 +42,9 @@ GList * meta_kms_device_get_crtcs (MetaKmsDevice *device); MetaKmsPlane * meta_kms_device_get_primary_plane_for (MetaKmsDevice *device, MetaKmsCrtc *crtc); +MetaKmsPlane * meta_kms_device_get_cursor_plane_for (MetaKmsDevice *device, + MetaKmsCrtc *crtc); + int meta_kms_device_dispatch_sync (MetaKmsDevice *device, GError **error); |