/hg/release/icedtea7-forest-2.5/jdk: 5 new changesets

andrew at icedtea.classpath.org andrew at icedtea.classpath.org
Fri Jun 13 14:51:48 UTC 2014


changeset d26cf395f1f0 in /hg/release/icedtea7-forest-2.5/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=d26cf395f1f0
author: andrew
date: Tue Jun 10 22:37:03 2014 +0100

	PR1736: AWT loads gtk3 in all the look and feel configurations
	Summary: Split the JNI Gtk+ code into its own library


changeset cadc17b7e20e in /hg/release/icedtea7-forest-2.5/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=cadc17b7e20e
author: andrew
date: Wed Jun 11 16:51:38 2014 +0100

	PR729: GTKLookAndFeel should be the system look&feel on all GNU/Linux desktops
	Summary: Return GTKLookAndFeel as the system look&feel on local GNU/Linux systems


changeset 925c4ace5635 in /hg/release/icedtea7-forest-2.5/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=925c4ace5635
author: andrew
date: Wed Jun 11 18:33:57 2014 +0100

	PR1808: Type-punning Warnings in Demos on PPC
	Summary: Drop the undocumented exclusion of -fno-strict-aliasing from PPC, as in OpenJDK 9.


changeset 9705894e1370 in /hg/release/icedtea7-forest-2.5/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=9705894e1370
author: andrew
date: Thu Jun 12 21:14:44 2014 +0100

	PR1839, G478960: Provide Infinality Support via fontconfig
	Summary: Adapt fontfix patch, which uses fontconfig for font rendering, to apply only when INFINALITY_SUPPORT=true
	Contributed-by: Trustin Lee, Aleksandar Antok (fontfix patch from https://gist.github.com/aleksandara/2963640)


changeset a052a690eef8 in /hg/release/icedtea7-forest-2.5/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=a052a690eef8
author: andrew
date: Fri Jun 13 15:04:01 2014 +0100

	Added tag icedtea-2.5pre08 for changeset 9705894e1370


diffstat:

 .hgtags                                            |    1 +
 make/common/Defs-linux.gmk                         |    4 +-
 make/sun/Makefile                                  |    2 +-
 make/sun/font/Makefile                             |    9 +
 make/sun/gtk/FILES_c_unix.gmk                      |   41 +++
 make/sun/gtk/FILES_export_unix.gmk                 |   31 ++
 make/sun/gtk/Makefile                              |   82 +++++++
 make/sun/gtk/mapfile-vers                          |   72 ++++++
 make/sun/xawt/FILES_c_unix.gmk                     |    7 +-
 make/sun/xawt/FILES_export_unix.gmk                |    3 +-
 make/sun/xawt/Makefile                             |    4 -
 make/sun/xawt/mapfile-vers                         |   37 ---
 src/share/classes/javax/swing/UIManager.java       |    5 +-
 src/share/native/sun/font/freetypeScaler.c         |  178 ++++++++++++++++-
 src/solaris/classes/sun/awt/UNIXToolkit.java       |    6 +
 src/solaris/native/common/deps/gtk2/gtk_fp.c       |   28 --
 src/solaris/native/common/deps/gtk2/gtk_fp.h       |    1 -
 src/solaris/native/common/deps/gtk2/gtk_fp_check.c |   54 ++++
 src/solaris/native/common/deps/gtk2/gtk_fp_check.h |   30 ++
 src/solaris/native/sun/awt/awt_GTKToolkit.c        |  228 +++++++++++++++++++++
 src/solaris/native/sun/awt/awt_UNIXToolkit.c       |  199 ------------------
 src/solaris/native/sun/awt/gtk2_interface.c        |    9 -
 src/solaris/native/sun/awt/gtk2_interface.h        |    8 -
 src/solaris/native/sun/awt/gtk2_interface_check.c  |   34 +++
 src/solaris/native/sun/awt/gtk2_interface_check.h  |   42 +++
 25 files changed, 815 insertions(+), 300 deletions(-)

diffs (truncated from 1409 to 500 lines):

diff -r 9fa3542b3afb -r a052a690eef8 .hgtags
--- a/.hgtags	Thu Jun 05 16:52:29 2014 +0100
+++ b/.hgtags	Fri Jun 13 15:04:01 2014 +0100
@@ -445,3 +445,4 @@
 7190843ddaf4f3ad158c3071be0f4ca42a5802dc jdk7u60-b19
 8dc56d0f3e860658619eaa57d10fb1a4182d71cd jdk7u60-b30
 5607f5a99784da3d78d2062f6b0bb99da864ca65 icedtea-2.5pre07
+9705894e1370a492481123357433ca7a0adde838 icedtea-2.5pre08
diff -r 9fa3542b3afb -r a052a690eef8 make/common/Defs-linux.gmk
--- a/make/common/Defs-linux.gmk	Thu Jun 05 16:52:29 2014 +0100
+++ b/make/common/Defs-linux.gmk	Fri Jun 13 15:04:01 2014 +0100
@@ -252,9 +252,7 @@
 #
 # Misc compiler options
 #
-ifneq ($(ARCH),ppc)
-  CFLAGS_COMMON   = -fno-strict-aliasing
-endif 
+CFLAGS_COMMON   = -fno-strict-aliasing
 PIC_CODE_LARGE = -fPIC
 PIC_CODE_SMALL = -fpic
 GLOBAL_KPIC = $(PIC_CODE_LARGE)
diff -r 9fa3542b3afb -r a052a690eef8 make/sun/Makefile
--- a/make/sun/Makefile	Thu Jun 05 16:52:29 2014 +0100
+++ b/make/sun/Makefile	Fri Jun 13 15:04:01 2014 +0100
@@ -55,7 +55,7 @@
     endif
   endif
   HEADLESS_SUBDIR = headless
-  XAWT_SUBDIR     = xawt
+  XAWT_SUBDIR     = xawt gtk
 endif
 
 ifeq ($(PLATFORM), macosx)
diff -r 9fa3542b3afb -r a052a690eef8 make/sun/font/Makefile
--- a/make/sun/font/Makefile	Thu Jun 05 16:52:29 2014 +0100
+++ b/make/sun/font/Makefile	Fri Jun 13 15:04:01 2014 +0100
@@ -100,6 +100,11 @@
   CXXFLAGS_ExtensionSubtables.o = -fno-strict-aliasing
 endif
 
+# Turn on infinality rendering support when requested
+ifeq ($(INFINALITY_SUPPORT),true)
+OTHER_CFLAGS += $(FONTCONFIG_CFLAGS) -DINFINALITY
+endif
+
 #In the non-OpenJDK mode we need to build T2K
 ifndef OPENJDK
 t2k:
@@ -141,6 +146,10 @@
   OTHER_LDLIBS += -L$(FREETYPE_LIB_PATH) $(FT2_LIBS)
 endif
 
+ifeq ($(INFINALITY_SUPPORT),true)
+OTHER_LDLIBS += $(FONTCONFIG_LIBS)
+endif
+
 library:: $(FREETYPE_LIB)
 
 $(FREETYPE_LIB):
diff -r 9fa3542b3afb -r a052a690eef8 make/sun/gtk/FILES_c_unix.gmk
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/sun/gtk/FILES_c_unix.gmk	Fri Jun 13 15:04:01 2014 +0100
@@ -0,0 +1,41 @@
+#
+# Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# include rules
+#
+
+FILES_c = \
+	gtk2_interface.c \
+        swing_GTKEngine.c \
+        swing_GTKStyle.c \
+	awt_GTKToolkit.c \
+	debug_assert.c \
+	sun_awt_X11_GtkFileDialogPeer.c
+
+ifneq ($(SYSTEM_GTK), true)
+FILES_c += \
+	gtk_fp.c
+endif
diff -r 9fa3542b3afb -r a052a690eef8 make/sun/gtk/FILES_export_unix.gmk
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/sun/gtk/FILES_export_unix.gmk	Fri Jun 13 15:04:01 2014 +0100
@@ -0,0 +1,31 @@
+#
+# Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+#
+# include rules
+#
+
+FILES_export =   \
+      sun/awt/X11/GtkFileDialogPeer.java
diff -r 9fa3542b3afb -r a052a690eef8 make/sun/gtk/Makefile
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/sun/gtk/Makefile	Fri Jun 13 15:04:01 2014 +0100
@@ -0,0 +1,82 @@
+#
+# Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+BUILDDIR = ../..
+PACKAGE = sun.awt.X11
+LIBRARY = javagtk
+PRODUCT = sun
+
+include $(BUILDDIR)/common/Defs.gmk
+
+#
+# Files
+#
+include FILES_c_unix.gmk
+include FILES_export_unix.gmk
+AUTO_FILES_JAVA_DIRS = sun/awt/X11
+
+
+#
+# Rules.
+#
+include $(BUILDDIR)/common/Mapfile-vers.gmk
+include $(BUILDDIR)/common/Library.gmk
+
+#
+# Add to the ambient vpath to pick up files in subdirectories
+#
+vpath %.c   $(PLATFORM_SRC)/native/sun/awt
+vpath %.c   $(SHARE_SRC)/native/sun/awt/debug
+
+ifneq ($(SYSTEM_GTK), true)
+vpath %.c   $(PLATFORM_SRC)/native/common/deps/gtk2
+endif
+
+OTHER_LDLIBS = -lX11
+
+ifeq ($(SYSTEM_GTK), true)
+  OTHER_LDLIBS += $(GTK_LIBS)
+endif
+
+ifeq  ($(PLATFORM), solaris)
+CPPFLAGS += -DFUNCPROTO=15
+dummy := $(shell $(MKDIR) -p $(LIB_LOCATION))
+endif
+
+CPPFLAGS += -DXAWT -DXAWT_HACK \
+        -I$(TEMPDIR)/../../sun.awt/awt/CClassHeaders \
+        -I$(SHARE_SRC)/native/sun/awt/debug \
+        -I$(PLATFORM_SRC)/native/sun/awt
+
+ifeq ($(SYSTEM_GTK), true)
+  CPPFLAGS += $(GTK_CFLAGS) -DUSE_SYSTEM_GTK
+else
+  CPPFLAGS += -I$(PLATFORM_SRC)/native/common/deps/gtk2
+endif
+
+ifeq ($(MILESTONE), internal)
+  CPPFLAGS += -DINTERNAL_BUILD
+endif
+
diff -r 9fa3542b3afb -r a052a690eef8 make/sun/gtk/mapfile-vers
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/sun/gtk/mapfile-vers	Fri Jun 13 15:04:01 2014 +0100
@@ -0,0 +1,72 @@
+#
+# Copyright (c) 2002, 2011, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Define public interface.
+
+SUNWprivate_1.1 {
+        global:
+        JNI_OnLoad;
+
+        Java_sun_awt_UNIXToolkit_load_1gtk;
+        Java_sun_awt_UNIXToolkit_unload_1gtk;
+        Java_sun_awt_UNIXToolkit_load_1stock_1icon;
+        Java_sun_awt_UNIXToolkit_load_1gtk_1icon;
+        Java_sun_awt_UNIXToolkit_gtkCheckVersionImpl;
+
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1arrow;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1box;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1box_1gap;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1check;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1expander;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1extension;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1flat_1box;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1focus;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1handle;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1hline;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1option;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1shadow;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1slider;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1vline;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1background;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeStartPainting;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeFinishPainting;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1switch_1theme;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1get_1gtk_1setting;
+        Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeSetRangeValue;
+        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetXThickness;
+        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetYThickness;
+        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetColorForState;
+        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetClassValue;
+        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetPangoFontName;
+
+        Java_sun_awt_X11_GtkFileDialogPeer_initIDs;
+        Java_sun_awt_X11_GtkFileDialogPeer_run;
+        Java_sun_awt_X11_GtkFileDialogPeer_quit;
+        Java_sun_awt_X11_GtkFileDialogPeer_toFront;
+        Java_sun_awt_X11_GtkFileDialogPeer_setBounds;
+
+        local:
+                *;
+};
diff -r 9fa3542b3afb -r a052a690eef8 make/sun/xawt/FILES_c_unix.gmk
--- a/make/sun/xawt/FILES_c_unix.gmk	Thu Jun 05 16:52:29 2014 +0100
+++ b/make/sun/xawt/FILES_c_unix.gmk	Fri Jun 13 15:04:01 2014 +0100
@@ -76,17 +76,14 @@
 	debug_trace.c \
 	debug_util.c \
 	awt_Plugin.c \
-	gtk2_interface.c \
-        swing_GTKEngine.c \
-        swing_GTKStyle.c \
+	gtk2_interface_check.c \
         rect.c \
-	sun_awt_X11_GtkFileDialogPeer.c \
 	XRSurfaceData.c \
 	XRBackendNative.c
 
 ifneq ($(SYSTEM_GTK), true)
 FILES_c += \
-	gtk_fp.c
+	gtk_fp_check.c
 endif
 
 ifneq ($(SYSTEM_CUPS), true)
diff -r 9fa3542b3afb -r a052a690eef8 make/sun/xawt/FILES_export_unix.gmk
--- a/make/sun/xawt/FILES_export_unix.gmk	Thu Jun 05 16:52:29 2014 +0100
+++ b/make/sun/xawt/FILES_export_unix.gmk	Fri Jun 13 15:04:01 2014 +0100
@@ -33,5 +33,4 @@
       sun/awt/X11/XDesktopPeer.java \
       sun/awt/X11/XToolkit.java \
       sun/awt/X11/XComponentPeer.java \
-      sun/awt/X11/XInputMethod.java \
-      sun/awt/X11/GtkFileDialogPeer.java
+      sun/awt/X11/XInputMethod.java
diff -r 9fa3542b3afb -r a052a690eef8 make/sun/xawt/Makefile
--- a/make/sun/xawt/Makefile	Thu Jun 05 16:52:29 2014 +0100
+++ b/make/sun/xawt/Makefile	Fri Jun 13 15:04:01 2014 +0100
@@ -128,10 +128,6 @@
 OTHER_LDLIBS = $(LIBM) -lawt -lXext -lX11 -lXrender $(LIBDL) \
                    $(LDFLAGS_COMMON) $(AWT_RUNPATH) $(OTHER_LDFLAGS) -lXtst -lXi
 
-ifeq ($(SYSTEM_GTK), true)
-  OTHER_LDLIBS += $(GTK_LIBS)
-endif
-
 ifeq ($(SYSTEM_CUPS), true)
   OTHER_LDLIBS += $(CUPS_LIBS)
 endif
diff -r 9fa3542b3afb -r a052a690eef8 make/sun/xawt/mapfile-vers
--- a/make/sun/xawt/mapfile-vers	Thu Jun 05 16:52:29 2014 +0100
+++ b/make/sun/xawt/mapfile-vers	Fri Jun 13 15:04:01 2014 +0100
@@ -167,12 +167,7 @@
         Java_java_awt_Frame_initIDs;
 	Java_sun_awt_SunToolkit_closeSplashScreen;
         Java_sun_awt_UNIXToolkit_check_1gtk;
-        Java_sun_awt_UNIXToolkit_load_1gtk;
-        Java_sun_awt_UNIXToolkit_unload_1gtk;
-        Java_sun_awt_UNIXToolkit_load_1stock_1icon;
-        Java_sun_awt_UNIXToolkit_load_1gtk_1icon;
         Java_sun_awt_UNIXToolkit_nativeSync;
-        Java_sun_awt_UNIXToolkit_gtkCheckVersionImpl;
         Java_java_awt_AWTEvent_initIDs;
         Java_java_awt_event_InputEvent_initIDs;
         Java_java_awt_event_KeyEvent_initIDs;
@@ -406,38 +401,6 @@
 	Java_sun_java2d_xr_XRBackendNative_GCRectanglesNative;
 	Java_sun_java2d_xr_XRBackendNative_renderCompositeTrapezoidsNative;
 
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1arrow;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1box;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1box_1gap;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1check;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1expander;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1extension;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1flat_1box;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1focus;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1handle;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1hline;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1option;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1shadow;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1slider;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1vline;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1paint_1background;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeStartPainting;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeFinishPainting;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1switch_1theme;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_native_1get_1gtk_1setting;
-        Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeSetRangeValue;
-        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetXThickness;
-        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetYThickness;
-        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetColorForState;
-        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetClassValue;
-        Java_com_sun_java_swing_plaf_gtk_GTKStyle_nativeGetPangoFontName;
-
-        Java_sun_awt_X11_GtkFileDialogPeer_initIDs;
-        Java_sun_awt_X11_GtkFileDialogPeer_run;
-        Java_sun_awt_X11_GtkFileDialogPeer_quit;
-        Java_sun_awt_X11_GtkFileDialogPeer_toFront;
-        Java_sun_awt_X11_GtkFileDialogPeer_setBounds;
-
 	Java_sun_print_CUPSPrinter_initIDs;
 	Java_sun_print_CUPSPrinter_getCupsServer;
 	Java_sun_print_CUPSPrinter_getCupsPort;
diff -r 9fa3542b3afb -r a052a690eef8 src/share/classes/javax/swing/UIManager.java
--- a/src/share/classes/javax/swing/UIManager.java	Thu Jun 05 16:52:29 2014 +0100
+++ b/src/share/classes/javax/swing/UIManager.java	Fri Jun 13 15:04:01 2014 +0100
@@ -606,8 +606,9 @@
         } else {
             String desktop = AccessController.doPrivileged(new GetPropertyAction("sun.desktop"));
             Toolkit toolkit = Toolkit.getDefaultToolkit();
-            if ("gnome".equals(desktop) &&
-                    toolkit instanceof SunToolkit &&
+            boolean gtkDesktop = "gnome".equals(desktop) ||
+              (osType == OSInfo.OSType.LINUX && SwingUtilities2.isLocalDisplay());
+            if (gtkDesktop && toolkit instanceof SunToolkit &&
                     ((SunToolkit) toolkit).isNativeGTKAvailable()) {
                 // May be set on Linux and Solaris boxs.
                 return "com.sun.java.swing.plaf.gtk.GTKLookAndFeel";
diff -r 9fa3542b3afb -r a052a690eef8 src/share/native/sun/font/freetypeScaler.c
--- a/src/share/native/sun/font/freetypeScaler.c	Thu Jun 05 16:52:29 2014 +0100
+++ b/src/share/native/sun/font/freetypeScaler.c	Fri Jun 13 15:04:01 2014 +0100
@@ -38,6 +38,10 @@
 #include FT_SIZES_H
 #include FT_OUTLINE_H
 #include FT_SYNTHESIS_H
+#ifdef INFINALITY
+#include FT_LCD_FILTER_H
+#include <fontconfig/fontconfig.h>
+#endif
 
 #include "fontscaler.h"
 
@@ -682,6 +686,147 @@
     }
 }
 
+#ifdef INFINALITY
+typedef struct {
+    FT_Render_Mode ftRenderMode;
+    int ftLoadFlags;
+    FT_LcdFilter ftLcdFilter;
+} RenderingProperties;
+
+static FcPattern* matchedPattern(const FcChar8* family, double ptSize) {
+    /*
+      we will create pattern to find our family and size in
+      fontconfig configuration, and then will return it's
+      properties:
+    */
+    FcPattern* fcPattern = 0;
+    fcPattern = FcPatternCreate();
+    FcValue fcValue;
+    fcValue.type = FcTypeString;
+    fcValue.u.s = family;
+    FcPatternAdd(fcPattern, FC_FAMILY, fcValue, FcTrue);
+    FcPatternAddBool(fcPattern, FC_SCALABLE, FcTrue);
+    FcPatternAddDouble(fcPattern, FC_SIZE, ptSize);
+    // TODO FcPatternAddInteger(pattern, FC_WEIGHT, weight_value);
+    // TODO FcPatternAddInteger(pattern, FC_SLANT, slant_value);
+    // TODO FcPatternAddDouble(pattern, FC_PIXEL_SIZE, size_value);
+    // TODO FcPatternAddInteger(pattern, FC_WIDTH, stretch); 100 in most cases
+    FcConfigSubstitute(0, fcPattern, FcMatchPattern);
+    FcConfigSubstitute(0, fcPattern, FcMatchFont);
+    FcDefaultSubstitute(fcPattern);
+    FcResult res;
+
+    FcPattern *pattern = 0;
+    pattern = FcFontMatch(0, fcPattern, &res);
+    FcPatternDestroy(fcPattern);
+    return pattern;
+}
+
+static void readFontconfig(const FcChar8* family, double ptSize, jint aaType, RenderingProperties* rp) {
+
+    FcPattern *pattern = matchedPattern(family, ptSize);
+
+    int ftLoadFalgs = FT_LOAD_DEFAULT;
+    FT_Render_Mode ftRenderMode;
+    FT_LcdFilter ftLcdFilter;
+    char horizontal = 1;
+    FcBool b;
+
+    // subpixel order:
+    if (aaType == TEXT_AA_ON)
+        ftRenderMode = FT_RENDER_MODE_NORMAL;
+    else if (aaType == TEXT_AA_OFF)
+        ftRenderMode = FT_RENDER_MODE_MONO;
+    else if (FcPatternGetBool(pattern, FC_ANTIALIAS, 0, &b) == FcResultMatch)
+        if (b) {
+            int subpixel = FC_RGBA_UNKNOWN;
+            FcPatternGetInteger(pattern, FC_RGBA, 0, &subpixel);
+            if (subpixel == FC_RGBA_UNKNOWN)
+                subpixel = FC_RGBA_NONE;
+                switch (subpixel) {
+                case FC_RGBA_NONE:
+                    ftRenderMode = FT_RENDER_MODE_NORMAL;
+                    break;
+                case FC_RGBA_RGB:
+                case FC_RGBA_BGR:


More information about the distro-pkg-dev mailing list