diff options
Diffstat (limited to 'vcl/win/source/gdi/winlayout.cxx')
-rw-r--r-- | vcl/win/source/gdi/winlayout.cxx | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/vcl/win/source/gdi/winlayout.cxx b/vcl/win/source/gdi/winlayout.cxx index 8457c559da4a..3778db308536 100644 --- a/vcl/win/source/gdi/winlayout.cxx +++ b/vcl/win/source/gdi/winlayout.cxx @@ -215,7 +215,18 @@ void WinLayout::DrawText(SalGraphics& rGraphics) const COLORREF color = GetTextColor(hDC); SalColor salColor = MAKE_SALCOLOR(GetRValue(color), GetGValue(color), GetBValue(color)); - aDC.DrawMask(salColor); + WinOpenGLSalGraphicsImpl *pImpl = dynamic_cast<WinOpenGLSalGraphicsImpl*>(rWinGraphics.mpImpl.get()); + if (pImpl) + { + OpenGLTexture *pTexture = aDC.getTexture(); + if (pTexture) + { + pImpl->PreDraw(); + pImpl->DrawMask(*pTexture, salColor, aDC.getTwoRect()); + pImpl->PostDraw(); + delete pTexture; + } + } } } |