Skip to content

Commit

Permalink
Merge
Browse files Browse the repository at this point in the history
  • Loading branch information
kevinrushforth committed Sep 13, 2019
2 parents a1aa38a + ba1fa8a commit 9df20c5
Show file tree
Hide file tree
Showing 5 changed files with 252 additions and 12 deletions.
68 changes: 68 additions & 0 deletions doc-files/release-notes-12.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# Release Notes for JavaFX 12

## Introduction

The following notes describe important changes and information about this release.

As of JDK 11 the JavaFX modules are delivered separately from the JDK. These release notes cover the standalone JavaFX 12 release. JavaFX 12 requires JDK 11.

## List of Fixed Bugs

Issue key|Summary|Subcomponent
---------|-------|------------
[JDK-8152395](https://bugs.openjdk.java.net/browse/JDK-8152395)|[ToolBar] Overflow button of ToolBar doesn't appear when the size of the items increases|controls
[JDK-8212102](https://bugs.openjdk.java.net/browse/JDK-8212102)|[TextField] IOOBE on paste/replace text with control characters|controls
[JDK-8217270](https://bugs.openjdk.java.net/browse/JDK-8217270)|Broken link to cssref.html in javafx.controls package docs|controls
[JDK-8167068](https://bugs.openjdk.java.net/browse/JDK-8167068)|GLS language errors|graphics
[JDK-8188810](https://bugs.openjdk.java.net/browse/JDK-8188810)|Fonts are blurry on Ubuntu 16.04 and Debian 9|graphics
[JDK-8203884](https://bugs.openjdk.java.net/browse/JDK-8203884)|Update libjpeg to version 9c|graphics
[JDK-8207839](https://bugs.openjdk.java.net/browse/JDK-8207839)|[win] Negative glyph_id causes ArrayIndexOutOfBoundsException|graphics
[JDK-8209764](https://bugs.openjdk.java.net/browse/JDK-8209764)|JavaFX/Monocle - Partial Screen Capture Broken|graphics
[JDK-8209791](https://bugs.openjdk.java.net/browse/JDK-8209791)|OpenJFX build fails in PrismPrint.c due to missing JNICALL|graphics
[JDK-8209968](https://bugs.openjdk.java.net/browse/JDK-8209968)|Image size sometimes off by 1 when scaling down images with preserveRatio true|graphics
[JDK-8209969](https://bugs.openjdk.java.net/browse/JDK-8209969)|Monocle setBounds issue (width/height mixed)|graphics
[JDK-8210219](https://bugs.openjdk.java.net/browse/JDK-8210219)|GlassClipboard.cpp fails to compile with newer versions of VS2017|graphics
[JDK-8210386](https://bugs.openjdk.java.net/browse/JDK-8210386)|Clipping problems with complex affine transforms: negative scaling factors or small scaling factors|graphics
[JDK-8212115](https://bugs.openjdk.java.net/browse/JDK-8212115)|Typo in javadoc for javafx.stage.Window|graphics
[JDK-8214035](https://bugs.openjdk.java.net/browse/JDK-8214035)|Unable to render cmyk jpeg image|graphics
[JDK-8214397](https://bugs.openjdk.java.net/browse/JDK-8214397)|Provide fallback to tmpdir if user home is not writable for native libs|graphics
[JDK-8214185](https://bugs.openjdk.java.net/browse/JDK-8214185)|Upgrade GStreamer to the latest (1.14.4) version|media
[JDK-8183399](https://bugs.openjdk.java.net/browse/JDK-8183399)|[macOSX] Scroll events finish with invalid delta values|other
[JDK-8189926](https://bugs.openjdk.java.net/browse/JDK-8189926)|[Mac] Pulse timer should pause when idle|other
[JDK-8211014](https://bugs.openjdk.java.net/browse/JDK-8211014)|Fix mistakes in FX API docs|other
[JDK-8205092](https://bugs.openjdk.java.net/browse/JDK-8205092)|NullPointerException in PickResultChooser.processOffer when using viewOrder|scenegraph
[JDK-8207837](https://bugs.openjdk.java.net/browse/JDK-8207837)|Indeterminate ProgressBar does not animate if content is added after scene is set on window|scenegraph
[JDK-8216377](https://bugs.openjdk.java.net/browse/JDK-8216377)|JavaFX: memoryleak for initial nodes of Window|scenegraph
[JDK-8210092](https://bugs.openjdk.java.net/browse/JDK-8210092)|Remove old javafx.swing implementation|swing
[JDK-8207159](https://bugs.openjdk.java.net/browse/JDK-8207159)|Update ICU to version 62.1|web
[JDK-8209457](https://bugs.openjdk.java.net/browse/JDK-8209457)|[WebView] Canvas.toDataURL with image/jpeg MIME type fails|web
[JDK-8210218](https://bugs.openjdk.java.net/browse/JDK-8210218)|WebKit build fails with newer versions of VS 2017|web
[JDK-8211399](https://bugs.openjdk.java.net/browse/JDK-8211399)|libxslt fails to build with glibc 2.26|web
[JDK-8211454](https://bugs.openjdk.java.net/browse/JDK-8211454)|Update SQLite to version 3.26.0|web
[JDK-8213541](https://bugs.openjdk.java.net/browse/JDK-8213541)|WebView does not handle HTTP response without ContentType|web
[JDK-8213806](https://bugs.openjdk.java.net/browse/JDK-8213806)|WebView - JVM crashes for given HTML|web
[JDK-8214119](https://bugs.openjdk.java.net/browse/JDK-8214119)|Update to 607.1 version of WebKit|web
[JDK-8214452](https://bugs.openjdk.java.net/browse/JDK-8214452)|Update libxml2 to version 2.9.9|web
[JDK-8215702](https://bugs.openjdk.java.net/browse/JDK-8215702)|SVG gradients are not rendered|web
[JDK-8215799](https://bugs.openjdk.java.net/browse/JDK-8215799)|Complex text is not rendered by webkit on Windows|web
[JDK-8216470](https://bugs.openjdk.java.net/browse/JDK-8216470)|Some methods of System.Logger are unimplemented in PlatformLogger|web
[JDK-8218611](https://bugs.openjdk.java.net/browse/JDK-8218611)|[DRT] fast/xslt tests fails with Unsupported encoding windows-1251|web
[JDK-8210411](https://bugs.openjdk.java.net/browse/JDK-8210411)|JavaFX crashes on Ubuntu 18.04 with Wayland|window-toolkit
[JDK-8211280](https://bugs.openjdk.java.net/browse/JDK-8211280)|JavaFX build fails on Linux with gcc8|window-toolkit
[JDK-8211304](https://bugs.openjdk.java.net/browse/JDK-8211304)|[macOS] Crash on focus loss from dialog on macOS 10.14 Mojave|window-toolkit
[JDK-8218424](https://bugs.openjdk.java.net/browse/JDK-8218424)|[macOSX] mousewheel scrolling slow|window-toolkit


## List of Enhancements

Issue key|Summary|Subcomponent
---------|-------|------------
[JDK-8207942](https://bugs.openjdk.java.net/browse/JDK-8207942)|Add new protected VirtualFlow methods for subclassing|controls
[JDK-8210361](https://bugs.openjdk.java.net/browse/JDK-8210361)|Add images to docs for public API classes of controls and missing examples|controls
[JDK-8204060](https://bugs.openjdk.java.net/browse/JDK-8204060)|[Canvas] Add API in GraphicsContext to control image smoothing|graphics
[JDK-8214069](https://bugs.openjdk.java.net/browse/JDK-8214069)|Use xdg-open to get default web browser on Linux systems|graphics
[JDK-8088418](https://bugs.openjdk.java.net/browse/JDK-8088418)|Reintroduce JFR Pulse Logger|other
[JDK-8090930](https://bugs.openjdk.java.net/browse/JDK-8090930)|Support mouse forward/back buttons|scenegraph
[JDK-8211249](https://bugs.openjdk.java.net/browse/JDK-8211249)|Refactor javafx.swing implementation to get rid of unneeded abstraction layer|swing
[JDK-8148129](https://bugs.openjdk.java.net/browse/JDK-8148129)|Implement Accelerated composition for WebView|web
[JDK-8207772](https://bugs.openjdk.java.net/browse/JDK-8207772)|File API and FileReader should be supported in WebView|web
80 changes: 80 additions & 0 deletions doc-files/release-notes-13.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
# Release Notes for JavaFX 13

## Introduction

The following notes describe important changes and information about this release. In some cases, the descriptions provide links to additional detailed information about an issue or a change.

As of JDK 11 the JavaFX modules are delivered separately from the JDK. These release notes cover the standalone JavaFX 13 release. JavaFX 13 requires JDK 11 or later.

## List of Fixed Bugs

Issue key|Summary|Subcomponent
---------|-------|------------
[JDK-8221702](https://bugs.openjdk.java.net/browse/JDK-8221702)|Use HTTPS to download all build dependencies|build
[JDK-8220012](https://bugs.openjdk.java.net/browse/JDK-8220012)|Accordion control holds reference to child pane after it is removed|controls
[JDK-8209938](https://bugs.openjdk.java.net/browse/JDK-8209938)|Default and Cancel button cause memory leak|controls
[JDK-8222222](https://bugs.openjdk.java.net/browse/JDK-8222222)|Gradients defined in CSS always use "reflect" even when "repeat" is specified|controls
[JDK-8089986](https://bugs.openjdk.java.net/browse/JDK-8089986)|Menu beeps when mnemonics is used|controls
[JDK-8222073](https://bugs.openjdk.java.net/browse/JDK-8222073)|Revert unintentional change to Dialog.java|controls
[JDK-8222457](https://bugs.openjdk.java.net/browse/JDK-8222457)|TabPane doesn't respect order of TabPane.getTabs() list|controls
[JDK-8222214](https://bugs.openjdk.java.net/browse/JDK-8222214)|TableView rows disappears when inside a pane and KEY_UP is pressed|controls
[JDK-8197536](https://bugs.openjdk.java.net/browse/JDK-8197536)|TableView, ListView: unexpected scrolling behaviour on up/down keys|controls
[JDK-8201539](https://bugs.openjdk.java.net/browse/JDK-8201539)|Crash in DirectWrite CreateBitmap code when running TestFX test suite|graphics
[JDK-8222211](https://bugs.openjdk.java.net/browse/JDK-8222211)|Creating animated gif image from non FX App thread causes exception|graphics
[JDK-8210973](https://bugs.openjdk.java.net/browse/JDK-8210973)|Focus goes to wrong Window when dismissing an Alert|graphics
[JDK-8217492](https://bugs.openjdk.java.net/browse/JDK-8217492)|JavaFX - memory leak after the event WindowEvent.DESTROY|graphics
[JDK-8221987](https://bugs.openjdk.java.net/browse/JDK-8221987)|NPE in javafx.graphics/javafx.stage.Window$TKBoundsConfigurator.apply|graphics
[JDK-8226789](https://bugs.openjdk.java.net/browse/JDK-8226789)|Path rendered incorrectly when it goes outside the clipping region|graphics
[JDK-8219008](https://bugs.openjdk.java.net/browse/JDK-8219008)|Update OpenGL Headers to version 4.6|graphics
[JDK-8229890](https://bugs.openjdk.java.net/browse/JDK-8229890)|WritableImage update fails for empty region|graphics
[JDK-8208076](https://bugs.openjdk.java.net/browse/JDK-8208076)|display INVISIBLE_GLYPH_ID as square box on Windows|graphics
[JDK-8208173](https://bugs.openjdk.java.net/browse/JDK-8208173)|isComplexCharCode() returns false for U+11FF|graphics
[JDK-8222217](https://bugs.openjdk.java.net/browse/JDK-8222217)|FX build fails on 32-bit Windows after fix for JDK-8133841|media
[JDK-8133841](https://bugs.openjdk.java.net/browse/JDK-8133841)|Full HD video can not be played on standard 1080p screen in portrait mode|media
[JDK-8209180](https://bugs.openjdk.java.net/browse/JDK-8209180)|Media fails to load source from custom image, with jrt: URL|media
[JDK-8215894](https://bugs.openjdk.java.net/browse/JDK-8215894)|Provide media support for libav version 58|media
[JDK-8222780](https://bugs.openjdk.java.net/browse/JDK-8222780)|Visual Studio does not open media vs_projects files|media
[JDK-8213510](https://bugs.openjdk.java.net/browse/JDK-8213510)|[Windows] MediaPlayer does not play some mp3 with artwork stream in mjpeg|media
[JDK-8211900](https://bugs.openjdk.java.net/browse/JDK-8211900)|javafx.media classes directly reference platform classes that are excluded|media
[JDK-8218174](https://bugs.openjdk.java.net/browse/JDK-8218174)|Add missing license file for Mesa header files|other
[JDK-8222746](https://bugs.openjdk.java.net/browse/JDK-8222746)|Cleanup third-party legal files|other
[JDK-8221377](https://bugs.openjdk.java.net/browse/JDK-8221377)|Fix mistakes in FX API docs|other
[JDK-8223377](https://bugs.openjdk.java.net/browse/JDK-8223377)|JavaFX can crash due to loading the wrong native libraries if system libraries are installed|other
[JDK-8222212](https://bugs.openjdk.java.net/browse/JDK-8222212)|Memory Leak with SwingNode using Drag and Drop function|swing
[JDK-8224636](https://bugs.openjdk.java.net/browse/JDK-8224636)|"CSS ""pointer-events"" property ""stroke"" is not respected for SVG renderings"|web
[JDK-8219539](https://bugs.openjdk.java.net/browse/JDK-8219539)|Cherry pick GTK WebKit 2.22.6 changes|web
[JDK-8220147](https://bugs.openjdk.java.net/browse/JDK-8220147)|Cherry pick GTK WebKit 2.22.7 changes|web
[JDK-8227079](https://bugs.openjdk.java.net/browse/JDK-8227079)|Cherry pick GTK WebKit 2.24.3 changes|web
[JDK-8215775](https://bugs.openjdk.java.net/browse/JDK-8215775)|Scrollbars from web pages appear to be absolute, overlapping everything|web
[JDK-8225203](https://bugs.openjdk.java.net/browse/JDK-8225203)|Update SQLite to version 3.28.0|web
[JDK-8219362](https://bugs.openjdk.java.net/browse/JDK-8219362)|Update to 608.1 version of WebKit|web
[JDK-8217942](https://bugs.openjdk.java.net/browse/JDK-8217942)|Upgrade to libxslt 1.1.33|web
[JDK-8222912](https://bugs.openjdk.java.net/browse/JDK-8222912)|Websocket client doesn't work in WebView|web
[JDK-8221941](https://bugs.openjdk.java.net/browse/JDK-8221941)|Wrong package declaration for WCTextRunImpl.java in web module|web
[JDK-8219734](https://bugs.openjdk.java.net/browse/JDK-8219734)|[WebView] Get rid of macOS SDK private API usage|web
[JDK-8219917](https://bugs.openjdk.java.net/browse/JDK-8219917)|[WebView] Sub-resource integrity check fails on Windows and Linux|web
[JDK-8227431](https://bugs.openjdk.java.net/browse/JDK-8227431)|[Windows] Fix assertion failure on X86 32-bit when enabling CLOOP based JavaScript interpreter|web
[JDK-8230361](https://bugs.openjdk.java.net/browse/JDK-8230361)|[web] Cookies are not enabled in WebKit v608.1 |web
[JDK-8229328](https://bugs.openjdk.java.net/browse/JDK-8229328)|[windows] PlatformFileHandle type should be JGObject rather than void
[JDK-8222788](https://bugs.openjdk.java.net/browse/JDK-8222788)|javafx.web build fails on XCode 10.2|web
[JDK-8226951](https://bugs.openjdk.java.net/browse/JDK-8226951)|Backout commit for JDK-8226537 to fix the attribution|window-toolkit
[JDK-8211302](https://bugs.openjdk.java.net/browse/JDK-8211302)|DragAndDrop no longer works with GTK3|window-toolkit
[JDK-8226537](https://bugs.openjdk.java.net/browse/JDK-8226537)|Multi-level Stage::initOwner can crash gnome-shell or X.org server|window-toolkit
[JDK-8226274](https://bugs.openjdk.java.net/browse/JDK-8226274)|NPE in WinWindow.notifyMoving when Stage with no Scene is shown on 2nd monitor|window-toolkit
[JDK-8088717](https://bugs.openjdk.java.net/browse/JDK-8088717)|Win: UNDECORATED windows are not minimized with the taskbar button|window-toolkit
[JDK-8220272](https://bugs.openjdk.java.net/browse/JDK-8220272)|Window order is not correct when Modality.WINDOW_MODAL|window-toolkit
[JDK-8212060](https://bugs.openjdk.java.net/browse/JDK-8212060)|[GTK3] Stage sometimes shown at top-left before moving to correct position|window-toolkit


## List of Enhancements

Issue key|Summary|Subcomponent
---------|-------|------------
[JDK-8226454](https://bugs.openjdk.java.net/browse/JDK-8226454)|Point2D and Point3D should implement Interpolatable|animation
[JDK-8221269](https://bugs.openjdk.java.net/browse/JDK-8221269)|Extract embedded actions from JSL grammar file to Visitor class|build
[JDK-8223760](https://bugs.openjdk.java.net/browse/JDK-8223760)|support static build for macosx|build
[JDK-8222258](https://bugs.openjdk.java.net/browse/JDK-8222258)|Add exclusion scope for LightBase|graphics
[JDK-8167148](https://bugs.openjdk.java.net/browse/JDK-8167148)|Add native rendering support by supporting WritableImages backed by NIO ByteBuffers|graphics
[JDK-8217605](https://bugs.openjdk.java.net/browse/JDK-8217605)|Add support for e-paper displays|graphics
[JDK-8226912](https://bugs.openjdk.java.net/browse/JDK-8226912)|Color, Point2D and Point3D's fields should be made final|graphics
[JDK-8217470](https://bugs.openjdk.java.net/browse/JDK-8217470)|Upgrade Direct3D9 shader model from 2.0 to 3.0 for 3D operations|graphics
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,8 @@ public void setTextFieldSkin(TextFieldSkin skin) {
@Override protected void fire(KeyEvent event) {
TextField textField = getNode();
EventHandler<ActionEvent> onAction = textField.getOnAction();
ActionEvent actionEvent = new ActionEvent(textField, null);
// use textField as target to prevent immediate copy in dispatch
ActionEvent actionEvent = new ActionEvent(textField, textField);

textField.commitValue();
textField.fireEvent(actionEvent);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,20 @@

package test.javafx.scene.control;

import test.com.sun.javafx.scene.control.infrastructure.StageLoader;
import java.util.ArrayList;
import java.util.List;

import org.junit.After;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;

import com.sun.javafx.tk.Toolkit;

import static javafx.scene.input.KeyCode.*;
import static org.junit.Assert.*;
import static test.com.sun.javafx.scene.control.infrastructure.ControlTestUtils.*;

import javafx.beans.property.ObjectProperty;
import javafx.beans.property.SimpleObjectProperty;
import javafx.beans.property.SimpleStringProperty;
Expand All @@ -37,12 +50,13 @@
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.control.TextInputControlShim;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;

import static test.com.sun.javafx.scene.control.infrastructure.ControlTestUtils.*;
import static org.junit.Assert.*;
import javafx.scene.input.KeyCodeCombination;
import javafx.scene.input.KeyEvent;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
import test.com.sun.javafx.pgstub.StubToolkit;
import test.com.sun.javafx.scene.control.infrastructure.KeyEventFirer;
import test.com.sun.javafx.scene.control.infrastructure.StageLoader;

public class TextFieldTest {
private TextField txtField;//Empty string
Expand Down Expand Up @@ -284,6 +298,81 @@ public class TextFieldTest {
assertEquals("x", dummyTxtField.getText());
}



private Scene scene;
private Stage stage;
private StackPane root;

/**
* test for JDK-8207774: ENTER must not be forwared if actionHandler
* consumed the action.
*
* Here we test that an accelerator is not triggered.
*/
@Test
public void testEnterWithConsumingActionHandlerAccelerator() {
initStage();
root.getChildren().add(txtField);
txtField.addEventHandler(ActionEvent.ACTION, e -> e.consume());
scene.getAccelerators().put(new KeyCodeCombination(ENTER), () ->
fail("accelerator must not be notified"));
stage.show();
KeyEventFirer keyboard = new KeyEventFirer(txtField);
keyboard.doKeyPress(ENTER);
}

/**
* test for JDK-8207774: ENTER must not be forwared if actionHandler
* consumed the action.
*
* Here we test that handlers on parent are not notified.
*/
@Test
public void testEnterWithConsumingActionHandlerParentHandler() {
initStage();
root.getChildren().add(txtField);
txtField.addEventHandler(ActionEvent.ACTION, e -> e.consume());
root.addEventHandler(KeyEvent.KEY_PRESSED, e ->
fail("parent handler must not be notified but received: " + e ));
stage.show();
KeyEventFirer keyboard = new KeyEventFirer(txtField);
keyboard.doKeyPress(ENTER);
}

/**
* sanity: pressing enter actually triggers a consuming actionHandler.
*/
@Test
public void testEnterWithConsumingActionHandler() {
initStage();
root.getChildren().add(txtField);
List<ActionEvent> actions = new ArrayList<>();
txtField.addEventHandler(ActionEvent.ACTION, e -> {
e.consume();
actions.add(e);
});
stage.show();
KeyEventFirer keyboard = new KeyEventFirer(txtField);
keyboard.doKeyPress(ENTER);
assertEquals("actionHandler must be notified", 1, actions.size());
assertTrue("action must be consumed ", actions.get(0).isConsumed());
}

/**
* Helper method to init the stage only if really needed.
*/
private void initStage() {
//This step is not needed (Just to make sure StubToolkit is loaded into VM)
Toolkit tk = (StubToolkit)Toolkit.getToolkit();
root = new StackPane();
scene = new Scene(root);
stage = new Stage();
stage.setScene(scene);
}

@After
public void cleanup() {
if (stage != null) {
stage.hide();
}
}
}
Loading

0 comments on commit 9df20c5

Please sign in to comment.