e9d1272
From 70eb2fccb1fb43e6d7b2b0486d55fa5ef99c6998 Mon Sep 17 00:00:00 2001
e9d1272
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
e9d1272
Date: Fri, 24 Apr 2015 11:01:50 +0100
e9d1272
Subject: [PATCH] Resolves: tdf#73211 gtk checkboxes need erase afer toggling
e9d1272
e9d1272
because an unchecked checkbox can have a smaller paint area
e9d1272
than a checked checkbox. This has always bugged me
e9d1272
e9d1272
(cherry picked from commit d194074aa34e3724dd9b93fbc81bf2ba793cd37a)
e9d1272
e9d1272
Conflicts:
e9d1272
	vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx
e9d1272
e9d1272
Change-Id: Iac0f075089611b47c381863a9655445d732bfddc
e9d1272
---
e9d1272
 vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx      | 2 ++
e9d1272
 vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx | 7 ++++++-
e9d1272
 2 files changed, 8 insertions(+), 1 deletion(-)
e9d1272
e9d1272
diff --git a/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx b/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx
e9d1272
index 2c6036b..828f5aa 100644
e9d1272
--- a/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx
e9d1272
+++ b/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx
e9d1272
@@ -538,6 +538,8 @@ void GtkData::initNWF( void )
e9d1272
     pSVData->maNWFData.mnMenuFormatBorderX = xthickness + horizontal_padding;
e9d1272
     pSVData->maNWFData.mnMenuFormatBorderY = ythickness + vertical_padding;
e9d1272
 
e9d1272
+    pSVData->maNWFData.mbCheckBoxNeedsErase = true;
e9d1272
+
e9d1272
     if( SalGetDesktopEnvironment() == "KDE" )
e9d1272
     {
e9d1272
         // #i97196# ensure a widget exists and the style engine was loaded
e9d1272
diff --git a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx
e9d1272
index 0bb0c34..9d11e5e 100644
e9d1272
--- a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx
e9d1272
+++ b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx
e9d1272
@@ -1470,7 +1470,12 @@ bool GtkSalGraphics::IsNativeControlSupported( ControlType nType, ControlPart nP
e9d1272
     return false;
e9d1272
 }
e9d1272
 
e9d1272
-void GtkData::initNWF() {}
e9d1272
+void GtkData::initNWF()
e9d1272
+{
e9d1272
+    ImplSVData* pSVData = ImplGetSVData();
e9d1272
+    pSVData->maNWFData.mbCheckBoxNeedsErase = true;
e9d1272
+}
e9d1272
+
e9d1272
 void GtkData::deInitNWF() {}
e9d1272
 
e9d1272
 void GtkSalGraphics::getStyleContext(GtkStyleContext** style, GtkWidget* widget)
e9d1272
-- 
e9d1272
2.1.0
e9d1272