Detecting HIDPI settings in JavaFX application - linux

Currently, I am using JDK 15 and JavaFX 15 in GNOME/Wayland on Linux on a 4K monitor. It appears that the produced apps cannot detect my 200% upscale setting.
When researching I came up with this bug ticket that suggests moving to JavaFX 11, which is no longer working.
How should I detect and force upscale my JavaFX applications?

The ticket does not suggest downgrading to JavaFX 11. It suggest upgrading from 8. As you are already using 15 that's fine. Nevertheless I would suggest to try the latest EA release of JavaFX which is 17-ea+2 at the time of this writing, in order to see whether your problem has been fixed already. If not submit a bug report.
There recently was a discussion on the mailing list about such a bug:
https://mail.openjdk.java.net/pipermail/openjfx-dev/2021-February/028827.html
Maybe that helps.

Related

AndroidStudio update destroyed everything and I need help as to which way I should rebuild (details of fiasco within)

After this huge mess from one AndroidStudio update, am cleaning everything and starting from scratch.
I'd like to ask if anyone knows if I should go with specific versions of Java.
But first my headache, although I just cleaned my computer of AndroidStudio.
I have Win 10 64 bit
HAD AndroidStudio 1.51 (it said it was JRE:1.7.0_79-b15 amd64)
After the update I had a "Unsupported major.minor version 52.0" error
Following some posts I upgraded the Java on my machine.
First "1.8.0_74" but AndroidStudio couldn't find the JDK directory, so I installed "1.8.0_73" and AndroidStudio found the JDK directory. But then I started getting rendering errors but with Rendering Problems Exception raised during
rendering: com.android.ide.common.rendering.api.LayoutlibCallback.getXmlFileParser(Ljava/lang/String;)Lorg/xmlpull/v1/XmlPullParser;
Anyway, that's it. This has become such a tragedy that I would rather start from scratch, but if anyone could point me as to the proper (steps) of which way I should go, I would really appreciate it.
Thanks ahead,
Sergio
I met this issue when I updated the api android 23 N (preview). In xml editor, change the Api to render into Api 23 android 6.0 and Autimatically Pick best.This would solve the problem.
refer: link
Yes.. i also faced same problem,I have resolved with changing the version to api 23.generally it will take best/latest version ,in my case its set to N preview.

JavaFX missing from JDK 1.7/1.8 in Linux?

