summaryrefslogtreecommitdiffstats
path: root/src/core/compositor/display_software_output_surface.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/compositor/display_software_output_surface.cpp')
-rw-r--r--src/core/compositor/display_software_output_surface.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/core/compositor/display_software_output_surface.cpp b/src/core/compositor/display_software_output_surface.cpp
index b1a357615..218bff94a 100644
--- a/src/core/compositor/display_software_output_surface.cpp
+++ b/src/core/compositor/display_software_output_surface.cpp
@@ -67,6 +67,8 @@ public:
void swapFrame() override;
QImage image() override;
float devicePixelRatio() override;
+ QSize size() override;
+ bool hasAlphaChannel() override;
private:
mutable QMutex m_mutex;
@@ -154,6 +156,16 @@ float DisplaySoftwareOutputSurface::Device::devicePixelRatio()
return m_imageDevicePixelRatio;
}
+QSize DisplaySoftwareOutputSurface::Device::size()
+{
+ return m_image.size();
+}
+
+bool DisplaySoftwareOutputSurface::Device::hasAlphaChannel()
+{
+ return m_image.format() == QImage::Format_ARGB32_Premultiplied;
+}
+
DisplaySoftwareOutputSurface::DisplaySoftwareOutputSurface()
: SoftwareOutputSurface(std::make_unique<Device>())
{}