summaryrefslogtreecommitdiff
path: root/vcl/skia/x11
diff options
context:
space:
mode:
authorLuboš Luňák <l.lunak@collabora.com>2019-10-29 16:30:42 +0100
committerLuboš Luňák <l.lunak@collabora.com>2019-11-27 09:55:13 +0100
commit458cac4674dde9c89cffb028a5d174ea61f3b81b (patch)
tree0c596dbe4fa4007ef4c34b1bad6e719e80bbf0f0 /vcl/skia/x11
parent124f20c6828f2132b17203c82827bc97f6371b47 (diff)
add a TODO note about Skia Vulkan surface getting recreated too often
Change-Id: I558c5c161224e5ba5835fb5ec994e585c90ec14c
Diffstat (limited to 'vcl/skia/x11')
-rw-r--r--vcl/skia/x11/gdiimpl.cxx4
1 files changed, 4 insertions, 0 deletions
diff --git a/vcl/skia/x11/gdiimpl.cxx b/vcl/skia/x11/gdiimpl.cxx
index 29119f092ac9..f4575d8af867 100644
--- a/vcl/skia/x11/gdiimpl.cxx
+++ b/vcl/skia/x11/gdiimpl.cxx
@@ -53,6 +53,10 @@ void X11SkiaSalGraphicsImpl::createSurface()
assert(winInfo.fDisplay && winInfo.fWindow != None);
winInfo.fFBConfig = nullptr; // not used
winInfo.fVisualInfo = const_cast<SalVisual*>(&mX11Parent.GetVisual());
+ // TODO Vulkan does not use these dimensions, instead it uses dimensions of the actual
+ // drawable, which may lead to repeated createSurface() calls from checkSurface()
+ // if the window is being resized and VCL already knows the new size but Vulkan doesn't.
+ // Avoid this somehow.
winInfo.fWidth = GetWidth();
winInfo.fHeight = GetHeight();
destroySurface();