Looks good. I have done full testing with both GTK 2 and GTK 3 on Ubuntu
16.04 with a sanity check on Oracle Linux.
+1 (note that you will need a second reviewer)
As a reminder of what we discussed off-line, please use "8206246" as the
bug ID when pushing this change (rather than 8087516), since this fix is
the accumulation of 20 bugs.
-- Kevin
On 10/10/2018 5:09 AM, Pankaj Bansal wrote:
Hi Kevin,
Thanks for review and the information provided.
I have updated the webrev for the proposed change from RTLD_GLOBAL to
RTLD_LOCAL in launcher.c. Along with the this change, the new patch also
includes the backport of two more fixes mentioned below. So now we have
backported total of 20 bugs.
19. JDK-8171985: Fx applet fails to get loaded on Ubuntu with jre9-b150
20. JDK-8171928: Build fails on Oracle Linux 7 with unused parameter warning
I have tested it on all three platforms (Windows 10, Linux (Ubuntu 18.4 LTS, Ubuntu 16.04 LTS) and
and Mac) and no new test failures are found. I have tested the "HelloWebView" and
"Ensemble" and I don't see any issue. I did some sanity testing on OL 7.5 as well and
things look good to me.
Webrev:
http://cr.openjdk.java.net/~pbansal/gtk3_JFX_backport/webrev.01/
Regards,
Pankaj
-----Original Message-----
From: Kevin Rushforth
Sent: Thursday, October 4, 2018 7:41 AM
To: Pankaj Bansal; openjfx-dev@openjdk.java.net
Subject: Re: [8u-backport] JDK-8087516 : [JavaFX] Conditional support for GTK 3
on Linux
I debugged this offline earlier today, and it looks related to a collision in
the glib library. As I mentioned offline, a possible solution is to remove
RTLD_GLOBAL from the dlopen of the libglassgtk{2,3}.so library. I was able to
do a full build / test on both GTK 2 and GTK 3 including media and webkit with
that modification.
Overall, this is looking quite good.
One more thing: the patch adds several new tests, so you will need to run at
least the new tests on all three platforms (a quick check on Mac shows a couple
failures).
I also see a couple differences between jfx-dev and 8u-dev in the native code
that should be looked into to make sure there wasn't a missed fix on the
backport (the Hi-DPI diffs are expected, but I see a couple others).
-- Kevin
On 10/3/2018 10:16 AM, Kevin Rushforth wrote:
My initial testing shows a couple problems which will need to be
resolved:
1) I get many GTK warnings relating to Pango when running HelloWebView
2) Running any program that uses media crashes
This is on Ubuntu 16.04 LTS using the default GTK 2 mode.
-- Kevin
On 10/3/2018 3:26 AM, Pankaj Bansal wrote:
Hi All,
Please review the patch for 8u-dev backport for JDK-8087516
<https://bugs.openjdk.java.net/browse/JDK-8087516>. It adds
conditional support for gtk3.
Along with the enhancement, following bug fixes have also been
included in the backport webrev
1.https://bugs.openjdk.java.net/browse/JDK-8159892: [GTK3] invalid
rendering of FX app stage in case of scaling
2.https://bugs.openjdk.java.net/browse/JDK-8163496: Rework Glass GTK
to correct gtk3 structure sizes
3.https://bugs.openjdk.java.net/browse/JDK-8145837: Remove deprecated
GTK2 calls in JavaFX
4.https://bugs.openjdk.java.net/browse/JDK-8165562: Upgrade to newer
version of SWT for build/test
5.https://bugs.openjdk.java.net/browse/JDK-8171330: Issues with
transparent stage and GTK
6.https://bugs.openjdk.java.net/browse/JDK-8171976: Linux: JavaFX
window not painted with background when using GTK 3
7.https://bugs.openjdk.java.net/browse/JDK-8166414: Scene returns
incorrect coordinates
8.https://bugs.openjdk.java.net/browse/JDK-8166147: Ubuntu 16.04:
expandable content goes outside of the alert dialog
9.https://bugs.openjdk.java.net/browse/JDK-8152421: After initing the
modality of a non-primary stage to MODAL, closing that stage causes
the primary stage to become non-resizable
10.https://bugs.openjdk.java.net/browse/JDK-8090249: [Linux]
Restoring owner stage after minimize does not restore position of
child stage
11.https://bugs.openjdk.java.net/browse/JDK-8173901: Linux: Position
of Stage is not restored after exiting full screen
12.https://bugs.openjdk.java.net/browse/JDK-8175204: Linux: Dialog
windows come up 1-pixel wide
13.https://bugs.openjdk.java.net/browse/JDK-8175205: Linux: Stage
initially in full-screen mode not shown when exiting full-screen
14.https://bugs.openjdk.java.net/browse/JDK-8175822: Pulldown
position regression and not painting correctly tooltips regression
15.https://bugs.openjdk.java.net/browse/JDK-8176844: Menus not always
selected properly with GTK 3
16.https://bugs.openjdk.java.net/browse/JDK-8172219: Allow compiling
without GTK 3.0 being installed
17.https://bugs.openjdk.java.net/browse/JDK-8157002 Toggle gtk
version if SWT used via FXCanvas
18.https://bugs.openjdk.java.net/browse/JDK-8156491: Autodetect GTK
version for JFX
The original gtk3 backport patch applied cleanly, but the bugs did
not apply cleanly. So a review is required.
I have run the full gradle tests on Ubuntu 14.04 LTS, Ubuntu 16.04
LTS, Ubuntu 18.04 and have done sanity testing on Oracle Linux 7.5.
webrev:
http://cr.openjdk.java.net/~pbansal/gtk3_JFX_backport/webrev.00/
JBS: https://bugs.openjdk.java.net/browse/JDK-8087516
JDK 9 Changeset:
http://hg.openjdk.java.net/openjfx/9-dev/rt/rev/8c6d0386d3f5
Regards,
Pankaj