Hi Erik,

I tried testing our build under a Gentoo LiveCD. Even the minimal environment of the LiveCD has the org.gnome.desktop.interface schema defined so I'm not sure how minimal your environment was. I did discover that, although the schema was there, it had a value of "0" for the scaling-factor which caused us to create bogus logical screen sizes that probably caused the exception you saw, so simply finding that schema and key is not enough for us to trust the value. I'll add some protection for bad data from the key, but I'm curious to find out how minimal your install was and whether we should simply state our dependency, or if your configuration is likely to be common enough that we should protect against it in our code...?

Also, what does:

% gsettings get org.gnome.desktop.interface scaling-factor

return for your system?  If you set it to "1", does FX come up fine?


On 05/16/2016 01:01 PM, Jim Graham wrote:
These may both be related to the HiDPI fix instead.  I added a usage of
g_settings in that fix that went in on Friday.  It looks like I'll have
to check for the schema existing before I access it.

Can you file a bug report?

(On a side note, the call that grabs the schema does not have a "schema
not known" return value - if you ask for a schema that doesn't exist
they abort your application.  Seems kind of drastic, but the bug reports
that request that they simply return null were met with push back
because the developers couldn't imagine why anyone would want such a
thing (huh?) and later an attempt to return NULL on unrecognized schemas
and keys had to be backed out because of the huge disaster the NULL
values caused (and somehow ABORT'ing on behalf of the application is
better in that case?).  Unfortunately I don't see much sanity in those
APIs or any support for a case like this of "I'd like to get that value,
but if you haven't heard of it, that's fine as I have a backup plan".
The only way around this will be to enumerate all schemas and all keys
and see if the ones we want are found in the list - a rather extreme
workaround for bad error handling behavior in their APIs...)


On 05/16/2016 05:15 AM, Erik De Rijcke wrote:
I ran into several issues, however I'm not sure they are related to gtk3

first of all it seems there is a dependency on:
I'm not sure how desirable this is (I did not have it installed,
it fixed the error but I can image people not wanting to install it?)

Second, and this seems unrelated to gtk(3?), the screen initialization
fails (test was done using gentoo linux on virtualbox with windows 7 as

Exception in thread "JavaFX Application Thread"
java.lang.IllegalArgumentException: Both width and height must be >= 0

at javafx.geometry.Rectangle2D.<init>(Rectangle2D.java:104)
at javafx.stage.Screen.nativeToScreen(Screen.java:152)
at javafx.stage.Screen.updateConfiguration(Screen.java:88)
at javafx.stage.Screen.checkDirty(Screen.java:82)
at javafx.stage.Screen.getPrimary(Screen.java:185)



at com.sun.glass.ui.Application.lambda$run$1(Application.java:155)
at com.sun.glass.ui.gtk.GtkApplication._runLoop(Native Method)

at java.lang.Thread.run(Thread.java:804)

Nearly all values seem to be -2147483648

I used openjdk9 109 as per instructions of the wiki, and the latest

On Mon, May 9, 2016 at 8:56 PM, Jim Graham <james.gra...@oracle.com>

Should we integrate that into prism.verbose output?


On 5/9/16 6:18 AM, David Hill wrote:

I added a new feature Friday and would like some help testing it.

This new feature (8087516: Conditional support for GTK 3 on Linux)
us to use either GTK v2 or 3 with JavaFX.

The default has not changed - we will use gtk 2 by preference.

The help I need is for anyone doing testing on Linux with the current
tree - like todays sanity testing. Adding


should output the version detected and used. I would appreciate a paste
of that along with the OS version.


toggles the preferred version to GTK 3. Testing using that toggled
also be appreciated, along with a note to me
with the OS version.


Reply via email to