aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/classpath/classpath-0.97.2/gtk-fix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/classpath/classpath-0.97.2/gtk-fix.patch')
-rw-r--r--recipes/classpath/classpath-0.97.2/gtk-fix.patch147
1 files changed, 0 insertions, 147 deletions
diff --git a/recipes/classpath/classpath-0.97.2/gtk-fix.patch b/recipes/classpath/classpath-0.97.2/gtk-fix.patch
deleted file mode 100644
index 0addec87ac..0000000000
--- a/recipes/classpath/classpath-0.97.2/gtk-fix.patch
+++ /dev/null
@@ -1,147 +0,0 @@
-Index: gnu/java/awt/peer/gtk/FreetypeGlyphVector.java
-===================================================================
---- gnu/java/awt/peer/gtk/FreetypeGlyphVector.java.orig 2007-04-12 22:18:09.000000000 +0200
-+++ gnu/java/awt/peer/gtk/FreetypeGlyphVector.java 2008-11-28 18:29:50.000000000 +0100
-@@ -247,7 +247,8 @@
- /**
- * Returns the kerning of a glyph pair
- */
-- private native Point2D getKerning(int leftGlyph, int rightGlyph, long font);
-+ private native void getKerning(int leftGlyph, int rightGlyph, long font,
-+ float[] p);
-
- private native double[] getMetricsNative(int glyphCode, long font);
-
-@@ -301,6 +302,7 @@
- GlyphMetrics gm = null;
- float x = 0;
- float y = 0;
-+ float[] p = {0.0f, 0.0f};
- for(int i = 0; i < nGlyphs; i++)
- {
- gm = getGlyphMetrics( i );
-@@ -314,9 +316,9 @@
- // using the same font
- if (i != nGlyphs-1 && fontSet[i] == fontSet[i+1])
- {
-- Point2D p = getKerning(glyphCodes[i], glyphCodes[i + 1], fontSet[i]);
-- x += p.getX();
-- y += p.getY();
-+ getKerning(glyphCodes[i], glyphCodes[i + 1], fontSet[i], p);
-+ x += p[0];
-+ y += p[1];
- }
- }
- glyphPositions[nGlyphs * 2] = x;
-Index: include/gnu_java_awt_peer_gtk_FreetypeGlyphVector.h
-===================================================================
---- include/gnu_java_awt_peer_gtk_FreetypeGlyphVector.h.orig 2008-06-06 04:10:00.000000000 +0200
-+++ include/gnu_java_awt_peer_gtk_FreetypeGlyphVector.h 2008-11-28 18:29:50.000000000 +0100
-@@ -13,7 +13,7 @@
- JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_FreetypeGlyphVector_dispose (JNIEnv *env, jobject, jlongArray);
- JNIEXPORT jlong JNICALL Java_gnu_java_awt_peer_gtk_FreetypeGlyphVector_getNativeFontPointer (JNIEnv *env, jobject, jint);
- JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_FreetypeGlyphVector_getGlyphs (JNIEnv *env, jobject, jintArray, jintArray, jlongArray);
--JNIEXPORT jobject JNICALL Java_gnu_java_awt_peer_gtk_FreetypeGlyphVector_getKerning (JNIEnv *env, jobject, jint, jint, jlong);
-+JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_FreetypeGlyphVector_getKerning (JNIEnv *env, jobject, jint, jint, jlong, jfloatArray);
- JNIEXPORT jdoubleArray JNICALL Java_gnu_java_awt_peer_gtk_FreetypeGlyphVector_getMetricsNative (JNIEnv *env, jobject, jint, jlong);
- JNIEXPORT jobject JNICALL Java_gnu_java_awt_peer_gtk_FreetypeGlyphVector_getGlyphOutlineNative (JNIEnv *env, jobject, jint, jlong);
-
-Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_FreetypeGlyphVector.c
-===================================================================
---- native/jni/gtk-peer/gnu_java_awt_peer_gtk_FreetypeGlyphVector.c.orig 2007-04-25 16:53:03.000000000 +0200
-+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_FreetypeGlyphVector.c 2008-11-28 18:29:50.000000000 +0100
-@@ -169,15 +169,13 @@
- (*env)->ReleaseLongArrayElements (env, fonts, fontArray, 0);
- }
-
--JNIEXPORT jobject JNICALL
-+JNIEXPORT void JNICALL
- Java_gnu_java_awt_peer_gtk_FreetypeGlyphVector_getKerning
--(JNIEnv *env, jobject obj __attribute__((unused)), jint rightGlyph, jint leftGlyph, jlong fnt)
-+ (JNIEnv *env, jobject obj __attribute__((unused)), jint rightGlyph,
-+ jint leftGlyph, jlong fnt, jfloatArray p)
- {
- FT_Face ft_face;
- FT_Vector kern;
-- jclass cls;
-- jmethodID method;
-- jvalue values[2];
- PangoFcFont *font;
-
- font = JLONG_TO_PTR(PangoFcFont, fnt);
-@@ -187,12 +185,10 @@
-
- pango_fc_font_unlock_face( font );
-
-- values[0].d = (jdouble)kern.x/64.0;
-- values[1].d = (jdouble)kern.y/64.0;
--
-- cls = (*env)->FindClass (env, "java/awt/geom/Point2D$Double");
-- method = (*env)->GetMethodID (env, cls, "<init>", "(DD)V");
-- return (*env)->NewObjectA(env, cls, method, values);
-+ jfloat *pelements = (*env)->GetPrimitiveArrayCritical(env, p, NULL);
-+ pelements[0] = (jfloat)kern.x/64.0;
-+ pelements[1] = (jfloat)kern.y/64.0;
-+ (*env)->ReleasePrimitiveArrayCritical (env, p, pelements, 0);
- }
-
- JNIEXPORT jdoubleArray JNICALL
-Index: gnu/java/awt/peer/gtk/GtkFileDialogPeer.java
-===================================================================
---- gnu/java/awt/peer/gtk/GtkFileDialogPeer.java.orig 2008-12-01 07:51:00.000000000 +0100
-+++ gnu/java/awt/peer/gtk/GtkFileDialogPeer.java 2008-12-01 07:52:04.000000000 +0100
-@@ -67,7 +67,7 @@
-
- FileDialog fd = (FileDialog) awtComponent;
-
-- nativeSetDirectory(System.getProperty("user.dir"));
-+ nativeSetDirectory(System.getProperty("user.dir", "."));
- setDirectory(fd.getDirectory());
- setFile(fd.getFile());
-
-@@ -108,18 +108,26 @@
- if (fileName == null || fileName.equals (""))
- {
- currentFile = "";
-- nativeSetFile ("");
-+ nativeSetFile (new File("").getAbsolutePath());
- return;
- }
-
- // GtkFileChooser requires absolute filenames. If the given filename
- // is not absolute, let's construct it based on current directory.
- currentFile = fileName;
-- if (fileName.indexOf(FS) == 0)
-+ File f = new File(fileName);
-+ if (f.isAbsolute())
- nativeSetFile(fileName);
- else
-- nativeSetFile(nativeGetDirectory() + FS + fileName);
-- }
-+ {
-+ // Try with gtk API.
-+ String temp = nativeGetDirectory();
-+ if (temp != null)
-+ f = new File(temp, fileName);
-+
-+ nativeSetFile(f.getAbsolutePath());
-+ }
-+}
-
- public void setDirectory (String directory)
- {
-Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c
-===================================================================
---- native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c.orig 2008-12-01 07:53:00.000000000 +0100
-+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c 2008-12-01 07:53:17.000000000 +0100
-@@ -58,6 +58,10 @@
- gtkpeer_set_global_ref (env, obj);
-
- sw = gtk_scrolled_window_new (NULL, NULL);
-+
-+ /* Sanitize width and height. gtk+ does not accept anything below -1. */
-+ width = (width < -1 ? 0 : width);
-+ height = (height < -1 ? 0 : height);
- gtk_widget_set_size_request (sw, width, height);
- eventbox = gtk_event_box_new ();
- gtk_container_add (GTK_CONTAINER (eventbox), sw);