From be6641b4fe238e136f6d27fb7c13b30eaffdf510 Mon Sep 17 00:00:00 2001 From: Eric Williams Date: Mon, 17 Sep 2018 14:15:36 -0400 Subject: Bug 530841: [GTK2] Remove GTK 2.x support Remove remaining guarded code and GTK3 flag. Change-Id: I7a2615b2c1d93f9659b45dd0f3b9f8bb0bb47628 Signed-off-by: Eric Williams --- .../gtk/org/eclipse/swt/internal/gtk/GTK.java | 1 - .../gtk/org/eclipse/swt/widgets/List.java | 24 ++++------- .../gtk/org/eclipse/swt/widgets/ProgressBar.java | 36 +++++----------- .../gtk/org/eclipse/swt/widgets/ScrollBar.java | 4 +- .../gtk/org/eclipse/swt/widgets/ToolTip.java | 7 +-- .../gtk/org/eclipse/swt/widgets/Tracker.java | 50 ++++++---------------- 6 files changed, 32 insertions(+), 90 deletions(-) diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/GTK.java b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/GTK.java index 604050779e..2efd058cea 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/GTK.java +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/GTK.java @@ -226,7 +226,6 @@ public class GTK extends OS { public static final byte[] GTK_NAMED_LABEL_CANCEL = OS.ascii("_Cancel"); public static final int GTK_VERSION = OS.VERSION(GTK.gtk_major_version(), GTK.gtk_minor_version(), GTK.gtk_micro_version()); - public static final boolean GTK3 = GTK_VERSION >= OS.VERSION(3, 0, 0); /** SWT Tools translates TYPE_sizeof() into sizeof(TYPE) at native level. os.c will have a binding to functions auto-generated in os_structs.h */ public static final native int GtkAllocation_sizeof(); diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/List.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/List.java index a4d03abaa4..d70b87f49d 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/List.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/List.java @@ -246,9 +246,7 @@ void createHandle (int index) { } // In GTK 3 font description is inherited from parent widget which is not how SWT has always worked, // reset to default font to get the usual behavior - if (GTK.GTK3) { - setFontDescription(defaultFont().handle); - } + setFontDescription(defaultFont().handle); } @Override @@ -542,11 +540,9 @@ int getItemHeightInPixels () { int [] w = new int [1], h = new int [1]; GTK.gtk_tree_view_column_cell_get_size (column, null, null, null, w, h); int height = h [0]; - if (GTK.GTK3) { - long /*int*/ textRenderer = getTextRenderer (column); - if (textRenderer != 0) GTK.gtk_cell_renderer_get_preferred_height_for_width (textRenderer, handle, 0, h, null); - height += h [0]; - } + long /*int*/ textRenderer = getTextRenderer (column); + if (textRenderer != 0) GTK.gtk_cell_renderer_get_preferred_height_for_width (textRenderer, handle, 0, h, null); + height += h [0]; return height; } else { int height = 0; @@ -555,14 +551,10 @@ int getItemHeightInPixels () { GTK.gtk_tree_view_column_cell_set_cell_data (column, modelHandle, iter, false, false); int [] w = new int [1], h = new int [1]; GTK.gtk_tree_view_column_cell_get_size (column, null, null, null, w, h); - if (GTK.GTK3) { - long /*int*/ textRenderer = getTextRenderer (column); - int [] ypad = new int[1]; - if (textRenderer != 0) GTK.gtk_cell_renderer_get_padding(textRenderer, null, ypad); - height = h [0] + ypad [0]; - } else { - height = h [0]; - } + long /*int*/ textRenderer = getTextRenderer (column); + int [] ypad = new int[1]; + if (textRenderer != 0) GTK.gtk_cell_renderer_get_padding(textRenderer, null, ypad); + height = h [0] + ypad [0]; OS.g_free (iter); return height; } diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ProgressBar.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ProgressBar.java index abd37956df..b6b6ff2662 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ProgressBar.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ProgressBar.java @@ -101,7 +101,7 @@ void createHandle (int index) { @Override long /*int*/ eventHandle () { - return GTK.GTK3 ? fixedHandle : super.eventHandle (); + return fixedHandle; } /** @@ -319,34 +319,18 @@ void updateBar (int selection, int minimum, int maximum) { double fraction = minimum == maximum ? 1 : (double)(selection - minimum) / (maximum - minimum); GTK.gtk_progress_bar_set_fraction (handle, fraction); - if (!GTK.GTK3) { - /* - * Feature in GTK. The progress bar does - * not redraw right away when a value is - * changed. This is not strictly incorrect - * but unexpected. The fix is to force all - * outstanding redraws to be delivered. - */ - long /*int*/ window = paintWindow (); - GDK.gdk_window_process_updates (window, false); - GDK.gdk_flush (); - } } void gtk_orientable_set_orientation (long /*int*/ pbar, int orientation) { - if (GTK.GTK3) { - switch (orientation) { - case GTK.GTK_PROGRESS_BOTTOM_TO_TOP: - GTK.gtk_orientable_set_orientation(pbar, GTK.GTK_ORIENTATION_VERTICAL); - GTK.gtk_progress_bar_set_inverted(pbar, true); - break; - case GTK.GTK_PROGRESS_LEFT_TO_RIGHT: - GTK.gtk_orientable_set_orientation(pbar, GTK.GTK_ORIENTATION_HORIZONTAL); - GTK.gtk_progress_bar_set_inverted(pbar, false); - break; - } - } else { - GTK.gtk_progress_bar_set_orientation(pbar, orientation); + switch (orientation) { + case GTK.GTK_PROGRESS_BOTTOM_TO_TOP: + GTK.gtk_orientable_set_orientation(pbar, GTK.GTK_ORIENTATION_VERTICAL); + GTK.gtk_progress_bar_set_inverted(pbar, true); + break; + case GTK.GTK_PROGRESS_LEFT_TO_RIGHT: + GTK.gtk_orientable_set_orientation(pbar, GTK.GTK_ORIENTATION_HORIZONTAL); + GTK.gtk_progress_bar_set_inverted(pbar, false); + break; } } } diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ScrollBar.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ScrollBar.java index 53429ed5ad..4340b4e544 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ScrollBar.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ScrollBar.java @@ -523,9 +523,7 @@ long /*int*/ gtk_value_changed (long /*int*/ adjustment) { if (!dragSent) detail = GTK.GTK_SCROLL_NONE; sendSelectionEvent (SWT.Selection, event, false); parent.updateScrollBarValue (this); - if (GTK.GTK3) { - GTK.gtk_widget_queue_draw(parent.handle); - } + GTK.gtk_widget_queue_draw(parent.handle); return 0; } 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 a6f523145a..5b6f830ff3 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 @@ -263,12 +263,7 @@ void configure () { GTK.gtk_widget_realize(handle); Region region = new Region (display); region.add(DPIUtil.autoScaleDown(polyline)); - if (GTK.GTK3) { - GTK.gtk_widget_shape_combine_region (handle, region.handle); - } else { - long /*int*/ window = gtk_widget_get_window (handle); - GDK.gdk_window_shape_combine_region (window, region.handle, 0, 0); - } + GTK.gtk_widget_shape_combine_region (handle, region.handle); region.dispose (); } 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 3d5284859f..432aa065b0 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 @@ -539,10 +539,6 @@ long /*int*/ gtk_key_press_event (long /*int*/ widget, long /*int*/ eventPtr) { draw = true; } if (draw) { - if (!GTK.GTK3) { - drawRectangles (rectsToErase); - update (); - } drawRectangles (rectangles); } Point cursorPos = adjustResizeCursor (); @@ -666,10 +662,6 @@ long /*int*/ gtk_mouse (int eventType, long /*int*/ widget, long /*int*/ eventPt draw = true; } if (draw) { - if (!GTK.GTK3) { - drawRectangles (rectsToErase); - update (); - } drawRectangles (rectangles); } Point cursorPos = adjustResizeCursor (); @@ -713,10 +705,6 @@ long /*int*/ gtk_mouse (int eventType, long /*int*/ widget, long /*int*/ eventPt draw = true; } if (draw) { - if (!GTK.GTK3) { - drawRectangles (rectsToErase); - update (); - } drawRectangles (rectangles); } } @@ -763,10 +751,6 @@ public boolean open () { if (window == 0) return false; cancelled = false; tracking = true; - if (!GTK.GTK3) { - update (); - drawRectangles (rectangles); - } int [] oldX = new int [1], oldY = new int [1], state = new int [1]; gdk_window_get_device_position (window, oldX, oldY, state); @@ -803,20 +787,18 @@ public boolean open () { grabbed = grab (); lastCursor = this.cursor != null ? this.cursor.handle : 0; - if (GTK.GTK3) { - cachedCombinedDisplayResolution = Display.getDefault().getBounds(); // In case resolution was changed during run time. - overlay = GTK.gtk_window_new (GTK.GTK_WINDOW_POPUP); - GTK.gtk_window_set_skip_taskbar_hint (overlay, true); - GTK.gtk_window_set_title (overlay, new byte [1]); - GTK.gtk_widget_realize (overlay); - long /*int*/ overlayWindow = GTK.gtk_widget_get_window (overlay); - GDK.gdk_window_set_override_redirect (overlayWindow, true); - setTrackerBackground(true); - Rectangle bounds = display.getBoundsInPixels(); - GTK.gtk_window_move (overlay, bounds.x, bounds.y); - GTK.gtk_window_resize (overlay, bounds.width, bounds.height); - GTK.gtk_widget_show (overlay); - } + cachedCombinedDisplayResolution = Display.getDefault().getBounds(); // In case resolution was changed during run time. + overlay = GTK.gtk_window_new (GTK.GTK_WINDOW_POPUP); + GTK.gtk_window_set_skip_taskbar_hint (overlay, true); + GTK.gtk_window_set_title (overlay, new byte [1]); + GTK.gtk_widget_realize (overlay); + long /*int*/ overlayWindow = GTK.gtk_widget_get_window (overlay); + GDK.gdk_window_set_override_redirect (overlayWindow, true); + setTrackerBackground(true); + Rectangle bounds = display.getBoundsInPixels(); + GTK.gtk_window_move (overlay, bounds.x, bounds.y); + GTK.gtk_window_resize (overlay, bounds.width, bounds.height); + GTK.gtk_widget_show (overlay); /* Tracker behaves like a Dialog with its own OS event loop. */ Display display = this.display; @@ -842,12 +824,6 @@ public boolean open () { } finally { display.tracker = oldTracker; } - if (!isDisposed ()) { - if (!GTK.GTK3) { - update (); - drawRectangles (rectangles); - } - } ungrab (); if (overlay != 0) { GTK.gtk_widget_destroy (overlay); @@ -912,9 +888,7 @@ boolean processEvent (long /*int*/ eventPtr) { break; case GDK.GDK_EXPOSE: update (); - if (!GTK.GTK3) drawRectangles (rectangles); GTK.gtk_main_do_event (eventPtr); - if (!GTK.GTK3) drawRectangles (rectangles); break; default: return true; -- cgit v1.2.3