I have a problem that allegedly isn't possible, so I'm having a heck of a time finding an answer.
I have the latest version of NetBeans 7.4, running on fully-updated Fedora 20 x64. Officially, this can work with JavaFX. Period. I have both the JDK from the repo (1.7.something) and the very latest version I could find (1.8.0). Officially, these have JavaFX with them. Period.
If I try to create a new JavaFX project, it has this to say:
Failed to automatically set-up a JavaFX Platform.
Please go to Platform Manager, create a non-default Java SE platform, then go to the JavaFX tab,
enable JavaFX and fill in the paths to valid JavaFX SDK and JavaFX Runtime.
Note: JavaFX SDK can be downloaded from JavaFX website.
Well alright, I'm used to things getting confused, I think I can fix this. Go create a new platform, and... there's no "JavaFX" tab. It took a bit of research to even find out what it was talking about, and in the process I discovered that the tab has actually been removed from 7.4. Because NetBeans 7.4 will absolutely, definitely recognize JavaFX automatically. Period.
Going to the actual JavaFX site tells me, as expected, that it's bundled with the Java SE 7 JDK I already have. Period.
Since the end result I'm after could technically be achieved by integrating one JavaFX component into my Swing application, I attempted that, but NetBeans still can not find anything related to JavaFX and therefore yells at me if I try to import such a thing.
So, given that things that are supposed to just plain work just plain aren't... where can I go from here?
Currently in Debian and Ubuntu (probably others) JavaFX is a separate package from the OpenJDK (openjdk-8-jdk) and so needs to be installed:
sudo apt-get install libopenjfx-java libopenjfx-java-doc
Notable issue (this issue does not impact a Maven, JavaFX application so if that is your preferred build method then ignore the following issue):
If you try to create a new project:
Categories > JavaFX
Project > JavaFXApplication
You'll get:
Internal error. Missing resources [/resources/web-files/javafx-loading-100x100.gif]
/home/ken/NetBeansProjects/vestFxReports/nbproject/jfx-impl.xml:1465: The following error occurred while executing this line:
/home/ken/NetBeansProjects/vestFxReports/nbproject/jfx-impl.xml:3093: The following error occurred while executing this line:
/home/ken/NetBeansProjects/vestFxReports/nbproject/jfx-impl.xml:2055: Error: -includedt requires the java deployment toolkit, which is not included in this distribution
BUILD FAILED (total time: 1 second)
To fix the above error [following steps are derived from here: http://hongouru.blogspot.com.uy/2015/09/solved-error-building-new-project-using.html]:
Switch to the files tab (usually you're on the Project tab).
Expand the node for your project >
expand the nbproject node > open the "project.properties" file.
Find the line javafx.deploy.includeDT=true and change true to false.
Now you can create and run a JavaFX application, on OpenJDK.
Next steps, although beyond the issue at hand you'll probably at some point want to download the JavaFX scene builder: http://www.oracle.com/technetwork/java/javafxscenebuilder-1x-archive-2199384.html
Apparently, the issue is indeed a discrepancy between the open-source OpenJDK provided by most Linux distributions, and the proprietary Oracle JDK. Ironically, this is a well-known issue, but you have to specifically search for it to find it, and by then you already know.
The solution is to download the official Oracle JDK, and if necessary create the matching platform in NetBeans (located under /usr/java/jdk... at this moment). It should work perfectly fine after that.
Perhaps the official documentation
https://netbeans.org/kb/docs/java/nb_fx_screencast.html
https://netbeans.org/kb/72/java/javafx-setup.html
may help you to set it up

Javafx 2.2 and Snow Leopard

I need to deploy a JavaFX2.2 application on Mac machines. OS X 10.7 or later are fine with Java 7u7. What about OS X 10.6? Do we have any workaround? I think 10.6 can update upto Java 6u35 and somewhere I read 2.1 & 2.2 can run with 6u26 or later (However there are no support though which is ok).
Can someone please help me to accomplish this? Can we just download standalone JFX2.2 runtime from somewhere and put it on OSX10.6? Or any other alternative option? Is there a way we can copy/package 2.2 runtime along with the app itself?
Please help.
Is there a way we can copy/package 2.2 runtime along with the app itself?
Yes, see the documentation on self-contained application packaging which is supported on OS X 10.7+ and includes JavaFX 2.2+ and jre7u6+.
What about OS X 10.6?
Quote from an oracle forum thread by the JavaFX lead regarding Snow Leopard support and JavaFX 2.2:
FWIW, there are in fact some APIs we use from Lion that aren't on Snow Leopard. Also, Apple only supports the current release of the OS - 1 (so now it would be Lion and Mountain Lion), and for deployment we needed special hooks. The thought was that it didn't make sense to support versions of the Mac OS that Apple themselves didn't support any longer.
Some of the early developer builds of JavaFX (2.0/2.1) did run on Snow Leopard, but they were only early development builds and not production ready, plus, I don't think the license on those builds allow you to use them in production code. I don't think these early 2.0/2.1 development builds are distributed by Oracle anymore.
When JavaFX is fully open sourced, you might be able to undertake an effort to backport it to Snow Leopard, but by then it probably wouldn't be worth it.
As a hack, you could try adding the JavaFX runtime bundled in jre7u7+ to an Apple Java6u35 and see if you can run an app - but this would be a totally unsupported configuration likely to break and may also have distribution licensing issues.
Reasons why mac does not work with javafx.. currently
From: https://blogs.oracle.com/henrik/entry/oracle_jdk_and_javafx_sdk
Quote:
Note that support on Mac is for development only; e.g. we don't expect your Mac to be running a business critical server-side application...
Context: JavaFx is still in development on mac since java7, full on support was expected at java 8. Java 8 will be real eased september
From: http://www.oracle.com/technetwork/java/javafx/downloads/supportedconfigurations-1506746.html
Quote:
MacOs is only supported in 10.7.3 or greater (Mac OS X Lion, the second newest operating system)
Context: Stating JavaFx supported configurations. There are many browsers where JavaFx will not work!
From: http://docs.oracle.com/javafx/
Quote:
JavaFX applications run on a desktop. On Windows, they also run in a browser, and over the web.
Context: This with following quote implies only developmental progress on macOS
From: http://ed4becky.net/homepage/javafx-from-the-trenches-part-2-its-not-always-about-the-sex/?rcommentid=26916&rerror=incorrect-captcha-sol&rchash=35499a8f4e0544f950435495d20b0cf1#commentform
Quote:
Turns out there is a bug in the ChoiceBox – JIRA RT-26837 I talk about on the JavaFX2 Forum. It got the attention of Jonathan Giles at Oracle, and he escalated the fix, but it won’t be out until Java8 is released.
Context: There are still a lot of bugs that will keep you from success on mac!

Resharper 6 online analysis memory

After upgrading to R# v6 I am unpleasantly surprised to see that the memory usage for the same application is using almost three (3) times what it did with v5.x, and is painfully slow. Not sure I would upgrade again if I had known this before hand.
Is this a known issue? Has anyone noticing the same jump been able to successfully tweak this?
Cheers,
Berryl
We're receiving mixed reports on memory and performance consumption in v6. In some cases, users call the new version a massive improvement over previous versions, other times they report increased memory consumption and lags in certain scenarios. This is pretty much the same story with every new version.
There are several known issues related to processing classic ASP files and in general processing source file on solution load. Both have been addressed lately and will be fixed in ReSharper 6.1 that is coming out later this Fall.
I suggest that you do the following:
Try to clean ReSharper caches by deleting YourSolutionName.suo and *_ReSharper.YourSolutionName* folder - this helps sometimes.
Downgrade to ReSharper 5.1.3 for the time being. This version is available via ReSharper archive.
As soon as ReSharper 6.1 comes out, install it to see if it's any better.
If it's no better, profile ReSharper and send the profile to us for investigation.
An alternative would be to profile 6.0 right away as there's a chance that your issue is something we've not yet investigated during 6.1 development.

Unable to select BlackBerry 9800 as default web simulator on Eclipse

I have some time now working with the BlackBerry's Eclipse Plugin with no issues using the Curve 8530 Simulator. Im trying to add the Torch 9800 Simulator but I get this:
Im pretty new on the BB Stuff.
Im I missing something?
Is there a debug-enabled version (I check and apparently the version that I have should be pretty capable of debugging)?
Help will be appreciated.
Edit: I noticed that I can only add simulators using OS v.5 (e.i BlackBerry Storm2 9550). But the why is still a mystery to me.
I've been looking for this issue for over a week, and the only think i can think of (yet not confirm) is that there are no debugging versions for OS other than 5x.
I was able to debug using all available models for OS5x (Pearl, Tour, Storm, Storm2, Bold, Curve)
So the official answer to this (until some one comes up with a more complete one) is...
There is no support for web debugging on versions other than OS 5x Simulators.
Not quite, I have a 4.6.0 simulator here (8220 "T-MobileEU" branded) that is debugging capable, but my 5.0.0 simulator (8530) is not listed as capable. The confusion continues.

Resources