Fix some visual glitches when on recent versions of GTK

- ebz#466314, ebz#481122, ebz#466500
This commit is contained in:
Mat Booth 2015-11-27 17:07:50 +00:00
parent 3644239ecd
commit 2a679db694
4 changed files with 363 additions and 1 deletions

165
eclipse-bug-466314.patch Normal file
View File

@ -0,0 +1,165 @@
From eec69d54257dd905a06e43fb705f40df9326414e Mon Sep 17 00:00:00 2001
From: Alexander Kurtakov
Date: Fri, 20 Nov 2015 13:24:54 +0200
Subject: Bug 466314 - [GTK3] Text in Forms abbreviated
Switching from gtk_text_view_scroll_mark_onscreen to
gtk_text_view_scroll_to_mark gives us total control over the alignment
allowing us to alway position to the 0 0.
Change-Id: I4fc141980e96c81cf65ef076a0224f0e4eee47ba
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
---
.../org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c | 20 ++++++++++----------
.../Eclipse SWT PI/gtk/library/os_stats.c | 2 +-
.../Eclipse SWT PI/gtk/library/os_stats.h | 2 +-
.../gtk/org/eclipse/swt/internal/gtk/OS.java | 10 +++++++---
.../gtk/org/eclipse/swt/widgets/Text.java | 12 ++++++------
5 files changed, 25 insertions(+), 21 deletions(-)
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c
index 7e937f0..c0dff7f 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c
+++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c
@@ -16167,16 +16167,6 @@ JNIEXPORT jintLong JNICALL OS_NATIVE(_1gtk_1text_1view_1new)
}
#endif
-#ifndef NO__1gtk_1text_1view_1scroll_1mark_1onscreen
-JNIEXPORT void JNICALL OS_NATIVE(_1gtk_1text_1view_1scroll_1mark_1onscreen)
- (JNIEnv *env, jclass that, jintLong arg0, jintLong arg1)
-{
- OS_NATIVE_ENTER(env, that, _1gtk_1text_1view_1scroll_1mark_1onscreen_FUNC);
- gtk_text_view_scroll_mark_onscreen((GtkTextView *)arg0, (GtkTextMark *)arg1);
- OS_NATIVE_EXIT(env, that, _1gtk_1text_1view_1scroll_1mark_1onscreen_FUNC);
-}
-#endif
-
#ifndef NO__1gtk_1text_1view_1scroll_1to_1iter
JNIEXPORT jboolean JNICALL OS_NATIVE(_1gtk_1text_1view_1scroll_1to_1iter)
(JNIEnv *env, jclass that, jintLong arg0, jbyteArray arg1, jdouble arg2, jboolean arg3, jdouble arg4, jdouble arg5)
@@ -16193,6 +16183,16 @@ fail:
}
#endif
+#ifndef NO__1gtk_1text_1view_1scroll_1to_1mark
+JNIEXPORT void JNICALL OS_NATIVE(_1gtk_1text_1view_1scroll_1to_1mark)
+ (JNIEnv *env, jclass that, jintLong arg0, jintLong arg1, jdouble arg2, jboolean arg3, jdouble arg4, jdouble arg5)
+{
+ OS_NATIVE_ENTER(env, that, _1gtk_1text_1view_1scroll_1to_1mark_FUNC);
+ gtk_text_view_scroll_to_mark((GtkTextView *)arg0, (GtkTextMark *)arg1, (gdouble)arg2, (gboolean)arg3, (gdouble)arg4, (gdouble)arg5);
+ OS_NATIVE_EXIT(env, that, _1gtk_1text_1view_1scroll_1to_1mark_FUNC);
+}
+#endif
+
#ifndef NO__1gtk_1text_1view_1set_1editable
JNIEXPORT void JNICALL OS_NATIVE(_1gtk_1text_1view_1set_1editable)
(JNIEnv *env, jclass that, jintLong arg0, jboolean arg1)
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.c b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.c
index 82775bd..bd9d7b5 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.c
+++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.c
@@ -1183,8 +1183,8 @@ char * OS_nativeFunctionNames[] = {
"_1gtk_1text_1view_1get_1visible_1rect",
"_1gtk_1text_1view_1get_1window",
"_1gtk_1text_1view_1new",
- "_1gtk_1text_1view_1scroll_1mark_1onscreen",
"_1gtk_1text_1view_1scroll_1to_1iter",
+ "_1gtk_1text_1view_1scroll_1to_1mark",
"_1gtk_1text_1view_1set_1editable",
"_1gtk_1text_1view_1set_1justification",
"_1gtk_1text_1view_1set_1tabs",
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.h b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.h
index a1d68ed..016b472 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.h
+++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.h
@@ -1193,8 +1193,8 @@ typedef enum {
_1gtk_1text_1view_1get_1visible_1rect_FUNC,
_1gtk_1text_1view_1get_1window_FUNC,
_1gtk_1text_1view_1new_FUNC,
- _1gtk_1text_1view_1scroll_1mark_1onscreen_FUNC,
_1gtk_1text_1view_1scroll_1to_1iter_FUNC,
+ _1gtk_1text_1view_1scroll_1to_1mark_FUNC,
_1gtk_1text_1view_1set_1editable_FUNC,
_1gtk_1text_1view_1set_1justification_FUNC,
_1gtk_1text_1view_1set_1tabs_FUNC,
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java
index cf8cda6..0ee6dda 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java
@@ -12528,12 +12528,16 @@ public static final long /*int*/ gtk_text_view_new() {
/**
* @param text_view cast=(GtkTextView *)
* @param mark cast=(GtkTextMark *)
+ * @param within_margin cast=(gdouble)
+ * @param use_align cast=(gboolean)
+ * @param xalign cast=(gdouble)
+ * @param yalign cast=(gdouble)
*/
-public static final native void _gtk_text_view_scroll_mark_onscreen(long /*int*/ text_view, long /*int*/ mark);
-public static final void gtk_text_view_scroll_mark_onscreen(long /*int*/ text_view, long /*int*/ mark) {
+public static final native void _gtk_text_view_scroll_to_mark(long /*int*/ text_view, long /*int*/ mark, double within_margin, boolean use_align, double xalign, double yalign);
+public static final void gtk_text_view_scroll_to_mark(long /*int*/ text_view, long /*int*/ mark, double within_margin, boolean use_align, double xalign, double yalign) {
lock.lock();
try {
- _gtk_text_view_scroll_mark_onscreen(text_view, mark);
+ _gtk_text_view_scroll_to_mark(text_view, mark, within_margin, use_align, xalign, yalign);
} finally {
lock.unlock();
}
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 9aa3a52..2865cd5 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
@@ -414,7 +414,7 @@ public void append (String string) {
OS.gtk_text_buffer_insert (bufferHandle, position, buffer, buffer.length);
OS.gtk_text_buffer_place_cursor (bufferHandle, position);
long /*int*/ mark = OS.gtk_text_buffer_get_insert (bufferHandle);
- OS.gtk_text_view_scroll_mark_onscreen (handle, mark);
+ OS.gtk_text_view_scroll_to_mark (handle, mark, 0, true, 0, 0);
}
applySegments ();
}
@@ -1947,7 +1947,7 @@ public void insert (String string) {
OS.gtk_text_buffer_insert (bufferHandle, start, buffer, buffer.length);
OS.gtk_text_buffer_place_cursor (bufferHandle, start);
long /*int*/ mark = OS.gtk_text_buffer_get_insert (bufferHandle);
- OS.gtk_text_view_scroll_mark_onscreen (handle, mark);
+ OS.gtk_text_view_scroll_to_mark (handle, mark, 0, true, 0, 0);
}
applySegments ();
}
@@ -2340,7 +2340,7 @@ public void setSelection (int start) {
OS.gtk_text_buffer_get_iter_at_offset (bufferHandle, startIter, start);
OS.gtk_text_buffer_place_cursor (bufferHandle, startIter);
long /*int*/ mark = OS.gtk_text_buffer_get_insert (bufferHandle);
- OS.gtk_text_view_scroll_mark_onscreen (handle, mark);
+ OS.gtk_text_view_scroll_to_mark (handle, mark, 0, true, 0, 0);
}
}
@@ -2563,7 +2563,7 @@ void setText (char [] text) {
OS.gtk_text_buffer_get_iter_at_offset (bufferHandle, position, 0);
OS.gtk_text_buffer_place_cursor (bufferHandle, position);
long /*int*/ mark = OS.gtk_text_buffer_get_insert (bufferHandle);
- OS.gtk_text_view_scroll_mark_onscreen (handle, mark);
+ OS.gtk_text_view_scroll_to_mark (handle, mark, 0, true, 0, 0);
Arrays.fill (buffer, (byte) 0);
}
sendEvent (SWT.Modify);
@@ -2644,9 +2644,9 @@ public void showSelection () {
checkWidget ();
if ((style & SWT.SINGLE) != 0) return;
long /*int*/ mark = OS.gtk_text_buffer_get_selection_bound (bufferHandle);
- OS.gtk_text_view_scroll_mark_onscreen (handle, mark);
+ OS.gtk_text_view_scroll_to_mark (handle, mark, 0, true, 0, 0);
mark = OS.gtk_text_buffer_get_insert (bufferHandle);
- OS.gtk_text_view_scroll_mark_onscreen (handle, mark);
+ OS.gtk_text_view_scroll_to_mark (handle, mark, 0, true, 0, 0);
}
int translateOffset (int offset) {
--
cgit v0.11.2-4-g4a35

47
eclipse-bug-466500.patch Normal file
View File

@ -0,0 +1,47 @@
From ddcfd1f3efd70591480e6c053946618ef6696104 Mon Sep 17 00:00:00 2001
From: Eric Williams
Date: Wed, 14 Oct 2015 13:41:06 -0400
Subject: Bug 466500: [GTK3] Trying to resize quick outline or quick type
hierarchy closes the popup
In PopupDialog, Shells with no children are closed on deactivation. On
Linux-Gtk, this causes popups like the "Quick Outline" or "Quick
Type Hierarchy" to close prematurely when opening the system menu,
re-sizing, or moving the window with the mouse.
It is for this reason that we need to exclude the call to asyncClose()
from running on Gtk. This also fixes bug 113577.
Tested on Gtk3.16.6, and Gtk2.24.
Change-Id: I4111ad961e2b4e57c90939e7cb0e982b7bf3b894
Signed-off-by: Eric Williams <ericwill@redhat.com>---
.../src/org/eclipse/jface/dialogs/PopupDialog.java | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/eclipse.platform.ui/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/PopupDialog.java b/eclipse.platform.ui/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/PopupDialog.java
index 2068cc4..0d361af 100644
--- a/eclipse.platform.ui/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/PopupDialog.java
+++ b/eclipse.platform.ui/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/PopupDialog.java
@@ -588,13 +588,17 @@
/*
* Close if we are deactivating and have no child shells. If we
* have child shells, we are deactivating due to their opening.
- * On X, we receive this when a menu child (such as the system
- * menu) of the shell opens, but I have not found a way to
- * distinguish that case here. Hence bug #113577 still exists.
+ *
+ * Feature in GTK: this causes the Quick Outline/Type Hierarchy
+ * Shell to close on re-size/movement on Gtk3. For this reason,
+ * the asyncClose() call is disabled in GTK. See Eclipse Bugs
+ * 466500 and 113577 for more information.
*/
if (listenToDeactivate && event.widget == getShell()
&& getShell().getShells().length == 0) {
- asyncClose();
+ if (!Util.isGtk()) {
+ asyncClose();
+ }
} else {
/*
* We typically ignore deactivates to work around

136
eclipse-bug-481122.patch Normal file
View File

@ -0,0 +1,136 @@
From 3dc220718412431322c00e1f820c9ce0168892f5 Mon Sep 17 00:00:00 2001
From: Eric Williams
Date: Mon, 23 Nov 2015 10:37:11 -0500
Subject: Bug 481122: [GTK3.18+] some set/get Background/Foreground color
methods have no effect
With changes in GTK3.18 and onward, gtk_style_context_get_color()
behaves differently. In order to correctly fetch the color we must first
save the GtkStyleContext, set its state, fetch the color, and then
restore the GtkStyleContext. Failure to do this on GTK3.18+ leads to
failures in the getForegroundColor() method.
The convenience method styleContextGetColor() in Display takes care of
the process.
Tested on GTK 3.18, 3.16, 3.14, 3.8, and 2.24. All foreground color
related tests on GTK3 now pass. GTK2 behaviour remains unchanged.
Change-Id: I6423edab5038dc0ef54afc6dd826f19fc936f987
Signed-off-by: Eric Williams <ericwill@redhat.com>
---
.../gtk/org/eclipse/swt/widgets/Control.java | 2 +-
.../gtk/org/eclipse/swt/widgets/Display.java | 36 ++++++++++++++--------
.../gtk/org/eclipse/swt/widgets/Text.java | 2 +-
3 files changed, 26 insertions(+), 14 deletions(-)
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 ffd9d11..7061084 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
@@ -2626,7 +2626,7 @@ GdkColor getContextColor () {
long /*int*/ fontHandle = fontHandle ();
long /*int*/ context = OS.gtk_widget_get_style_context (fontHandle);
GdkRGBA rgba = new GdkRGBA ();
- OS.gtk_style_context_get_color (context, OS.GTK_STATE_FLAG_NORMAL, rgba);
+ rgba = display.styleContextGetColor (context, OS.GTK_STATE_FLAG_NORMAL, rgba);
GdkColor color = new GdkColor ();
color.red = (short)(rgba.red * 0xFFFF);
color.green = (short)(rgba.green * 0xFFFF);
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java
index 0119882..d7e670c 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java
@@ -2373,8 +2373,7 @@ void initializeSystemColors () {
OS.gtk_style_context_add_class (context, OS.GTK_STYLE_CLASS_TOOLTIP);
OS.gtk_style_context_invalidate(context);
GdkRGBA rgba = new GdkRGBA();
- OS.gtk_style_context_get_color (context, OS.GTK_STATE_FLAG_NORMAL, rgba);
- COLOR_INFO_FOREGROUND = toGdkColor (rgba);
+ COLOR_INFO_FOREGROUND = toGdkColor (styleContextGetColor (context, OS.GTK_STATE_FLAG_NORMAL, rgba));
getBackgroundColor (context, OS.GTK_STATE_FLAG_NORMAL, rgba);
COLOR_INFO_BACKGROUND = toGdkColor (rgba);
OS.gtk_widget_destroy (tooltipShellHandle);
@@ -2387,8 +2386,7 @@ void initializeSystemColors () {
COLOR_WIDGET_NORMAL_SHADOW = toGdkColor (rgba, 0.7);
COLOR_WIDGET_HIGHLIGHT_SHADOW = toGdkColor (rgba, 1.3);
- OS.gtk_style_context_get_color (context, OS.GTK_STATE_FLAG_NORMAL, rgba);
- COLOR_WIDGET_FOREGROUND = toGdkColor (rgba);
+ COLOR_WIDGET_FOREGROUND = toGdkColor (styleContextGetColor (context, OS.GTK_STATE_FLAG_NORMAL, rgba));
OS.gtk_style_context_get_background_color (context, OS.GTK_STATE_FLAG_NORMAL, rgba);
COLOR_WIDGET_BACKGROUND = toGdkColor (rgba);
@@ -2396,17 +2394,14 @@ void initializeSystemColors () {
OS.gtk_style_context_add_class(context, OS.GTK_STYLE_CLASS_VIEW);
OS.gtk_style_context_add_class(context, OS.GTK_STYLE_CLASS_CELL);
OS.gtk_style_context_invalidate(context);
- OS.gtk_style_context_get_color (context, OS.GTK_STATE_FLAG_NORMAL, rgba);
- COLOR_LIST_FOREGROUND = toGdkColor (rgba);
+ COLOR_LIST_FOREGROUND = toGdkColor (styleContextGetColor (context, OS.GTK_STATE_FLAG_NORMAL, rgba));
OS.gtk_style_context_get_background_color (context, OS.GTK_STATE_FLAG_NORMAL, rgba);
COLOR_LIST_BACKGROUND = toGdkColor (rgba);
OS.gtk_style_context_restore (context);
- OS.gtk_style_context_get_color (context, OS.GTK_STATE_FLAG_SELECTED, rgba);
- COLOR_LIST_SELECTION_TEXT = toGdkColor (rgba);
+ COLOR_LIST_SELECTION_TEXT = toGdkColor (styleContextGetColor (context, OS.GTK_STATE_FLAG_SELECTED, rgba));
OS.gtk_style_context_get_background_color (context, OS.GTK_STATE_FLAG_SELECTED, rgba);
COLOR_LIST_SELECTION = toGdkColor (rgba);
- OS.gtk_style_context_get_color (context, OS.GTK_STATE_FLAG_ACTIVE, rgba);
- COLOR_LIST_SELECTION_TEXT_INACTIVE = toGdkColor (rgba);
+ COLOR_LIST_SELECTION_TEXT_INACTIVE = toGdkColor (styleContextGetColor (context, OS.GTK_STATE_FLAG_ACTIVE, rgba));
OS.gtk_style_context_get_background_color (context, OS.GTK_STATE_FLAG_ACTIVE, rgba);
COLOR_LIST_SELECTION_INACTIVE = toGdkColor (rgba);
@@ -2415,8 +2410,7 @@ void initializeSystemColors () {
OS.gtk_style_context_get_background_color (context, OS.GTK_STATE_FLAG_SELECTED, rgba);
COLOR_TITLE_BACKGROUND_GRADIENT = toGdkColor (rgba, 1.3);
- OS.gtk_style_context_get_color (context, OS.GTK_STATE_FLAG_INSENSITIVE, rgba);
- COLOR_TITLE_INACTIVE_FOREGROUND = toGdkColor (rgba);
+ COLOR_TITLE_INACTIVE_FOREGROUND = toGdkColor (styleContextGetColor (context, OS.GTK_STATE_FLAG_INSENSITIVE, rgba));
OS.gtk_style_context_get_background_color (context, OS.GTK_STATE_FLAG_INSENSITIVE, rgba);
COLOR_TITLE_INACTIVE_BACKGROUND = toGdkColor (rgba);
COLOR_TITLE_INACTIVE_BACKGROUND_GRADIENT = toGdkColor (rgba, 1.3);
@@ -2497,6 +2491,24 @@ void initializeSystemColors () {
COLOR_TITLE_INACTIVE_BACKGROUND_GRADIENT = gdkColor;
}
+GdkRGBA styleContextGetColor(long /*int*/ context, int flag, GdkRGBA rgba) {
+ /*
+ * Feature in GTK: we need to handle calls to gtk_style_context_get_color()
+ * differently due to changes in GTK3.18+. This solves failing test cases
+ * which started failing after GTK3.16. See Bug 481122 for more info.
+ * Reference: https://blogs.gnome.org/mclasen/2015/11/20/a-gtk-update/
+ */
+ if (OS.GTK_VERSION >= OS.VERSION(3, 18, 0)) {
+ OS.gtk_style_context_save(context);
+ OS.gtk_style_context_set_state(context, flag);
+ OS.gtk_style_context_get_color (context, flag, rgba);
+ OS.gtk_style_context_restore(context);
+ } else {
+ OS.gtk_style_context_get_color (context, flag, rgba);
+ }
+ return rgba;
+}
+
/**
* Returns the single instance of the system taskBar or null
* when there is no system taskBar available for the platform.
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 2865cd5..6b68b6a 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
@@ -1664,7 +1664,7 @@ void drawMessage (long /*int*/ cr) {
if (OS.GTK3) {
long /*int*/ styleContext = OS.gtk_widget_get_style_context (handle);
GdkRGBA rgba = new GdkRGBA ();
- OS.gtk_style_context_get_color (styleContext, OS.GTK_STATE_FLAG_INSENSITIVE, rgba);
+ rgba = display.styleContextGetColor (styleContext, OS.GTK_STATE_FLAG_INSENSITIVE, rgba);
textColor.red = (short)(rgba.red * 0xFFFF);
textColor.green = (short)(rgba.green * 0xFFFF);
textColor.blue = (short)(rgba.blue * 0xFFFF);
--
cgit v0.11.2-4-g4a35

View File

@ -49,7 +49,7 @@ Epoch: 1
Summary: An open, extensible IDE
Name: eclipse
Version: %{eclipse_version}
Release: 4%{?dist}
Release: 5%{?dist}
License: EPL
URL: http://www.eclipse.org/
@ -138,6 +138,11 @@ Patch25: %{pkg_name}-adjust-droplets.patch
Patch26: eclipse-editor-scrolling-fix.patch
Patch27: %{pkg_name}-bug-480986.patch
# Fix visual glitches when on recent GTK3
Patch28: eclipse-bug-466314.patch
Patch29: eclipse-bug-481122.patch
Patch30: eclipse-bug-466500.patch
BuildRequires: rsync
BuildRequires: make, gcc
BuildRequires: glib2-devel
@ -387,6 +392,11 @@ popd
%patch25
%patch26 -p1
%patch27
pushd eclipse.platform.swt
%patch28 -p1
%patch29 -p1
popd
%patch30 -p1
# Resolving the target platform requires too many changes, so don't use it
%pom_xpath_remove "pom:configuration/pom:target" eclipse-platform-parent
@ -1123,6 +1133,10 @@ fi
%{_libdir}/%{pkg_name}/plugins/org.eclipse.osgi.compatibility.state_*
%changelog
* Fri Nov 27 2015 Mat Booth <mat.booth@redhat.com> - 1:4.5.1-5
- Fix some visual glitches when on recent versions of GTK
- ebz#466314, ebz#481122, ebz#466500
* Tue Nov 03 2015 Roland Grunberg <rgrunber@redhat.com> - 1:4.5.1-4
- Fix "Workspace chooser won't launch" on Wayland.
- Resolves: rhbz#1277594