backport to M3_version_2_1 PR26121
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java index 7a9f45c..37f024f 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java
@@ -33,6 +33,7 @@ int fixedHandle, imHandle; Composite parent; Menu menu; + Font font; String toolTipText; Object layoutData; Accessible accessible; @@ -1326,7 +1327,8 @@ */ public Font getFont () { checkWidget(); - return Font.gtk_new (getDisplay (), getFontDescription ()); + if (font != null) return font; + return Font.gtk_new (getDisplay (), defaultFont ()); } int getFontDescription () { @@ -1754,7 +1756,7 @@ data.device = getDisplay (); data.background = background; data.foreground = foreground; - data.font = style.font_desc; + data.font = font != null ? font.handle : defaultFont (); } return gdkGC; } @@ -2171,6 +2173,7 @@ */ public void setFont (Font font) { checkWidget(); + this.font = font; int fontDesc; if (font == null) { fontDesc = defaultFont ();