summaryrefslogtreecommitdiff
path: root/src/helpers/Format.cpp
diff options
context:
space:
mode:
authorArchSav <96357545+ArchSav@users.noreply.github.com>2026-01-21 01:32:32 +1100
committerGitHub <noreply@github.com>2026-01-20 15:32:32 +0100
commitc44292c72339b3d7820ca7444d45bab7e34ec74e (patch)
tree7773726cd2263e61e7c61f55ce2d1007e4733438 /src/helpers/Format.cpp
parentf0b6714539c52ca6fb9cb278584854df2c66876c (diff)
protocols/toplevelExport: Support transparency in toplevel export (#12824)
Diffstat (limited to 'src/helpers/Format.cpp')
-rw-r--r--src/helpers/Format.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/helpers/Format.cpp b/src/helpers/Format.cpp
index 0054c25a..a4efb948 100644
--- a/src/helpers/Format.cpp
+++ b/src/helpers/Format.cpp
@@ -326,3 +326,17 @@ std::string NFormatUtils::drmModifierName(uint64_t mod) {
free(n); // NOLINT(cppcoreguidelines-no-malloc,-warnings-as-errors)
return name;
}
+
+DRMFormat NFormatUtils::alphaFormat(DRMFormat prevFormat) {
+ switch (prevFormat) {
+ case DRM_FORMAT_XRGB8888: return DRM_FORMAT_ARGB8888;
+ case DRM_FORMAT_XBGR8888: return DRM_FORMAT_ABGR8888;
+ case DRM_FORMAT_BGRX8888: return DRM_FORMAT_BGRA8888;
+ case DRM_FORMAT_RGBX8888: return DRM_FORMAT_RGBA8888;
+ case DRM_FORMAT_XRGB2101010: return DRM_FORMAT_ARGB2101010;
+ case DRM_FORMAT_XBGR2101010: return DRM_FORMAT_ABGR2101010;
+ case DRM_FORMAT_RGBX1010102: return DRM_FORMAT_RGBA1010102;
+ case DRM_FORMAT_BGRX1010102: return DRM_FORMAT_BGRA1010102;
+ default: return 0;
+ }
+}