diff --git a/src/backends/native/meta-kms-connector.c b/src/backends/native/meta-kms-connector.c index 7723416aa..afd3d5e0f 100644 --- a/src/backends/native/meta-kms-connector.c +++ b/src/backends/native/meta-kms-connector.c @@ -97,6 +97,13 @@ meta_kms_connector_get_device (MetaKmsConnector *connector) return meta_kms_impl_device_get_device (connector->impl_device); } +static gboolean +meta_kms_connector_has_prop (MetaKmsConnector *connector, + MetaKmsConnectorProp prop) +{ + return connector->prop_table.props[prop].prop_id > 0; +} + uint32_t meta_kms_connector_get_prop_id (MetaKmsConnector *connector, MetaKmsConnectorProp prop) @@ -189,6 +196,20 @@ meta_kms_connector_is_non_desktop (MetaKmsConnector *connector) return connector->current_state->non_desktop; } +gboolean +meta_kms_connector_supports_colorspace (MetaKmsConnector *connector) +{ + return meta_kms_connector_has_prop (connector, + META_KMS_CONNECTOR_PROP_COLORSPACE); +} + +gboolean +meta_kms_connector_supports_hdr_metadata (MetaKmsConnector *connector) +{ + return meta_kms_connector_has_prop (connector, + META_KMS_CONNECTOR_PROP_HDR_OUTPUT_METADATA); +} + static gboolean has_privacy_screen_software_toggle (MetaKmsConnector *connector) { diff --git a/src/backends/native/meta-kms-connector.h b/src/backends/native/meta-kms-connector.h index 328465d0f..3a7d7601f 100644 --- a/src/backends/native/meta-kms-connector.h +++ b/src/backends/native/meta-kms-connector.h @@ -103,3 +103,7 @@ META_EXPORT_TEST const MetaKmsConnectorState * meta_kms_connector_get_current_state (MetaKmsConnector *connector); gboolean meta_kms_connector_is_non_desktop (MetaKmsConnector *connector); + +gboolean meta_kms_connector_supports_colorspace (MetaKmsConnector *connector); + +gboolean meta_kms_connector_supports_hdr_metadata (MetaKmsConnector *connector);