Commit Graph

303 Commits

Author SHA1 Message Date
A Samuel Pottinger
003d33f951 Turn off UI scaling for windows.
Frustratingly, use of prior Processing WindowsPlatform code for detecting DPI causes UI scaling to turn off and yields a DPI of 96 regardless of windows display scaling. However, in the current WindowsPlatform, UI scaling is enabled but text size calculation within custom rendering swing elements is incorrect, possibly because there is scaling happening underneath transparently. This causes x positions to be inflated at 125% scaling, for example. On a whole, Windows itself does not recommend scaling other than 100% inside the settings UI and that UI scaling within Java itself makes the custom UI elements look bad. So, this suggests disabling the ui scaling in Java for the editor, leaving the opportunity for Processing to find a new way to detect system scaling in the future and handling it internally. At this time, sketches still seem to be calculating positions correctly though they do appear pixelated with display scaling. Therefore, they are left alone.
2019-11-22 16:53:48 -08:00
A Samuel Pottinger
ee299ef935 Move to ANTLR 4 with Java 11 lang features and localization. (#5)
* Move to ANTLR 4 with Java 11 lang features and localization.

Introduces ANTLR4 and Java 8 language feature support within IDE while also adding additional hooks for localization of syntax error messages, addressing https://github.com/processing/processing/issues/3054 and https://github.com/processing/processing/issues/3055.

The PR is broadly a continuation of https://github.com/processing/processing/issues/3055, bringing it up to speed with the latest Processing master plus the changes introduced at https://github.com/processing/processing/pull/5753. **Requires https://github.com/processing/processing/pull/5753 as pre-requisite.** This introduces a number of edits beyond https://github.com/processing/processing/issues/3055 beyond compatibility with current Processing master and https://github.com/processing/processing/pull/5753 including:

 - Update to the grammar itself
 - Change ANTLR listeners to emit `TextTransform.Edit` to unify JDT-based `PreprocessingService` and `JavaBuild`, removing code with duplicate purpose.
 - Introduction of syntax error rewriting with support for localization.
 - Addition of complete localized strings set for English and Spanish.
 - Addition of partial localized strings set for other languages.
 - Refactor of ANTLR-related code for testability and readability
 - Expansion of tests including full parse tests for new Java features (type inference, lambdas).

* Ask travis for ant upgrade prior to run.

* Ask Travis for java11 update.

* Add openjdk ppa

* Travis no confirmation on add ppa.

* Force newer ant on travis.

* Swtich ant download to www-us mirror.

* Switch ant to 1.10.7

* Start x for unit tests in travis.

* More complete start x in travis.

* Revert x in travis.

* Try x in services.
2019-10-05 23:34:38 -07:00
A Pottinger
c14695476e Moves to Java11 and OpenJDK via AdoptOpenJDK within the processing4 train.
Moves to Java11 and OpenJDK via AdoptOpenJDK within the processing4 train using a squash of sampottinger processing fork's java11 branch.

**Primary required changes:**
Some changes directly support OpenJFX / OpenJDK 11:

 - Response to image loading changes caused by [JEP 320](https://openjdk.java.net/jeps/320)
 - Use of jmodules as necessitated by [JEP 261](https://openjdk.java.net/jeps/261)
 - Reponse to largely changed file paths caused by [JEP 220](https://openjdk.java.net/jeps/220).
 - Modifications in build system related to AdoptOpenJDK and Java 11 which have a different naming structure for downloads.
 - Allowing use of non-Oracle Java within internal Processing checks.

**Secondary required changes:**
There were some secondary required changes that impacted the usability of Processing after having moved to OpenJFX / OpenJDK 11:

 - Removal of com.apple.eawt calls related to [JEP 272](http://openjdk.java.net/jeps/272)
 - Response to HiDPI support on Windows and Linux in [JEP 263](https://openjdk.java.net/jeps/263)
- Removal of `java.ext.dirs`. Would be forced by [JEP 220](http://openjdk.java.net/jeps/220).
 - Due to bugs on Windows, updated the JNA jars.
 - Changes in downloader build tasks to support AdoptOpenJDK and OpenJFX.
 - Updated org.eclipse.* / equinox jars.
 - Some optimization around size of distribution.
 - Update of AppBundler.
 - Some changes in formulation of classpath and modifications in PreprocessingService given [JEP 261](https://openjdk.java.net/jeps/261).

**Incidental changes:**
This was (ahem) a bit of a larger PR with the above modifications. So, I wanted to introduce automated tests when possible and convenient along with a few changes for platform sustainability in order to support development:

 - Addition of cross-building capability (!) made possible by AdoptOpenJDK.
 - Addition of mockito for testing.
 - Upgrade of junit.
 - Addition of ant-contrib.
 - Standardized nomenclature around JRE / JDK in `build/build.xml`
 - Deduplication of code in `jre/build.xml`.
 - Addition of JavaDoc in a few places.
 - Some refactoring of PImage / Shape to support increased testing and readability in image manipulation code.
2019-10-05 20:49:33 -07:00
Ben Fry
fe932b8c7e add 2019 to the About/splash screen 2019-01-18 16:09:18 -08:00
Ben Fry
4e13ae5404 add 2018 to the about/splash screen 2018-03-18 20:07:26 -04:00
Ben Fry
e5ed6ae7f1 possible fix for visual artifacts seen in #4700 2017-02-12 10:02:10 -05:00
Ben Fry
8b74491e69 fix direction of slashes 2016-12-23 03:40:25 -05:00
Ben Fry
cd35a0a04b better error message when running from the .zip file 2016-12-04 16:47:19 -05:00
Ben Fry
534ca5d86f fixes for java.ext.dirs on Windows (more for #4623) 2016-08-19 15:39:02 -04:00
Ben Fry
bcd7f9daf2 work on quoting of java.ext.dirs (#4623) 2016-08-19 14:07:04 -04:00
Ben Fry
574cfd0442 updated splash screen for Windows 2016-08-16 18:13:49 -04:00
Ben Fry
ef7c4525f3 tweaks and testing for ext.dirs handling 2016-08-12 15:27:18 -04:00
Ben Fry
dbdb5416af remove java.ext.dirs on startup (fixes #4608) 2016-08-06 16:49:55 -04:00
gohai
f75fc3762a Update to JNA 4.2.0
The name of the subfolder containing jnidispatch.dll for 64-bit Windows changed as well.
2016-05-07 13:31:27 +02:00
Ben Fry
80fe29e4a5 Merge pull request #4387 from JakubValtar/update-jdt
Update JDT to 4.5.2
2016-04-06 21:25:42 -07:00
Jakub Valtar
d50a571879 Update min version
...so we can get rid of the workaround for JDK bug
2016-04-04 20:58:21 +02:00
Jakub Valtar
8cae611554 Update JDT to 4.5.2 2016-04-04 20:12:38 +02:00
Jakub Valtar
c3222348e1 Styling 2015-10-30 03:30:37 +01:00
Jakub Valtar
1345f77f93 Workaround for JRE bug freezing the PDE
Because of a JRE bug, code completion will occasionally freeze the PDE.
Never seen this one before, however, it happened to me three times in a
row while I was giving a lecture today and I had to kill the PDE and
write all the code again. I can reproduce it back to beta 7. It is
caused by JIT compiler, workaround is to disable it for this particular
method. See https://bugs.openjdk.java.net/browse/JDK-8060036 and
http://kingsfleet.blogspot.com.br/2014/11/but-thats-impossible-or-finding-out.html
2015-10-30 03:03:58 +01:00
Ben Fry
c182cecd3d add new splash screen 2015-09-29 21:09:19 -04:00
Ben Fry
c4ffdfe68c debugging and forcing use of the local version of jna for #3800 and #3624 2015-09-20 11:07:56 -04:00
Ben Fry
4c192a5cda looking into Windows launcher issues #3543 2015-08-06 14:16:17 -04:00
Ben Fry
26999290c5 new icons and build script additions to cover them 2015-06-03 15:43:04 -05:00
Ben Fry
2b12f969a6 lots of new toolbar icons plus a placeholder startup graphic 2015-05-19 18:14:04 -04:00
Ben Fry
3982af6d88 update command line tool for all platforms (fixes #3224) 2015-04-27 11:36:37 -04:00
Ben Fry
cbec8c5489 ignore the new jre file 2015-04-01 14:55:38 -04:00
Kyle Feuz
c7759f2a78 Bring in upstream changes from 'master' 2014-11-21 10:31:28 -07:00
Kyle Feuz
516c9b93c2 unset executable bit in miscellaneous files 2014-11-20 13:25:01 -07:00
Kyle Feuz
cc312f8b76 Unset the executable bit on xml files 2014-11-20 13:17:33 -07:00
Kyle Feuz
49c3435b36 Normalize line endings. Auto-detect textfiles. Force .java and .pde files to be treated as text. 2014-11-20 12:57:04 -07:00
josh giesbrecht
ed6edbf9db small fix to l4j config so windows build works 2014-06-25 06:13:59 -07:00
josh giesbrecht
5137b0468c Revert "fixed launch4j config for windows build"
This reverts commit 309a5eb0ae.
2014-06-25 06:08:03 -07:00
josh giesbrecht
309a5eb0ae fixed launch4j config for windows build 2014-06-24 08:21:26 -07:00
Ben Fry
4359a16f0e increase heap size to 256m (-Xmx256) per Manindra request 2014-06-06 12:39:58 -04:00
Ben Fry
c43003496f simplify layout a bit more 2014-05-10 15:53:35 -04:00
Ben Fry
187dd45087 git rid of launcher folder, since it is now the only one 2014-05-10 15:16:21 -04:00
Ben Fry
27105ec73d removing obselete export and build files 2014-05-10 15:13:14 -04:00
Ben Fry
e9d835b331 update config, use external config to make icons work in export, turn off stdout from launch4j ant 2014-05-10 11:38:12 -04:00
Ben Fry
00eaea0ea6 additional launcher cleanups 2014-05-10 10:58:19 -04:00
Ben Fry
bf9b7137d0 tweak 64- and 32-bit export on Windows to include JNA switch 2014-05-08 16:14:52 -04:00
Ben Fry
72fb419c3d todo notes plus start on fixes for #2239 on Windows 2014-05-08 16:10:50 -04:00
Ben Fry
5101506047 backing out pull #2432 2014-04-11 05:55:05 -04:00
Ben Fry
649477cf6c double entry 2014-04-08 04:28:15 -04:00
Jonathan Feinberg
a1bdd2e2ed Make OpenGL core classes available to PDE on Windows. 2014-04-07 21:55:21 -04:00
Ben Fry
e10daecd14 change ignore for new JRE 2013-09-21 16:55:58 -04:00
Ben Fry
97d1d9aa00 bat launcher for testing 2013-06-02 15:19:01 -04:00
Ben Fry
2e403ae88d holy hell, let's burn this place down 2013-04-30 12:30:24 -04:00
Manindra Moharana
0d09197f39 Merge remote-tracking branch 'upstream/master' into jdiMod 2013-02-19 23:55:19 +05:30
Ben Fry
c1d78cfb33 add ignore file for JRE 2013-02-18 18:15:26 -05:00
Manindra Moharana
6bf34b1518 moved to jdi, abandoning tools.jar dependency 2013-02-17 05:21:33 +05:30