[Libreoffice-commits] core.git: Branch 'libreoffice-6-0' - sc/source
Caolán McNamara
caolanm at redhat.com
Fri Apr 13 15:10:44 UTC 2018
sc/source/ui/view/gridwin4.cxx | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
New commits:
commit ccb90e3266336d6b022c48ec90cd55450c9c209e
Author: Caolán McNamara <caolanm at redhat.com>
Date: Thu Apr 12 14:53:20 2018 +0100
Related: tdf#100925 background not getting set under X sometimes
not sure why this is the case, but it is reminiscent of rhbz#1283420 which
results in missing glyphs in some circumstances
X11CairoTextRender::getCairoContext has a hack in it for that problem, whic
forces a read from the underlying X Drawable before writing to it which seems
to have the effect of syncing it up.
So, just before drawing the bg, draw a glyph on it to get it synced, and then
overwrite it.
Change-Id: I2ffff7e8e989b91821869d8b75a59728ac513d1b
Reviewed-on: https://gerrit.libreoffice.org/52818
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Eike Rathke <erack at redhat.com>
diff --git a/sc/source/ui/view/gridwin4.cxx b/sc/source/ui/view/gridwin4.cxx
index 92b0eee6cc96..83d4e18ce8cd 100644
--- a/sc/source/ui/view/gridwin4.cxx
+++ b/sc/source/ui/view/gridwin4.cxx
@@ -1021,7 +1021,12 @@ void ScGridWindow::DrawContent(OutputDevice &rDevice, const ScTableInfo& rTableI
}
// paint the background
- rDevice.DrawRect(rDevice.PixelToLogic(aBackground));
+ tools::Rectangle aLogicRect(rDevice.PixelToLogic(aBackground));
+ //tdf#100925, rhbz#1283420, Draw some text here, to get
+ //X11CairoTextRender::getCairoContext called, so that the forced read
+ //from the underlying X Drawable gets it to sync.
+ rDevice.DrawText(aLogicRect.BottomLeft(), " ");
+ rDevice.DrawRect(aLogicRect);
// paint the editeng text
tools::Rectangle aEditRect(Point(nScrX, nScrY), Size(aOutputData.GetScrW(), aOutputData.GetScrH()));
More information about the Libreoffice-commits
mailing list