diff options
author | Alexander Kurtakov | 2020-03-12 17:10:04 +0000 |
---|---|---|
committer | Alexander Kurtakov | 2020-03-12 18:39:28 +0000 |
commit | 593b5cd2a666c5f7e2b61577f5d656dab6306026 (patch) | |
tree | 2593d5f0812ca7b541cc36d7f792bfec0e0f45fc | |
parent | c5cd5196ce6d290ce29426b4d7e79435df4fcc4b (diff) | |
download | eclipse.platform.swt-593b5cd2a666c5f7e2b61577f5d656dab6306026.tar.gz eclipse.platform.swt-593b5cd2a666c5f7e2b61577f5d656dab6306026.tar.xz eclipse.platform.swt-593b5cd2a666c5f7e2b61577f5d656dab6306026.zip |
Bug 561047 - Require Gtk 3.20+ as minimum
Drop css machinery for pre 3.20 Gtk.
Change-Id: I703b8797a85e11cd46e96c5e5063eb684f59f207
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
15 files changed, 66 insertions, 133 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/swt_functional_gtk_pre_3_20.css b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/swt_functional_gtk_pre_3_20.css deleted file mode 100644 index 4ed146c449..0000000000 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/swt_functional_gtk_pre_3_20.css +++ /dev/null @@ -1,13 +0,0 @@ -/* These CSS fixes have 'functinal' impact, no visual impact. E.g allow keyboard navigation in trees etc.. */ -.undershoot.top, .undershoot.right, .undershoot.bottom, .undershoot.lef { - background-image: none; -} - -@binding-set SWTTreeViewBinding { - bind "Left" { "expand-collapse-cursor-row" (0,0,0)}; - bind "Right" {"expand-collapse-cursor-row" (0,1,0)}; -} - -GtkTreeView { - gtk-key-bindings: SWTTreeViewBinding; -}
\ No newline at end of file diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/swt_theming_fixes_gtk_pre_3_20.css b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/swt_theming_fixes_gtk_pre_3_20.css deleted file mode 100644 index 4b68e8a08b..0000000000 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/swt_theming_fixes_gtk_pre_3_20.css +++ /dev/null @@ -1,15 +0,0 @@ -/* These have an impact on visual aspects of SWT. Padding etc.. - There should not be hard-coded color fixes because this can break dark variants of themes. - Instead either use OS.setDarkThemePreferred() if your theme has dark version or style manually via api */ -GtkToolbar { - padding-top: 2px; - padding-bottom: 2px; -} - -GtkToolbar GtkButton { - padding: 2px 4px 2px 4px; -} - -GtkToolbar GtkMenuButton { - padding: 1px 0px 1px 0px; -}
\ No newline at end of file diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/graphics/Device.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/graphics/Device.java index 51918b63db..3717bc9ebb 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/graphics/Device.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/graphics/Device.java @@ -724,11 +724,7 @@ private void overrideThemeValues () { StringBuilder combinedCSS = new StringBuilder(); // Load functional CSS fixes. Such as keyboard functionality for some widgets. - combinedCSS.append(load.apply( - GTK.GTK_VERSION < OS.VERSION(3, 20, 0) ? - "/org/eclipse/swt/internal/gtk/swt_functional_gtk_pre_3_20.css" : - "/org/eclipse/swt/internal/gtk/swt_functional_gtk_3_20.css" - , true)); + combinedCSS.append(load.apply("/org/eclipse/swt/internal/gtk/swt_functional_gtk_3_20.css", true)); // By default, load CSS theme fixes to overcome things such as excessive padding that breaks SWT otherwise. // Initially designed for Adwaita light/dark theme, but after investigation other themes (like Ubuntu's Ambiance + dark) seem to benefit from this also. @@ -739,13 +735,9 @@ private void overrideThemeValues () { // - These fixes should not contain any color information, otherwise it might break a light/dark variant of the theme. // Color fixes should be put either into the theme itself or via swt user api. if (System.getProperty("org.eclipse.swt.internal.gtk.noThemingFixes") == null) { - if (GTK.GTK_VERSION >= OS.VERSION(3, 20, 0)) { - combinedCSS.append(load.apply("/org/eclipse/swt/internal/gtk/swt_theming_fixes_gtk_3_20.css", true)); - if (GTK.GTK_VERSION >= OS.VERSION(3, 24, 5)) { - combinedCSS.append(load.apply("/org/eclipse/swt/internal/gtk/swt_theming_fixes_gtk_3_24_5.css", true)); - } - } else { - combinedCSS.append(load.apply("/org/eclipse/swt/internal/gtk/swt_theming_fixes_gtk_pre_3_20.css", true)); + combinedCSS.append(load.apply("/org/eclipse/swt/internal/gtk/swt_theming_fixes_gtk_3_20.css", true)); + if (GTK.GTK_VERSION >= OS.VERSION(3, 24, 5)) { + combinedCSS.append(load.apply("/org/eclipse/swt/internal/gtk/swt_theming_fixes_gtk_3_24_5.css", true)); } } diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Button.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Button.java index 4223a23612..91d67c7e50 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Button.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Button.java @@ -966,41 +966,34 @@ void setForegroundGdkRGBA (long handle, GdkRGBA rgba) { long context = GTK.gtk_widget_get_style_context (handle); GdkRGBA toSet = rgba == null ? display.COLOR_WIDGET_FOREGROUND_RGBA : rgba; - String name, css; + String css; String color = display.gtk_rgba_to_css_string(toSet); int bits = SWT.CHECK | SWT.RADIO; switch (style & bits) { case SWT.CHECK: - name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "checkbutton" : "GtkCheckButton"; - css = name + " {color: " + color + ";}"; - if (GTK.GTK_VERSION >= OS.VERSION(3, 20, 0)) { - String checkColor; - if (toggleButtonTheming) { - GdkRGBA checkRGBA = rgba == null ? display.COLOR_TOGGLE_BUTTON_FOREGROUND_RGBA : rgba; - checkColor = display.gtk_rgba_to_css_string(checkRGBA); - } else { - checkColor = display.gtk_rgba_to_css_string(toSet); - } - css += " check {color: " + checkColor + ";}"; + css = "checkbutton {color: " + color + ";}"; + String checkColor; + if (toggleButtonTheming) { + GdkRGBA checkRGBA = rgba == null ? display.COLOR_TOGGLE_BUTTON_FOREGROUND_RGBA : rgba; + checkColor = display.gtk_rgba_to_css_string(checkRGBA); + } else { + checkColor = display.gtk_rgba_to_css_string(toSet); } + css += " check {color: " + checkColor + ";}"; break; case SWT.RADIO: - name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "radiobutton" : "GtkRadioButton"; - css = name + " {color: " + color + ";}"; - if (GTK.GTK_VERSION >= OS.VERSION(3, 20, 0)) { - String radioColor; - if (toggleButtonTheming) { - GdkRGBA radioRGBA = rgba == null ? display.COLOR_TOGGLE_BUTTON_FOREGROUND_RGBA : rgba; - radioColor = display.gtk_rgba_to_css_string(radioRGBA); - } else { - radioColor = display.gtk_rgba_to_css_string(toSet); - } - css += " radio {color: " + radioColor + ";}"; + css = "radiobutton {color: " + color + ";}"; + String radioColor; + if (toggleButtonTheming) { + GdkRGBA radioRGBA = rgba == null ? display.COLOR_TOGGLE_BUTTON_FOREGROUND_RGBA : rgba; + radioColor = display.gtk_rgba_to_css_string(radioRGBA); + } else { + radioColor = display.gtk_rgba_to_css_string(toSet); } + css += " radio {color: " + radioColor + ";}"; break; default: - name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "button" : "GtkButton"; - css = name + " {color: " + color + ";}"; + css = "button {color: " + color + ";}"; } // Cache foreground color diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Combo.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Combo.java index f7a6b52986..517461f486 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Combo.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Combo.java @@ -2192,10 +2192,8 @@ void setBackgroundGdkRGBA (long context, long handle, GdkRGBA rgba) { // Set the selected background color GdkRGBA selectedBackground = display.getSystemColor(SWT.COLOR_LIST_SELECTION).handle; GdkRGBA selectedForeground = display.getSystemColor(SWT.COLOR_LIST_SELECTION_TEXT).handle; - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "entry" : "GtkEntry"; - String selection = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? " selection" : ":selected"; - css += name + selection + " {background-color: " + display.gtk_rgba_to_css_string(selectedBackground) + ";}\n"; - css += name + selection + " {color: " + display.gtk_rgba_to_css_string(selectedForeground) + ";}"; + css += "entry selection {background-color: " + display.gtk_rgba_to_css_string(selectedBackground) + ";}\n"; + css += "entry selection {color: " + display.gtk_rgba_to_css_string(selectedForeground) + ";}"; // Cache background color cssBackground = css; 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 dce460fbfe..4eaa7aaf33 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 @@ -4983,8 +4983,7 @@ private void _setBackground (Color color) { void setBackgroundGdkRGBA (long context, long handle, GdkRGBA rgba) { GdkRGBA selectedBackground = display.getSystemColor(SWT.COLOR_LIST_SELECTION).handle; // Form background string - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? display.gtk_widget_class_get_css_name(handle) - : display.gtk_widget_get_name(handle); + String name = display.gtk_widget_class_get_css_name(handle); String css = name + " {background-color: " + display.gtk_rgba_to_css_string(rgba) + ";}\n" + name + ":selected" + " {background-color: " + display.gtk_rgba_to_css_string(selectedBackground) + ";}"; @@ -5382,11 +5381,9 @@ void setForegroundGdkRGBA (long handle, GdkRGBA rgba) { long context = GTK.gtk_widget_get_style_context (handle); // Form foreground string String color = display.gtk_rgba_to_css_string(toSet); - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? display.gtk_widget_class_get_css_name(handle) - : display.gtk_widget_get_name(handle); + String name = display.gtk_widget_class_get_css_name(handle); GdkRGBA selectedForeground = display.COLOR_LIST_SELECTION_TEXT_RGBA; - String selection = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) && - !name.contains("treeview") ? " selection" : ":selected"; + String selection = !name.contains("treeview") ? " selection" : ":selected"; String css = "* {color: " + color + ";}\n" + name + selection + " {color: " + display.gtk_rgba_to_css_string(selectedForeground) + ";}"; diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/DateTime.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/DateTime.java index d430711368..2b9d271b80 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/DateTime.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/DateTime.java @@ -1391,15 +1391,14 @@ void setBackgroundGdkRGBA (long context, long handle, GdkRGBA rgba) { // "background-color" as their CSS property. // Form background string - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? display.gtk_widget_class_get_css_name(handle) - : display.gtk_widget_get_name(handle); + String name = display.gtk_widget_class_get_css_name(handle); String css = name + " {background: " + display.gtk_rgba_to_css_string (rgba) + ";}\n" + name + ":selected" + " {background: " + display.gtk_rgba_to_css_string(display.COLOR_LIST_SELECTION_RGBA) + ";}"; - // Cache background - cssBackground = css; + // Cache background + cssBackground = css; - // Apply background color and any cached foreground color + // Apply background color and any cached foreground color String finalCss = display.gtk_css_create_css_color_string (cssBackground, cssForeground, SWT.BACKGROUND); gtk_css_provider_load_from_css (context, finalCss); } diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Spinner.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Spinner.java index e8f60258ad..3ffbfa70fa 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Spinner.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Spinner.java @@ -935,9 +935,7 @@ void setBackgroundGdkRGBA (long context, long handle, GdkRGBA rgba) { super.setBackgroundGdkRGBA(context, handle, rgba); } else { String color = display.gtk_rgba_to_css_string (background); - String properties = " {background-image: -gtk-gradient (linear, 0 0, 0 1, color-stop(0, " + color + "), color-stop(1, " + color + "));}"; - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "spinbutton" : "GtkSpinButton"; - String css = name + properties; + String css = "spinbutton {background-image: -gtk-gradient (linear, 0 0, 0 1, color-stop(0, " + color + "), color-stop(1, " + color + "));}"; cssBackground = css; diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TabFolder.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TabFolder.java index 475bf14abc..e8e62854f3 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TabFolder.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TabFolder.java @@ -730,8 +730,7 @@ void reskinChildren (int flags) { @Override void setBackgroundGdkRGBA (long context, long handle, GdkRGBA rgba) { // Form background string - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "notebook header" : "GtkNotebook.header"; - String css = name + " {background-color: " + display.gtk_rgba_to_css_string (rgba) + ";}"; + String css = "notebook header {background-color: " + display.gtk_rgba_to_css_string (rgba) + ";}"; // Cache background cssBackground = css; diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Table.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Table.java index e4a4522994..c1d08387ed 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Table.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Table.java @@ -3376,14 +3376,13 @@ void setBackgroundGdkRGBA (long context, long handle, GdkRGBA rgba) { background = rgba; } GdkRGBA selectedBackground = display.getSystemColor(SWT.COLOR_LIST_SELECTION).handle; - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "treeview" : "GtkTreeView"; - String css = name + " {background-color: " + display.gtk_rgba_to_css_string(background) + ";}\n" - + name + ":selected {background-color: " + display.gtk_rgba_to_css_string(selectedBackground) + ";}"; + String css = "treeview {background-color: " + display.gtk_rgba_to_css_string(background) + ";}\n"+ + "treeview:selected {background-color: " + display.gtk_rgba_to_css_string(selectedBackground) + ";}"; - // Cache background color - cssBackground = css; + // Cache background color + cssBackground = css; - // Apply background color and any foreground color + // Apply background color and any foreground color String finalCss = display.gtk_css_create_css_color_string (cssBackground, cssForeground, SWT.BACKGROUND); gtk_css_provider_load_from_css(context, finalCss); } @@ -3510,9 +3509,8 @@ public void setHeaderBackground(Color color) { } else { background = defaultBackground(); } - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "button" : "GtkButton"; // background works for 3.18 and later, background-color only as of 3.20 - String css = name + " {background: " + display.gtk_rgba_to_css_string(background) + ";}\n"; + String css = "button {background: " + display.gtk_rgba_to_css_string(background) + ";}\n"; headerCSSBackground = css; String finalCss = display.gtk_css_create_css_color_string (headerCSSBackground, headerCSSForeground, SWT.BACKGROUND); for (TableColumn column : columns) { @@ -3567,8 +3565,7 @@ public void setHeaderForeground (Color color) { } else { foreground = display.COLOR_LIST_FOREGROUND_RGBA; } - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "button" : "GtkButton"; - String css = name + " {color: " + display.gtk_rgba_to_css_string(foreground) + ";}"; + String css = "button {color: " + display.gtk_rgba_to_css_string(foreground) + ";}"; headerCSSForeground = css; String finalCss = display.gtk_css_create_css_color_string (headerCSSBackground, headerCSSForeground, SWT.FOREGROUND); for (TableColumn column : columns) { diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Text.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Text.java index 90bd707f7d..6da67feb98 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Text.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Text.java @@ -2210,20 +2210,16 @@ void setBackgroundGdkRGBA (long context, long handle, GdkRGBA rgba) { GdkRGBA selectedForeground = display.getSystemColor(SWT.COLOR_LIST_SELECTION_TEXT).handle; String css; String properties; - String name; - String selection = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? " selection" : ":selected"; if ((style & SWT.SINGLE) != 0) { - name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "entry" : "GtkEntry"; - properties = " {background: " + display.gtk_rgba_to_css_string(background) + ";}\n" - + name + ":selected {background-color: " + display.gtk_rgba_to_css_string(selectedBackground) + ";}\n" - + name + selection + " {color: " + display.gtk_rgba_to_css_string(selectedForeground) + ";}"; + properties = "entry {background: " + display.gtk_rgba_to_css_string(background) + ";}\n" + + "entry:selected {background-color: " + display.gtk_rgba_to_css_string(selectedBackground) + ";}\n" + + "entry selection {color: " + display.gtk_rgba_to_css_string(selectedForeground) + ";}"; } else { - name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "textview text" : "GtkTextView"; - properties = " {background-color: " + display.gtk_rgba_to_css_string(background) + ";}\n" - + name + ":selected {background-color: " + display.gtk_rgba_to_css_string(selectedBackground) + ";}\n" - + name + selection + " {color: " + display.gtk_rgba_to_css_string(selectedForeground) + ";}"; + properties = "textview {background-color: " + display.gtk_rgba_to_css_string(background) + ";}\n" + + "textview text:selected {background-color: " + display.gtk_rgba_to_css_string(selectedBackground) + ";}\n" + + "textview text selection {color: " + display.gtk_rgba_to_css_string(selectedForeground) + ";}"; } - css = name + properties; + css = properties; // Cache background color cssBackground = css; diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ToolBar.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ToolBar.java index 2f126959e5..1268b34280 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ToolBar.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ToolBar.java @@ -588,13 +588,12 @@ int setBounds (int x, int y, int width, int height, boolean move, boolean resize @Override void setBackgroundGdkRGBA (long context, long handle, GdkRGBA rgba) { // Form background string - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "toolbar" : "GtkToolbar"; - String css = name + " {background-color: " + display.gtk_rgba_to_css_string(rgba) + "}"; + String css = "toolbar {background-color: " + display.gtk_rgba_to_css_string(rgba) + "}"; - // Cache background color - this.cssBackground = css; + // Cache background color + this.cssBackground = css; - // Apply background color and any foreground color + // Apply background color and any foreground color String finalCss = display.gtk_css_create_css_color_string (this.cssBackground, this.cssForeground, SWT.BACKGROUND); gtk_css_provider_load_from_css(context, finalCss); } @@ -616,17 +615,15 @@ void setForegroundGdkRGBA (long handle, GdkRGBA rgba) { long context = GTK.gtk_widget_get_style_context (handle); // Form foreground string String color = display.gtk_rgba_to_css_string(toSet); - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? display.gtk_widget_class_get_css_name(handle) - : display.gtk_widget_get_name(handle); + String name = display.gtk_widget_class_get_css_name(handle); GdkRGBA selectedForeground = display.COLOR_LIST_SELECTION_TEXT_RGBA; - String selection = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? " selection" : ":selected"; String css = "* {color: " + color + ";}\n" - + name + selection + " {color: " + display.gtk_rgba_to_css_string(selectedForeground) + ";}"; + + name + " selection {color: " + display.gtk_rgba_to_css_string(selectedForeground) + ";}"; - // Cache foreground color - this.cssForeground = css; + // Cache foreground color + this.cssForeground = css; - // Apply foreground color and any cached background color + // Apply foreground color and any cached background color String finalCss = display.gtk_css_create_css_color_string (this.cssBackground, this.cssForeground, SWT.FOREGROUND); gtk_css_provider_load_from_css(context, finalCss); } diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ToolTip.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ToolTip.java index 9aae4dcd43..1b07d65527 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ToolTip.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ToolTip.java @@ -285,8 +285,7 @@ void createHandle (int index) { Color background = display.getSystemColor (SWT.COLOR_INFO_BACKGROUND); long context = GTK.gtk_widget_get_style_context (handle); GdkRGBA bgRGBA = background.handle; - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "window" : "GtkWindow"; - String css = name + " {background-color: " + display.gtk_rgba_to_css_string(bgRGBA) + ";}"; + String css = "window {background-color: " + display.gtk_rgba_to_css_string(bgRGBA) + ";}"; gtk_css_provider_load_from_css (context, css); GTK.gtk_style_context_invalidate (context); GTK.gtk_window_set_type_hint (handle, GDK.GDK_WINDOW_TYPE_HINT_TOOLTIP); diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tracker.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tracker.java index 1ba12ae76d..5b244d8001 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tracker.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tracker.java @@ -872,14 +872,13 @@ private void setTrackerBackground(boolean opaque) { } else if (opaque == cachedBackgroundIsOpaque.booleanValue()) { return; } - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "window" : "GtkWindow"; String css; if (opaque) { GTK.gtk_widget_set_opacity (overlay, 1.0); - css = name + " {background-color: rgb(0,0,0);}"; + css = "window {background-color: rgb(0,0,0);}"; } else { GTK.gtk_widget_set_opacity (overlay, 0.0); - css = name + " { " + css = "window { " + "border-top-color: transparent;" + "border-left-color: transparent;" + "border-right-color: transparent;" diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tree.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tree.java index 1599ded0d0..76bee3fd0b 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tree.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Tree.java @@ -3499,14 +3499,13 @@ void setBackgroundGdkRGBA (long context, long handle, GdkRGBA rgba) { background = rgba; } GdkRGBA selectedBackground = display.getSystemColor(SWT.COLOR_LIST_SELECTION).handle; - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "treeview" : "GtkTreeView"; - String css = name + " {background-color: " + display.gtk_rgba_to_css_string(background) + ";}\n" - + name + ":selected {background-color: " + display.gtk_rgba_to_css_string(selectedBackground) + ";}"; + String css = "treeview {background-color: " + display.gtk_rgba_to_css_string(background) + ";}\n" + + "treeview:selected {background-color: " + display.gtk_rgba_to_css_string(selectedBackground) + ";}"; - // Cache background color - cssBackground = css; + // Cache background color + cssBackground = css; - // Apply background color and any foreground color + // Apply background color and any foreground color String finalCss = display.gtk_css_create_css_color_string (cssBackground, cssForeground, SWT.BACKGROUND); gtk_css_provider_load_from_css(context, finalCss); } @@ -3634,9 +3633,8 @@ public void setHeaderBackground (Color color) { } else { background = defaultBackground(); } - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "button" : "GtkButton"; // background works for 3.18 and later, background-color only as of 3.20 - String css = name + " {background: " + display.gtk_rgba_to_css_string(background) + ";}\n"; + String css = "button {background: " + display.gtk_rgba_to_css_string(background) + ";}\n"; headerCSSBackground = css; String finalCss = display.gtk_css_create_css_color_string (headerCSSBackground, headerCSSForeground, SWT.BACKGROUND); for (TreeColumn column : columns) { @@ -3691,8 +3689,7 @@ public void setHeaderForeground (Color color) { } else { foreground = display.COLOR_LIST_FOREGROUND_RGBA; } - String name = GTK.GTK_VERSION >= OS.VERSION(3, 20, 0) ? "button" : "GtkButton"; - String css = name + " {color: " + display.gtk_rgba_to_css_string(foreground) + ";}"; + String css = "button {color: " + display.gtk_rgba_to_css_string(foreground) + ";}"; headerCSSForeground = css; String finalCss = display.gtk_css_create_css_color_string (headerCSSBackground, headerCSSForeground, SWT.FOREGROUND); for (TreeColumn column : columns) { |