JDK-8270850 : Remove deprecated implementation methods from Scene
  • Type: CSR
  • Component: javafx
  • Sub-Component: scenegraph
  • Priority: P3
  • Status: Closed
  • Resolution: Approved
  • Fix Versions: openjfx18
  • Submitted: 2021-07-16
  • Updated: 2021-07-22
  • Resolved: 2021-07-22
Related Reports
CSR :  
Description
Summary
-------

Remove three terminally deprecated implementation methods from Scene.

Problem
-------

Scene has three public methods that were intended to be encapsulated as implementation details, but were mistakenly made public. These methods were deprecated in JavaFX 17 by [JDK-8270246](https://bugs.openjdk.java.net/browse/JDK-8270246) and should be removed in JavaFX 18.

Solution
--------

Remove the three terminally deprecated implementation methods from Scene by changing the access modifier on each method from `public` to (default) package-scope.

Specification
-------------

`javafx.scene.Scene`:

```
-    /**
-     * @deprecated This method was exposed erroneously and will be removed in a future version.
-     */
-    @Deprecated(forRemoval = true, since = "17")
-    public void disposePeer() {
+    void disposePeer() {
```

```
-    /**
-     * @deprecated This method was exposed erroneously and will be removed in a future version.
-     * @param e undocumented method parameter
-     */
-    @Deprecated(forRemoval = true, since = "17")
-    public void processKeyEvent(KeyEvent e) {
+    void processKeyEvent(KeyEvent e) {
```

```
-    /**
-     * @deprecated This method was exposed erroneously and will be removed in a future version.
-     * @param enable undocumented method parameter
-     */
-    @Deprecated(forRemoval = true, since = "17")
-    public void enableInputMethodEvents(boolean enable) {
+    void enableInputMethodEvents(boolean enable) {
```
Comments
Moving to Approved.
22-07-2021

Looks good.
20-07-2021

Moving to Provisional.
16-07-2021