From psadhukhan at openjdk.java.net Mon Mar 1 04:11:39 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Mon, 1 Mar 2021 04:11:39 GMT Subject: RFR: 8262085: Hovering Metal HTML Tooltips in different windows cause IllegalArgExc on Linux [v2] In-Reply-To: <7KUD9AtdNmMg876dcEPh2JLSyN54GozkIAozZTW6ZeE=.21dd9dc9-f4cc-4a3e-a8fd-f94eb6762bf6@github.com> References: <7KUD9AtdNmMg876dcEPh2JLSyN54GozkIAozZTW6ZeE=.21dd9dc9-f4cc-4a3e-a8fd-f94eb6762bf6@github.com> Message-ID: On Sun, 28 Feb 2021 07:39:20 GMT, Alexander Zvegintsev wrote: >> This issue occurs only under `MetalLookAndFeel` on Linux. >> >> It was introduced by [JDK-8040630](https://bugs.openjdk.java.net/browse/JDK-8040630) fix. >> >>> component.setBounds(ownerX, ownerY, 1, 1); >> >> This line adds an extra reshape call with `1x1` size right before getting another one with correct sizes. >> >> If `MetalToolTipUI#paint()` call happens before getting correct sizes, it calculates `paintTextR` with negative sizes for component with `1x1` size, thus IAE is thrown. >> >> The fix is to do not proceed with `paint()` for negative sizes. >> The provided test fails for me in 0-30s interval(before the fix), other testing(client-tier1,2,3) looks good. > > Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: > > simplified test test/jdk/javax/swing/JToolTip/FastTooltipSwitchIAE.java line 61: > 59: } catch (ClassNotFoundException | InstantiationException | > 60: UnsupportedLookAndFeelException | IllegalAccessException e) { > 61: throw new RuntimeException(e); Normally for UnsupportedLookAndFeelException, we dont throw Exception, rather print and continue to next L&F. ------------- PR: https://git.openjdk.java.net/jdk/pull/2761 From psadhukhan at openjdk.java.net Mon Mar 1 04:52:39 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Mon, 1 Mar 2021 04:52:39 GMT Subject: RFR: 8262085: Hovering Metal HTML Tooltips in different windows cause IllegalArgExc on Linux [v2] In-Reply-To: <7KUD9AtdNmMg876dcEPh2JLSyN54GozkIAozZTW6ZeE=.21dd9dc9-f4cc-4a3e-a8fd-f94eb6762bf6@github.com> References: <7KUD9AtdNmMg876dcEPh2JLSyN54GozkIAozZTW6ZeE=.21dd9dc9-f4cc-4a3e-a8fd-f94eb6762bf6@github.com> Message-ID: On Sun, 28 Feb 2021 07:39:20 GMT, Alexander Zvegintsev wrote: >> This issue occurs only under `MetalLookAndFeel` on Linux. >> >> It was introduced by [JDK-8040630](https://bugs.openjdk.java.net/browse/JDK-8040630) fix. >> >>> component.setBounds(ownerX, ownerY, 1, 1); >> >> This line adds an extra reshape call with `1x1` size right before getting another one with correct sizes. >> >> If `MetalToolTipUI#paint()` call happens before getting correct sizes, it calculates `paintTextR` with negative sizes for component with `1x1` size, thus IAE is thrown. >> >> The fix is to do not proceed with `paint()` for negative sizes. >> The provided test fails for me in 0-30s interval(before the fix), other testing(client-tier1,2,3) looks good. > > Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: > > simplified test src/java.desktop/share/classes/javax/swing/plaf/metal/MetalToolTipUI.java line 124: > 122: if (paintTextR.width <= 0 || paintTextR.height <= 0) { > 123: return; > 124: } Any idea why only MetalToolTip is affected only? JDK-8040630 fix was generic so shouldn't we apply this fix in BasicToolTipUI#paint instead? ------------- PR: https://git.openjdk.java.net/jdk/pull/2761 From trebari at openjdk.java.net Mon Mar 1 10:58:39 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Mon, 1 Mar 2021 10:58:39 GMT Subject: RFR: 8049700: Deprecate obsolete classes and methods in javax/swing/plaf/basic [v6] In-Reply-To: References: Message-ID: On Fri, 19 Feb 2021 15:45:55 GMT, Tejpal Rebari wrote: > Are these methods all expected to be used only by a L&F rather than an application ? > If by an application, then forRemoval seems too strong to me. > If by a L&F then I think you need to go research what open source L&Fs there are out there and see how many of them are affected. Then we can decide about forRemoval. There are open source LAFs which will be affected by removing these. Like FlatLaf https://www.formdev.com/flatlaf/ uses BasicScrollPaneUI$PropertyChangeHandler. Also i have removed the "forRemoval" for now. ------------- PR: https://git.openjdk.java.net/jdk/pull/1958 From azvegint at openjdk.java.net Mon Mar 1 11:15:09 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Mon, 1 Mar 2021 11:15:09 GMT Subject: RFR: 8262085: Hovering Metal HTML Tooltips in different windows cause IllegalArgExc on Linux [v3] In-Reply-To: References: Message-ID: > This issue occurs only under `MetalLookAndFeel` on Linux. > > It was introduced by [JDK-8040630](https://bugs.openjdk.java.net/browse/JDK-8040630) fix. > >> component.setBounds(ownerX, ownerY, 1, 1); > > This line adds an extra reshape call with `1x1` size right before getting another one with correct sizes. > > If `MetalToolTipUI#paint()` call happens before getting correct sizes, it calculates `paintTextR` with negative sizes for component with `1x1` size, thus IAE is thrown. > > The fix is to do not proceed with `paint()` for negative sizes. > The provided test fails for me in 0-30s interval(before the fix), other testing(client-tier1,2,3) looks good. Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: Do not fail on UnsupportedLookAndFeelException. ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2761/files - new: https://git.openjdk.java.net/jdk/pull/2761/files/034425b0..1651de87 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2761&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2761&range=01-02 Stats: 3 lines in 1 file changed: 1 ins; 0 del; 2 mod Patch: https://git.openjdk.java.net/jdk/pull/2761.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2761/head:pull/2761 PR: https://git.openjdk.java.net/jdk/pull/2761 From azvegint at openjdk.java.net Mon Mar 1 11:15:10 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Mon, 1 Mar 2021 11:15:10 GMT Subject: RFR: 8262085: Hovering Metal HTML Tooltips in different windows cause IllegalArgExc on Linux [v2] In-Reply-To: References: <7KUD9AtdNmMg876dcEPh2JLSyN54GozkIAozZTW6ZeE=.21dd9dc9-f4cc-4a3e-a8fd-f94eb6762bf6@github.com> Message-ID: On Mon, 1 Mar 2021 04:08:43 GMT, Prasanta Sadhukhan wrote: >> Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: >> >> simplified test > > test/jdk/javax/swing/JToolTip/FastTooltipSwitchIAE.java line 61: > >> 59: } catch (ClassNotFoundException | InstantiationException | >> 60: UnsupportedLookAndFeelException | IllegalAccessException e) { >> 61: throw new RuntimeException(e); > > Normally for UnsupportedLookAndFeelException, we dont throw Exception, rather print and continue to next L&F. Done. > src/java.desktop/share/classes/javax/swing/plaf/metal/MetalToolTipUI.java line 124: > >> 122: if (paintTextR.width <= 0 || paintTextR.height <= 0) { >> 123: return; >> 124: } > > Any idea why only MetalToolTip is affected only? JDK-8040630 fix was generic so shouldn't we apply this fix in BasicToolTipUI#paint instead? Only Metal LaF uses `BasicHTML#getHTMLBaseline` for HTML tooltips painting. Changing of `BasicToolTipUI#paint` will have no effect since it is not on the call stack. ------------- PR: https://git.openjdk.java.net/jdk/pull/2761 From psadhukhan at openjdk.java.net Mon Mar 1 11:44:39 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Mon, 1 Mar 2021 11:44:39 GMT Subject: RFR: 8262085: Hovering Metal HTML Tooltips in different windows cause IllegalArgExc on Linux [v3] In-Reply-To: References: Message-ID: On Mon, 1 Mar 2021 11:15:09 GMT, Alexander Zvegintsev wrote: >> This issue occurs only under `MetalLookAndFeel` on Linux. >> >> It was introduced by [JDK-8040630](https://bugs.openjdk.java.net/browse/JDK-8040630) fix. >> >>> component.setBounds(ownerX, ownerY, 1, 1); >> >> This line adds an extra reshape call with `1x1` size right before getting another one with correct sizes. >> >> If `MetalToolTipUI#paint()` call happens before getting correct sizes, it calculates `paintTextR` with negative sizes for component with `1x1` size, thus IAE is thrown. >> >> The fix is to do not proceed with `paint()` for negative sizes. >> The provided test fails for me in 0-30s interval(before the fix), other testing(client-tier1,2,3) looks good. > > Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: > > Do not fail on UnsupportedLookAndFeelException. Marked as reviewed by psadhukhan (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2761 From azvegint at openjdk.java.net Mon Mar 1 14:34:44 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Mon, 1 Mar 2021 14:34:44 GMT Subject: Integrated: 8262085: Hovering Metal HTML Tooltips in different windows cause IllegalArgExc on Linux In-Reply-To: References: Message-ID: <1tghFPpohICn9uiO89BmhD7Tzqw5gKw-8m1sDfKQGYc=.26654aee-5176-43bb-850b-b9c649cdac7d@github.com> On Sat, 27 Feb 2021 17:02:13 GMT, Alexander Zvegintsev wrote: > This issue occurs only under `MetalLookAndFeel` on Linux. > > It was introduced by [JDK-8040630](https://bugs.openjdk.java.net/browse/JDK-8040630) fix. > >> component.setBounds(ownerX, ownerY, 1, 1); > > This line adds an extra reshape call with `1x1` size right before getting another one with correct sizes. > > If `MetalToolTipUI#paint()` call happens before getting correct sizes, it calculates `paintTextR` with negative sizes for component with `1x1` size, thus IAE is thrown. > > The fix is to do not proceed with `paint()` for negative sizes. > The provided test fails for me in 0-30s interval(before the fix), other testing(client-tier1,2,3) looks good. This pull request has now been integrated. Changeset: c569f1d6 Author: Alexander Zvegintsev URL: https://git.openjdk.java.net/jdk/commit/c569f1d6 Stats: 89 lines in 2 files changed: 86 ins; 2 del; 1 mod 8262085: Hovering Metal HTML Tooltips in different windows cause IllegalArgExc on Linux Reviewed-by: serb, psadhukhan ------------- PR: https://git.openjdk.java.net/jdk/pull/2761 From kizune at openjdk.java.net Tue Mar 2 09:26:59 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Tue, 2 Mar 2021 09:26:59 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" Message-ID: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" ------------- Commit messages: - 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" Changes: https://git.openjdk.java.net/jdk/pull/2790/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2790&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8261689 Stats: 21 lines in 1 file changed: 19 ins; 1 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2790.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2790/head:pull/2790 PR: https://git.openjdk.java.net/jdk/pull/2790 From kizune at openjdk.java.net Tue Mar 2 09:26:59 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Tue, 2 Mar 2021 09:26:59 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" In-Reply-To: References: Message-ID: On Tue, 2 Mar 2021 09:15:22 GMT, Alexander Zuev wrote: > 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" I finally was able to get the failure on the test system and it seems like that was a result of the incomplete drawing of the frame at the time of screenshot taking. Here's the screenshot in full resolution - note the black part at the right part of the frame. ![fullScreenInit](https://user-images.githubusercontent.com/69642324/109626290-359d2780-7af5-11eb-8138-c8dee43222a7.png) Setting min/max size of the frame and the content pane inside it fixes the issue so after couple of hundred of the runs i see no failures. Plus in the future should failure occur we will have better information in order to analyze the failure. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From azvegint at openjdk.java.net Tue Mar 2 12:15:41 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Tue, 2 Mar 2021 12:15:41 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" In-Reply-To: References: Message-ID: <3GmHWARv70z9nHUngYZf_Zbk3wCrBjNos_Bx9uULyvo=.4a25a769-f3ce-453d-b6df-83eea1a8a092@github.com> On Tue, 2 Mar 2021 09:15:22 GMT, Alexander Zuev wrote: > 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 112: > 110: frh = bounds.height - insets.top - insets.bottom; > 111: > 112: imageInit = robot.createScreenCapture(new Rectangle(locx, locy, frw, frh)); Looks like the result of this screen capture is unused. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From aivanov at openjdk.java.net Tue Mar 2 13:57:40 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Tue, 2 Mar 2021 13:57:40 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" In-Reply-To: References: Message-ID: On Tue, 2 Mar 2021 09:15:22 GMT, Alexander Zuev wrote: > 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" Should `frame` be declared as `volatile`? It's accessed on main thread in finally block. In addition to it, `frame.getBounds()` and `frame.getInsets()` are called on main thread instead of EDT. test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 116: > 114: Graphics g = fullScreen.getGraphics(); > 115: g.setColor(Color.RED); > 116: g.drawRect(locx-1, locy-1, frw+1, frh+1); Suggestion: g.drawRect(locx - 1, locy - 1, frw + 1, frh + 1); test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 93: > 91: frame.setMinimumSize(new Dimension(350, 350)); > 92: frame.setMaximumSize(new Dimension(350, 350)); > 93: frame.pack(); Wouldn't it make {{desktop}} larger than 300,300? test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 133: > 131: ImageIO.write(imageShow, "png", new File("imageShow.png")); > 132: ImageIO.write(fullScreen, "png", new File("fullScreenInit.png")); > 133: throw new Exception("Failed to show opaque button"); I suggest moving saving the images into a new method. I see the set of images is different each time. Probably it makes sense to save all the images which are non-null, what do you think? test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 192: > 190: ImageIO.write(fullScreen, "png", new File("fullScreenInit.png")); > 191: throw new Exception("Failed to show non-opaque button"); > 192: } Does it make sense to move this block above before `invokeAndWait` to make the sequence of actions consistent? ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From serb at openjdk.java.net Tue Mar 2 18:16:45 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Tue, 2 Mar 2021 18:16:45 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" In-Reply-To: References: Message-ID: <1WdJ5jLL_-oVKe4zgi4X6UIuluW6sqdLx_Q82_1QIV4=.18ff99f6-6fca-4e33-80fa-089c6f7e8f94@github.com> On Tue, 2 Mar 2021 09:15:22 GMT, Alexander Zuev wrote: > 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 101: > 99: > 100: robot.waitForIdle(1000); > 101: robot.delay(1000); I doubt that this is a test issue, 2 seconds was not enough to properly show the frame? ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From kizune at openjdk.java.net Tue Mar 2 20:56:42 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Tue, 2 Mar 2021 20:56:42 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" In-Reply-To: <3GmHWARv70z9nHUngYZf_Zbk3wCrBjNos_Bx9uULyvo=.4a25a769-f3ce-453d-b6df-83eea1a8a092@github.com> References: <3GmHWARv70z9nHUngYZf_Zbk3wCrBjNos_Bx9uULyvo=.4a25a769-f3ce-453d-b6df-83eea1a8a092@github.com> Message-ID: <_CuA4_zfNMELgzJT2PG-UdpiGUk5tu2tcvwjOzwQy7k=.118a4f5c-340c-4b82-aeea-15dfd08aac4f@github.com> On Tue, 2 Mar 2021 12:06:26 GMT, Alexander Zvegintsev wrote: >> 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" > > test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 112: > >> 110: frh = bounds.height - insets.top - insets.bottom; >> 111: >> 112: imageInit = robot.createScreenCapture(new Rectangle(locx, locy, frw, frh)); > > Looks like the result of this screen capture is unused. Yes, accidentally copied line instead of moving it. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From kizune at openjdk.java.net Tue Mar 2 20:56:43 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Tue, 2 Mar 2021 20:56:43 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" In-Reply-To: References: Message-ID: On Tue, 2 Mar 2021 13:26:51 GMT, Alexey Ivanov wrote: >> 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" > > test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 116: > >> 114: Graphics g = fullScreen.getGraphics(); >> 115: g.setColor(Color.RED); >> 116: g.drawRect(locx-1, locy-1, frw+1, frh+1); > > Suggestion: > > g.drawRect(locx - 1, locy - 1, frw + 1, frh + 1); Fixed. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From kizune at openjdk.java.net Tue Mar 2 21:46:41 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Tue, 2 Mar 2021 21:46:41 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" In-Reply-To: References: Message-ID: On Tue, 2 Mar 2021 13:28:44 GMT, Alexey Ivanov wrote: >> 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" > > test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 93: > >> 91: frame.setMinimumSize(new Dimension(350, 350)); >> 92: frame.setMaximumSize(new Dimension(350, 350)); >> 93: frame.pack(); > > Wouldn't it make {{desktop}} larger than 300,300? It will but it forces the invalidation and repainting of the content so test does not fail. > test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 133: > >> 131: ImageIO.write(imageShow, "png", new File("imageShow.png")); >> 132: ImageIO.write(fullScreen, "png", new File("fullScreenInit.png")); >> 133: throw new Exception("Failed to show opaque button"); > > I suggest moving saving the images into a new method. > > I see the set of images is different each time. Probably it makes sense to save all the images which are non-null, what do you think? I don't think it is necessary. And since this is an existing test i'm trying not to change its overall behavior and having screenshots at other stages of the testing is not beneficial in the test debugging. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From kizune at openjdk.java.net Tue Mar 2 22:02:40 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Tue, 2 Mar 2021 22:02:40 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" In-Reply-To: References: Message-ID: On Tue, 2 Mar 2021 13:45:07 GMT, Alexey Ivanov wrote: >> 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" > > test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 192: > >> 190: ImageIO.write(fullScreen, "png", new File("fullScreenInit.png")); >> 191: throw new Exception("Failed to show non-opaque button"); >> 192: } > > Does it make sense to move this block above before `invokeAndWait` to make the sequence of actions consistent? Well, functionally it will not make any difference, we are analyzing the screenshots and the only thing that matters is at which time screenshot was taken. The only reason we don't take all screenshots in the beginning and analyze them later is to save test run time if test runs early. At the end it is not critical anymore. And as i said this is an existing test so i'm trying not to change it unless it affects its functionality. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From kizune at openjdk.java.net Tue Mar 2 22:12:52 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Tue, 2 Mar 2021 22:12:52 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v2] In-Reply-To: References: Message-ID: > 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: Minor fixes. ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2790/files - new: https://git.openjdk.java.net/jdk/pull/2790/files/c0a2cd4e..2c6594c6 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2790&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2790&range=00-01 Stats: 2 lines in 1 file changed: 0 ins; 1 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2790.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2790/head:pull/2790 PR: https://git.openjdk.java.net/jdk/pull/2790 From kizune at openjdk.java.net Tue Mar 2 22:12:53 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Tue, 2 Mar 2021 22:12:53 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v2] In-Reply-To: <1WdJ5jLL_-oVKe4zgi4X6UIuluW6sqdLx_Q82_1QIV4=.18ff99f6-6fca-4e33-80fa-089c6f7e8f94@github.com> References: <1WdJ5jLL_-oVKe4zgi4X6UIuluW6sqdLx_Q82_1QIV4=.18ff99f6-6fca-4e33-80fa-089c6f7e8f94@github.com> Message-ID: On Tue, 2 Mar 2021 18:14:12 GMT, Sergey Bylokhov wrote: >> Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: >> >> Minor fixes. > > test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 101: > >> 99: >> 100: robot.waitForIdle(1000); >> 101: robot.delay(1000); > > I doubt that this is a test issue, 2 seconds was not enough to properly show the frame? The problem is that i tried to reproduce this behavior locally on Ubuntu running this test (and the simplified version of it) literally millions of times. The only time it fails is when it is run on mach5 and even then it fails very rarely - once per hundreds of runs. The changes here - especially forcing the resize - seems to eliminate the problem with mach5. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From aivanov at openjdk.java.net Tue Mar 2 23:21:40 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Tue, 2 Mar 2021 23:21:40 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v2] In-Reply-To: References: Message-ID: On Tue, 2 Mar 2021 21:59:31 GMT, Alexander Zuev wrote: >> test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 192: >> >>> 190: ImageIO.write(fullScreen, "png", new File("fullScreenInit.png")); >>> 191: throw new Exception("Failed to show non-opaque button"); >>> 192: } >> >> Does it make sense to move this block above before `invokeAndWait` to make the sequence of actions consistent? > > Well, functionally it will not make any difference, we are analyzing the screenshots and the only thing that matters is at which time screenshot was taken. The only reason we don't take all screenshots in the beginning and analyze them later is to save test run time if test runs early. At the end it is not critical anymore. And as i said this is an existing test so i'm trying not to change it unless it affects its functionality. Yes, I agree it makes no difference. Yet when you read the test code, the pattern ? show or hide the button, take screenshot, analyze it ? gets broken. This place is the only exception to the pattern; here the button is shown, screenshot is taken, then the button is hidden and only after hiding the button the screenshot is analyzed, which could give the wrong impression as if the screenshot after hiding the button is being analyzed here. > It will but it forces the invalidation and repainting of the content so test does not fail. Got it! It's the intention to cause additional repaint. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From aivanov at openjdk.java.net Tue Mar 2 23:24:45 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Tue, 2 Mar 2021 23:24:45 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v2] In-Reply-To: References: Message-ID: On Tue, 2 Mar 2021 13:54:27 GMT, Alexey Ivanov wrote: > Should `frame` be declared as `volatile`? It's accessed on main thread in finally block. > In addition to it, `frame.getBounds()` and `frame.getInsets()` are called on main thread instead of EDT. I couldn't link this comment to the code because GitHub does not allow adding comments to unmodified lines. Do I understand correctly that you're for leaving it as is? ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From kizune at openjdk.java.net Wed Mar 3 04:56:39 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Wed, 3 Mar 2021 04:56:39 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v2] In-Reply-To: References: Message-ID: On Tue, 2 Mar 2021 23:21:49 GMT, Alexey Ivanov wrote: > > Should `frame` be declared as `volatile`? It's accessed on main thread in finally block. > > In addition to it, `frame.getBounds()` and `frame.getInsets()` are called on main thread instead of EDT. > > I couldn't link this comment to the code because GitHub does not allow adding comments to unmodified lines. Do I understand correctly that you're for leaving it as is? Pretty much. Making frame volatile will not change the behavior, the assignment to it made in one place and it's on EDT inside invokeAndWait block, making it volatile will change nothing, it will be fully assigned by the time we leave EDT. And calling non-disruptive getters such getInsets or getBounds from main thread is not a problem either. By that time frame should be visible and in position - otherwise we will have much more interesting problems. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From kizune at openjdk.java.net Wed Mar 3 05:09:38 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Wed, 3 Mar 2021 05:09:38 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v2] In-Reply-To: References: Message-ID: On Tue, 2 Mar 2021 23:17:26 GMT, Alexey Ivanov wrote: >> Well, functionally it will not make any difference, we are analyzing the screenshots and the only thing that matters is at which time screenshot was taken. The only reason we don't take all screenshots in the beginning and analyze them later is to save test run time if test runs early. At the end it is not critical anymore. And as i said this is an existing test so i'm trying not to change it unless it affects its functionality. > > Yes, I agree it makes no difference. Yet when you read the test code, the pattern ? show or hide the button, take screenshot, analyze it ? gets broken. This place is the only exception to the pattern; here the button is shown, screenshot is taken, then the button is hidden and only after hiding the button the screenshot is analyzed, which could give the wrong impression as if the screenshot after hiding the button is being analyzed here. Ok, i give up, you won - i'll fix it. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From kizune at openjdk.java.net Wed Mar 3 05:14:11 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Wed, 3 Mar 2021 05:14:11 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v3] In-Reply-To: References: Message-ID: > 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: Moved checking block up to keep consistency of operations. ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2790/files - new: https://git.openjdk.java.net/jdk/pull/2790/files/2c6594c6..0bfe02fd Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2790&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2790&range=01-02 Stats: 14 lines in 1 file changed: 7 ins; 7 del; 0 mod Patch: https://git.openjdk.java.net/jdk/pull/2790.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2790/head:pull/2790 PR: https://git.openjdk.java.net/jdk/pull/2790 From serb at openjdk.java.net Wed Mar 3 06:34:52 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 3 Mar 2021 06:34:52 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v3] In-Reply-To: References: <1WdJ5jLL_-oVKe4zgi4X6UIuluW6sqdLx_Q82_1QIV4=.18ff99f6-6fca-4e33-80fa-089c6f7e8f94@github.com> Message-ID: On Tue, 2 Mar 2021 22:08:48 GMT, Alexander Zuev wrote: >> test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 101: >> >>> 99: >>> 100: robot.waitForIdle(1000); >>> 101: robot.delay(1000); >> >> I doubt that this is a test issue, 2 seconds was not enough to properly show the frame? > > The problem is that i tried to reproduce this behavior locally on Ubuntu running this test (and the simplified version of it) literally millions of times. The only time it fails is when it is run on mach5 and even then it fails very rarely - once per hundreds of runs. The changes here - especially forcing the resize - seems to eliminate the problem with mach5. Then it is a product bug, If the problem is unrelated to the performance and the root cause is in the wrong/broken final layout. Do we want to suggest the same thing if the user will get the same issue in their app? ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From kizune at openjdk.java.net Wed Mar 3 07:17:47 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Wed, 3 Mar 2021 07:17:47 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v3] In-Reply-To: References: <1WdJ5jLL_-oVKe4zgi4X6UIuluW6sqdLx_Q82_1QIV4=.18ff99f6-6fca-4e33-80fa-089c6f7e8f94@github.com> Message-ID: On Wed, 3 Mar 2021 06:31:44 GMT, Sergey Bylokhov wrote: >> The problem is that i tried to reproduce this behavior locally on Ubuntu running this test (and the simplified version of it) literally millions of times. The only time it fails is when it is run on mach5 and even then it fails very rarely - once per hundreds of runs. The changes here - especially forcing the resize - seems to eliminate the problem with mach5. > > Then it is a product bug, If the problem is unrelated to the performance and the root cause is in the wrong/broken final layout. Do we want to suggest the same thing if the user will get the same issue in their app? It might be a product bug. Or it might be something specific to the machines with mach5 system. Or to some specific machine having hardware issue (i noticed that in my case all failures happened on one specific Linux test system). That's the problem. I have a simplified test case that should check for that specific problem and i'm running a dedicated Linux host in my home office with the same OS version than problematic machine that does nothing but runs this test in interactive mode for days. Today only i ran this test over 700000 times - 0 failures. If i would have a way to at least semi-reliable reproduce the problem i would create a new bug and would debug and fix it. But i don't. And the changes i made is simply a way to let this test to run even on the problematic host because the problem that happens have nothing to do with the functionality related to the test itself. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From aivanov at openjdk.java.net Wed Mar 3 10:13:49 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Wed, 3 Mar 2021 10:13:49 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v3] In-Reply-To: References: Message-ID: <30KF0qD4EajxUuNscl2MWAGD1g-c5xhV_Txej7bhgZM=.283d8cad-1946-4d99-bd3c-735f20e9873f@github.com> On Wed, 3 Mar 2021 05:14:11 GMT, Alexander Zuev wrote: >> 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" > > Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: > > Moved checking block up to keep consistency of operations. Marked as reviewed by aivanov (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From azvegint at openjdk.java.net Wed Mar 3 10:50:41 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Wed, 3 Mar 2021 10:50:41 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v3] In-Reply-To: References: Message-ID: On Wed, 3 Mar 2021 05:14:11 GMT, Alexander Zuev wrote: >> 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" > > Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: > > Moved checking block up to keep consistency of operations. Marked as reviewed by azvegint (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From philip.race at oracle.com Wed Mar 3 21:51:05 2021 From: philip.race at oracle.com (Philip Race) Date: Wed, 3 Mar 2021 13:51:05 -0800 Subject: Project Lanai (New Metal Java 2D Rendering pipeline for macOS) EA build 10 has been released Message-ID: All, We have prepared an EA 10 build of Project Lanai for JEP 382 [1] incorporating fixes to feed back during the ongoing code review [2] EA 10 can be downloaded from https://jdk.java.net/lanai/. Note the open issues and testing suggestions given there. Please test with your apps and hardware and provide feedback via the lanai-dev at openjdk.java.net mailing list. -Phil [1] https://openjdk.java.net/jeps/382 [2] https://mail.openjdk.java.net/pipermail/2d-dev/2021-February/011902.html From psadhukhan at openjdk.java.net Thu Mar 4 03:44:54 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Thu, 4 Mar 2021 03:44:54 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v3] In-Reply-To: References: Message-ID: On Wed, 3 Mar 2021 05:14:11 GMT, Alexander Zuev wrote: >> 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" > > Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: > > Moved checking block up to keep consistency of operations. test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 115: > 113: Graphics g = fullScreen.getGraphics(); > 114: g.setColor(Color.RED); > 115: g.drawRect(locx - 1, locy - 1, frw + 1, frh + 1); I believe we need to call g.dispose to dispose this object which we normallydo after getGraphics() call. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From trebari at openjdk.java.net Thu Mar 4 05:50:18 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Thu, 4 Mar 2021 05:50:18 GMT Subject: RFR: 8049700: Deprecate obsolete classes and methods in javax/swing/plaf/basic [v8] In-Reply-To: References: Message-ID: <2qYuQ3q4_mqTbzdGse7HOVNhEjfHt8JddLX8S9Xx_v4=.569c94da-ab0a-497c-a8ba-2e3d34e192af@github.com> > Please review the following fix for jdk17. > In this fix i have deprecated and marked for removal following classes and methods > public void intervalAdded(ListDataEvent e) > public void intervalRemoved(ListDataEvent e) > protected boolean lt(File a, File b) in BasicDirectoryModel.java > > inner class PropertyChangeHandler, VSBChangeListener, HSBChangeListener, > ViewportChangeHandler in BasicScrollPaneUI.java > inner class MouseInputHandler in BasicMenuItemUI.java > method BasicToolBarUI.java#createFloatingFrame > > From 8049700 not deprecated the paintText(Graphics g, JComponent c, Rectangle textRect, String text) method in BasicButtonUI as AquaButtonUI, MetalButtonUI and MetalToggleButtonUI overrides it. > Similarly not deprecated ChangeHandler of BasicMenuUI as AquaMenuUI and MotifMenuUI uses this class. Tejpal Rebari has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains eight additional commits since the last revision: - Merge remote-tracking branch 'upstream/master' into 8049700 - removed forRemoval - removed deprecation from methods of class which is also getting deprecated - removed jdk version from @deprecated javadoc tag - updated documentation - Merge remote-tracking branch 'upstream/master' into 8049700 - minor correction - initial fix ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/1958/files - new: https://git.openjdk.java.net/jdk/pull/1958/files/7dd2b39a..88a8c475 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=1958&range=07 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=1958&range=06-07 Stats: 69867 lines in 2030 files changed: 41455 ins; 17817 del; 10595 mod Patch: https://git.openjdk.java.net/jdk/pull/1958.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/1958/head:pull/1958 PR: https://git.openjdk.java.net/jdk/pull/1958 From kizune at openjdk.java.net Thu Mar 4 17:24:43 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Thu, 4 Mar 2021 17:24:43 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v3] In-Reply-To: References: Message-ID: On Thu, 4 Mar 2021 02:56:05 GMT, Prasanta Sadhukhan wrote: >> Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: >> >> Moved checking block up to keep consistency of operations. > > test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 115: > >> 113: Graphics g = fullScreen.getGraphics(); >> 114: g.setColor(Color.RED); >> 115: g.drawRect(locx - 1, locy - 1, frw + 1, frh + 1); > > I believe we need to call g.dispose to dispose this object which we normallydo after getGraphics() call. It is not necessary in such a short test, JVM will exit after test ends which will clear all the resources captured by this Graphics instance. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From serb at openjdk.java.net Thu Mar 4 22:45:41 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Thu, 4 Mar 2021 22:45:41 GMT Subject: RFR: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" [v3] In-Reply-To: References: Message-ID: On Thu, 4 Mar 2021 17:21:43 GMT, Alexander Zuev wrote: >> test/jdk/javax/swing/JComponent/7154030/bug7154030.java line 115: >> >>> 113: Graphics g = fullScreen.getGraphics(); >>> 114: g.setColor(Color.RED); >>> 115: g.drawRect(locx - 1, locy - 1, frw + 1, frh + 1); >> >> I believe we need to call g.dispose to dispose this object which we normallydo after getGraphics() call. > > It is not necessary in such a short test, JVM will exit after test ends which will clear all the resources captured by this Graphics instance. BTW it will be closed/released only if the tests are run in the othervm mode, but jtreg tests might share the single VM for a group of tests. ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From trebari at openjdk.java.net Fri Mar 5 06:14:40 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Fri, 5 Mar 2021 06:14:40 GMT Subject: RFR: 8049700: Deprecate obsolete classes and methods in javax/swing/plaf/basic [v6] In-Reply-To: References: Message-ID: On Wed, 10 Feb 2021 18:04:16 GMT, Phil Race wrote: >> Tejpal Rebari has updated the pull request incrementally with one additional commit since the last revision: >> >> removed deprecation from methods of class which is also getting deprecated > > Are these methods all expected to be used only by a L&F rather than an application ? > If by an application, then forRemoval seems too strong to me. > If by a L&F then I think you need to go research what open source L&Fs there are out there and see how many of them are affected. Then we can decide about forRemoval. @prrace Please take a look. ------------- PR: https://git.openjdk.java.net/jdk/pull/1958 From philip.race at oracle.com Sat Mar 6 02:41:39 2021 From: philip.race at oracle.com (Philip Race) Date: Fri, 5 Mar 2021 18:41:39 -0800 Subject: Suspicious field assignment in StrikeMetrics In-Reply-To: References: Message-ID: Raising this on the right (2d) list would have helped. https://bugs.openjdk.java.net/browse/JDK-8263124 -phil. On 1/5/21 6:23 AM, Andrey Turbanov wrote: > I don't have a JBS account yet, so I can't create a bug. > I hope someone, who read it can create it. > > Andrey Turbanov > > ??, 5 ???. 2021 ?. ? 15:14, Volodin, Vladislav : >> Hello Andrey, >> >> Nice catch! You can create a bug and prepare a pull request, so maintainers can review it. >> What I have just personally noticed, all fields have the type float, so probably instead of "Integer.MIN_VALUE", I would recommend to use "-Float.MAX_VALUE". But since this code is about 13-years old, I don't know if reviewers can accept your PR without additional tests. >> >> Kind regards, >> Vlad >> >> -----Original Message----- >> From: swing-dev On Behalf Of Andrey Turbanov >> Sent: Dienstag, 5. Januar 2021 12:40 >> To: swing-dev at openjdk.java.net >> Subject: Suspicious field assignment in StrikeMetrics >> >> Hello. >> I've found suspicious code in constructor sun.font.StrikeMetrics#StrikeMetrics() >> >> StrikeMetrics() { >> ascentX = ascentY = Integer.MAX_VALUE; >> descentX = descentY = leadingX = leadingY = Integer.MIN_VALUE; >> baselineX = baselineX = maxAdvanceX = maxAdvanceY = Integer.MIN_VALUE; >> } >> >> As you can see, basLineX field is assigned twice. >> Looks like it's supposed to be like this: >> >> baselineX = baselineY = maxAdvanceX = maxAdvanceY = Integer.MIN_VALUE; >> >> >> >> Found by SpotBugs >> https://spotbugs.readthedocs.io/en/stable/bugDescriptions.html#sa-double-assignment-of-field-sa-field-double-assignment >> >> Andrey Turbanov From kizune at openjdk.java.net Sat Mar 6 09:15:07 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Sat, 6 Mar 2021 09:15:07 GMT Subject: Integrated: 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" In-Reply-To: References: Message-ID: On Tue, 2 Mar 2021 09:15:22 GMT, Alexander Zuev wrote: > 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" This pull request has now been integrated. Changeset: 5eb2091a Author: Alexander Zuev URL: https://git.openjdk.java.net/jdk/commit/5eb2091a Stats: 32 lines in 1 file changed: 24 ins; 7 del; 1 mod 8261689: javax/swing/JComponent/7154030/bug7154030.java still fails with "Exception: Failed to hide opaque button" Reviewed-by: aivanov, azvegint ------------- PR: https://git.openjdk.java.net/jdk/pull/2790 From prr at openjdk.java.net Sun Mar 7 16:22:12 2021 From: prr at openjdk.java.net (Phil Race) Date: Sun, 7 Mar 2021 16:22:12 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge In-Reply-To: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> Message-ID: <4nc_mGufPdSzb6W33lt9L3EwiCBQLU99DTPF-q5NuCQ=.53a235e8-e82a-449b-82fa-3b93d3e6199b@github.com> On Sun, 7 Mar 2021 03:18:53 GMT, Yasumasa Suenaga wrote: > I saw C4530 with VS 2019 (16.9.0) as following (on Japanese locale): > > AccessBridgeDebug.cpp > ??: ?????? ????: d:\github-forked\jdk\src\jdk.accessibility\windows\native\common\AccessBridgeDebug.h > > : > > c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\ostream(611): error C2220: ??? > ?????????????? > c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\ostream(611): warning C4530: C++ > ??????????????????? ??????????????????/EHsc ?????????? > ??: ?????? ????: c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\string > > `/EHsc` has been already passed in other makefiles, and also AccessBridgeDebug.cpp uses some STL classes (e.g. `chrono` namespace). So `/EHsc` is a solution for this problem. translate.google.com says the error in (almost) English is : c: \ program ~ 2 \ micros ~ 2 \ 2019 \ commun ~ 1 \ vc \ tools \ msvc \ 1428 ~ 1.299 \ include \ ostream (611): warning C4530: C ++ I'm using exception handling, but unwind semantics aren't enabled. Please specify / EHsc. ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From stuefe at openjdk.java.net Sun Mar 7 19:37:08 2021 From: stuefe at openjdk.java.net (Thomas Stuefe) Date: Sun, 7 Mar 2021 19:37:08 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge In-Reply-To: <4nc_mGufPdSzb6W33lt9L3EwiCBQLU99DTPF-q5NuCQ=.53a235e8-e82a-449b-82fa-3b93d3e6199b@github.com> References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> <4nc_mGufPdSzb6W33lt9L3EwiCBQLU99DTPF-q5NuCQ=.53a235e8-e82a-449b-82fa-3b93d3e6199b@github.com> Message-ID: On Sun, 7 Mar 2021 16:19:15 GMT, Phil Race wrote: >> I saw C4530 with VS 2019 (16.9.0) as following (on Japanese locale): >> >> AccessBridgeDebug.cpp >> ??: ?????? ????: d:\github-forked\jdk\src\jdk.accessibility\windows\native\common\AccessBridgeDebug.h >> >> : >> >> c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\ostream(611): error C2220: ??? >> ?????????????? >> c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\ostream(611): warning C4530: C++ >> ??????????????????? ??????????????????/EHsc ?????????? >> ??: ?????? ????: c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\string >> >> `/EHsc` has been already passed in other makefiles, and also AccessBridgeDebug.cpp uses some STL classes (e.g. `chrono` namespace). So `/EHsc` is a solution for this problem. > > translate.google.com says the error in (almost) English is : > c: \ program ~ 2 \ micros ~ 2 \ 2019 \ commun ~ 1 \ vc \ tools \ msvc \ 1428 ~ 1.299 \ include \ ostream (611): warning C4530: C ++ > I'm using exception handling, but unwind semantics aren't enabled. Please specify / EHsc. Yes, including c++ standard library headers like means you need to deal with C++ exceptions thrown from library functions, and the code needs to be compiled with unwind capabilities. If its not switched on, and a C++ exception happens, the behavior is undefined. In my experience it results in the process being terminated. I wondered why C++ std headers are even used. The source code looks C-ish; but "8196681: Java Access Bridge logging and debug flags dynamically controlled" added some coding, adding a bunch of C++11x semantics and included C++ std headers. Using "/Ehsc" had even been discussed: https://mail.openjdk.java.net/pipermail/awt-dev/2018-December/014847.html but not done. Adding /Ehsc is fine of course, but I think thats not enough. Now C++ exceptions can pass through the code, but if they do, then what? E.g. this function `getTimeStamp()` added with 8196681: https://github.com/openjdk/jdk/blob/113b5184cfc78fde057a7fe4d5872b463930da00/src/jdk.accessibility/windows/native/common/AccessBridgeDebug.cpp#L85 calls into the C++ standard library to get a time stamp. Can't these function not throw C++ exceptions? Is that not what the compiler is warning about? If they throw, exceptions propagate through the code unbounded, until they either end the process or cause havoc at the next upper C-only-interface. Or, maybe, rewrite this coding to use standard C- and Windows-APIs. I think 8196681 could had been done with traditional windows- or standard C APIs. In particular, `getTimeStamp()` could probably be done simply with `GetTickCount` or `GetSystemTime` or functions from time.h. Cheers, Thomas ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From serb at openjdk.java.net Sun Mar 7 22:03:06 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Sun, 7 Mar 2021 22:03:06 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> <4nc_mGufPdSzb6W33lt9L3EwiCBQLU99DTPF-q5NuCQ=.53a235e8-e82a-449b-82fa-3b93d3e6199b@github.com> Message-ID: On Sun, 7 Mar 2021 19:34:36 GMT, Thomas Stuefe wrote: > I wondered why C++ std headers are even used. The source code looks C-ish; but "8196681: Java Access Bridge logging and debug flags dynamically controlled" added some coding, adding a bunch of C++11x semantics and included C++ std headers. Using "/Ehsc" had even been discussed: https://mail.openjdk.java.net/pipermail/awt-dev/2018-December/014847.html but not done. After that discussion the usage of "string.h"/etc was dropped and "C string manipulation API" was used instead, and that suppressed the warning. I do not know why it was not complaining about "getTimeStamp". I think the fix should refactor the code again. ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From ysuenaga at openjdk.java.net Mon Mar 8 00:56:24 2021 From: ysuenaga at openjdk.java.net (Yasumasa Suenaga) Date: Mon, 8 Mar 2021 00:56:24 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> Message-ID: > I saw C4530 with VS 2019 (16.9.0) as following (on Japanese locale): > > AccessBridgeDebug.cpp > ??: ?????? ????: d:\github-forked\jdk\src\jdk.accessibility\windows\native\common\AccessBridgeDebug.h > > : > > c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\ostream(611): error C2220: ??? > ?????????????? > c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\ostream(611): warning C4530: C++ > ??????????????????? ??????????????????/EHsc ?????????? > ??: ?????? ????: c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\string > > `/EHsc` has been already passed in other makefiles, and also AccessBridgeDebug.cpp uses some STL classes (e.g. `chrono` namespace). So `/EHsc` is a solution for this problem. Yasumasa Suenaga has updated the pull request incrementally with one additional commit since the last revision: Refactoring ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2859/files - new: https://git.openjdk.java.net/jdk/pull/2859/files/f68a1281..4a357eb9 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2859&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2859&range=00-01 Stats: 12 lines in 2 files changed: 2 ins; 1 del; 9 mod Patch: https://git.openjdk.java.net/jdk/pull/2859.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2859/head:pull/2859 PR: https://git.openjdk.java.net/jdk/pull/2859 From ysuenaga at openjdk.java.net Mon Mar 8 01:01:06 2021 From: ysuenaga at openjdk.java.net (Yasumasa Suenaga) Date: Mon, 8 Mar 2021 01:01:06 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> <4nc_mGufPdSzb6W33lt9L3EwiCBQLU99DTPF-q5NuCQ=.53a235e8-e82a-449b-82fa-3b93d3e6199b@github.com> Message-ID: On Sun, 7 Mar 2021 22:00:41 GMT, Sergey Bylokhov wrote: >> Yes, including c++ standard library headers like means you need to deal with C++ exceptions thrown from library functions, and the code needs to be compiled with unwind capabilities. If its not switched on, and a C++ exception happens, the behavior is undefined. In my experience it results in the process being terminated. >> >> I wondered why C++ std headers are even used. The source code looks C-ish; but "8196681: Java Access Bridge logging and debug flags dynamically controlled" added some coding, adding a bunch of C++11x semantics and included C++ std headers. Using "/Ehsc" had even been discussed: https://mail.openjdk.java.net/pipermail/awt-dev/2018-December/014847.html but not done. >> >> Adding /Ehsc is fine of course, but I think thats not enough. Now C++ exceptions can pass through the code, but if they do, then what? E.g. this function `getTimeStamp()` added with 8196681: >> >> https://github.com/openjdk/jdk/blob/113b5184cfc78fde057a7fe4d5872b463930da00/src/jdk.accessibility/windows/native/common/AccessBridgeDebug.cpp#L85 >> >> calls into the C++ standard library to get a time stamp. Can't these function not throw C++ exceptions? Is that not what the compiler is warning about? If they throw, exceptions propagate through the code unbounded, until they either end the process or cause havoc at the next upper C-only-interface. >> >> Or, maybe, rewrite this coding to use standard C- and Windows-APIs. I think 8196681 could had been done with traditional windows- or standard C APIs. In particular, `getTimeStamp()` could probably be done simply with `GetTickCount` or `GetSystemTime` or functions from time.h. >> >> Cheers, Thomas > >> I wondered why C++ std headers are even used. The source code looks C-ish; but "8196681: Java Access Bridge logging and debug flags dynamically controlled" added some coding, adding a bunch of C++11x semantics and included C++ std headers. Using "/Ehsc" had even been discussed: https://mail.openjdk.java.net/pipermail/awt-dev/2018-December/014847.html but not done. > > After that discussion the usage of "string.h"/etc was dropped and "C string manipulation API" was used instead, and that suppressed the warning. I do not know why it was not complaining about "getTimeStamp". I think the fix should refactor the code again. Thank you for comments! I refactored `getTimeStamp()` not to use STL functions in new commit. The error messages have gone without /EHsc. I use `11644473600000ULL` to rebase Epoch from 1601 to 1970, it comes from ProcessHandleImpl_win.c: https://github.com/openjdk/jdk/blob/22a3117d229cba10c690a4e66baf9c754a09e57c/src/java.base/windows/native/libjava/ProcessHandleImpl_win.c#L342 ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From stuefe at openjdk.java.net Mon Mar 8 06:28:07 2021 From: stuefe at openjdk.java.net (Thomas Stuefe) Date: Mon, 8 Mar 2021 06:28:07 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> <4nc_mGufPdSzb6W33lt9L3EwiCBQLU99DTPF-q5NuCQ=.53a235e8-e82a-449b-82fa-3b93d3e6199b@github.com> Message-ID: On Sun, 7 Mar 2021 22:00:41 GMT, Sergey Bylokhov wrote: > > I wondered why C++ std headers are even used. The source code looks C-ish; but "8196681: Java Access Bridge logging and debug flags dynamically controlled" added some coding, adding a bunch of C++11x semantics and included C++ std headers. Using "/Ehsc" had even been discussed: https://mail.openjdk.java.net/pipermail/awt-dev/2018-December/014847.html but not done. > > After that discussion the usage of "string.h"/etc was dropped and "C string manipulation API" was used instead, and that suppressed the warning. I do not know why it was not complaining about "getTimeStamp". I think the fix should refactor the code again. Ah, I missed that part. Thanks for clarifying the history :) ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From stuefe at openjdk.java.net Mon Mar 8 06:41:08 2021 From: stuefe at openjdk.java.net (Thomas Stuefe) Date: Mon, 8 Mar 2021 06:41:08 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> Message-ID: On Mon, 8 Mar 2021 00:56:24 GMT, Yasumasa Suenaga wrote: >> I saw C4530 with VS 2019 (16.9.0) as following (on Japanese locale): >> >> AccessBridgeDebug.cpp >> ??: ?????? ????: d:\github-forked\jdk\src\jdk.accessibility\windows\native\common\AccessBridgeDebug.h >> >> : >> >> c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\ostream(611): error C2220: ??? >> ?????????????? >> c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\ostream(611): warning C4530: C++ >> ??????????????????? ??????????????????/EHsc ?????????? >> ??: ?????? ????: c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\string >> >> `/EHsc` has been already passed in other makefiles, and also AccessBridgeDebug.cpp uses some STL classes (e.g. `chrono` namespace). So `/EHsc` is a solution for this problem. > > Yasumasa Suenaga has updated the pull request incrementally with one additional commit since the last revision: > > Refactoring Hi Yasumasa, small nits below. But this looks fine to me as it is already so I leave it up to you and the others whether to change anything. Thank you for taking my suggestion. Cheers, Thomas src/jdk.accessibility/windows/native/common/AccessBridgeDebug.cpp line 80: > 78: uli.LowPart = ft.dwLowDateTime; > 79: uli.HighPart = ft.dwHighDateTime; > 80: return (uli.QuadPart / 10000ULL) - 11644473600000ULL; // Rebase Epoch from 1601 to 1970 This is good and true to the original change; I am not even sure the epoch rebase is needed. All 8196681 did was to print out the timestamps verbatim. I do not know enough about how that debug trace is used, and if the timestamps really have to be 1970 based. src/jdk.accessibility/windows/native/common/AccessBridgeDebug.cpp line 35: > 33: #include > 34: #include > 35: #include Matter of taste, but I would prefer stdlib.h and string.h instead of cxxx. Just to keep in line with the rest of the coding. Weird mix of styles otherwise (I mean this code still uses 16bit era Windows APIs). ------------- Marked as reviewed by stuefe (Reviewer). PR: https://git.openjdk.java.net/jdk/pull/2859 From ysuenaga at openjdk.java.net Mon Mar 8 07:50:10 2021 From: ysuenaga at openjdk.java.net (Yasumasa Suenaga) Date: Mon, 8 Mar 2021 07:50:10 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> Message-ID: On Mon, 8 Mar 2021 06:34:26 GMT, Thomas Stuefe wrote: >> Yasumasa Suenaga has updated the pull request incrementally with one additional commit since the last revision: >> >> Refactoring > > src/jdk.accessibility/windows/native/common/AccessBridgeDebug.cpp line 80: > >> 78: uli.LowPart = ft.dwLowDateTime; >> 79: uli.HighPart = ft.dwHighDateTime; >> 80: return (uli.QuadPart / 10000ULL) - 11644473600000ULL; // Rebase Epoch from 1601 to 1970 > > This is good and true to the original change; > > I am not even sure the epoch rebase is needed. All 8196681 did was to print out the timestamps verbatim. I do not know enough about how that debug trace is used, and if the timestamps really have to be 1970 based. It seems to be fine not to use UNIX epoch at first glance as long as we can know the timing of events, but I'm not sure (Thus I rewrote to comply with the original code). So I want to hear from the others. ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From ysuenaga at openjdk.java.net Mon Mar 8 07:54:07 2021 From: ysuenaga at openjdk.java.net (Yasumasa Suenaga) Date: Mon, 8 Mar 2021 07:54:07 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> Message-ID: On Mon, 8 Mar 2021 06:37:07 GMT, Thomas Stuefe wrote: >> Yasumasa Suenaga has updated the pull request incrementally with one additional commit since the last revision: >> >> Refactoring > > src/jdk.accessibility/windows/native/common/AccessBridgeDebug.cpp line 35: > >> 33: #include >> 34: #include >> 35: #include > > Matter of taste, but I would prefer stdlib.h and string.h instead of cxxx. Just to keep in line with the rest of the coding. Weird mix of styles otherwise (I mean this code still uses 16bit era Windows APIs). AccessBridgeDebug has `.cpp` in its extension, so the compiler can handle it as C++ code, and also "cstring" seems to be prefer to "string.h" in @mrserb 's comment. It's nature to use "cstring" in C++ source code IMHO. Let's see comments from the others. ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From kizune at openjdk.java.net Mon Mar 8 13:27:28 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Mon, 8 Mar 2021 13:27:28 GMT Subject: RFR: 8182043: Access to Windows Large Icons In-Reply-To: References: Message-ID: On Mon, 8 Mar 2021 13:22:07 GMT, Alexander Zuev wrote: > Fix updated after first round of review. Continuation of review at https://github.com/openjdk/jdk/pull/380 ------------- PR: https://git.openjdk.java.net/jdk/pull/2875 From kizune at openjdk.java.net Mon Mar 8 13:27:28 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Mon, 8 Mar 2021 13:27:28 GMT Subject: RFR: 8182043: Access to Windows Large Icons Message-ID: Fix updated after first round of review. ------------- Commit messages: - 8182043: Access to Windows Large Icons Changes: https://git.openjdk.java.net/jdk/pull/2875/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2875&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8182043 Stats: 335 lines in 6 files changed: 270 ins; 29 del; 36 mod Patch: https://git.openjdk.java.net/jdk/pull/2875.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2875/head:pull/2875 PR: https://git.openjdk.java.net/jdk/pull/2875 From serb at openjdk.java.net Mon Mar 8 19:33:08 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Mon, 8 Mar 2021 19:33:08 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> Message-ID: On Mon, 8 Mar 2021 07:46:54 GMT, Yasumasa Suenaga wrote: >> src/jdk.accessibility/windows/native/common/AccessBridgeDebug.cpp line 80: >> >>> 78: uli.LowPart = ft.dwLowDateTime; >>> 79: uli.HighPart = ft.dwHighDateTime; >>> 80: return (uli.QuadPart / 10000ULL) - 11644473600000ULL; // Rebase Epoch from 1601 to 1970 >> >> This is good and true to the original change; >> >> I am not even sure the epoch rebase is needed. All 8196681 did was to print out the timestamps verbatim. I do not know enough about how that debug trace is used, and if the timestamps really have to be 1970 based. > > It seems to be fine not to use UNIX epoch at first glance as long as we can know the timing of events, but I'm not sure (Thus I rewrote to comply with the original code). So I want to hear from the others. Did you check via some a11y tool that the new code actually works? ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From ysuenaga at openjdk.java.net Tue Mar 9 00:52:06 2021 From: ysuenaga at openjdk.java.net (Yasumasa Suenaga) Date: Tue, 9 Mar 2021 00:52:06 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> Message-ID: On Mon, 8 Mar 2021 19:30:17 GMT, Sergey Bylokhov wrote: >> It seems to be fine not to use UNIX epoch at first glance as long as we can know the timing of events, but I'm not sure (Thus I rewrote to comply with the original code). So I want to hear from the others. > > Did you check via some a11y tool that the new code actually works? No, can you help? ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From github.com+741251+turbanoff at openjdk.java.net Tue Mar 9 01:40:07 2021 From: github.com+741251+turbanoff at openjdk.java.net (Andrey Turbanov) Date: Tue, 9 Mar 2021 01:40:07 GMT Subject: Integrated: 8262161: Refactor manual I/O stream copying in java.desktop to use new convenience APIs In-Reply-To: References: Message-ID: <-jLk_NzWGP-TyHwzQnXyexoqtktQBH3wUO52Fx6XlHc=.9c023cb6-db0f-429c-abbd-d565db439826@github.com> On Mon, 21 Dec 2020 07:54:17 GMT, Andrey Turbanov wrote: > Cleanup code to use new handy methods in `java.io.InputStream`/`java.nio.file.Files` instead of manual stream copy: > 1. java.io.InputStream#readAllBytes > 2. java.io.InputStream#transferTo > 3. java.nio.file.Files#copy This pull request has now been integrated. Changeset: 39b11138 Author: Andrey Turbanov Committer: Sergey Bylokhov URL: https://git.openjdk.java.net/jdk/commit/39b11138 Stats: 134 lines in 11 files changed: 3 ins; 102 del; 29 mod 8262161: Refactor manual I/O stream copying in java.desktop to use new convenience APIs Reviewed-by: serb, prr ------------- PR: https://git.openjdk.java.net/jdk/pull/1856 From psadhukhan at openjdk.java.net Tue Mar 9 04:16:11 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 9 Mar 2021 04:16:11 GMT Subject: RFR: 8263170: ComboBoxModel documentation refers to a nonexistant type Message-ID: javadoc of ComboBoxModel incorrectly specifies "extends ListDataModel" but actually it extends ListModel and there is no such interface as ListDataModel. Rectified the anomaly. ------------- Commit messages: - 8263170: ComboBoxModel documentation refers to a nonexistant type Changes: https://git.openjdk.java.net/jdk/pull/2886/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2886&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8263170 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2886.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2886/head:pull/2886 PR: https://git.openjdk.java.net/jdk/pull/2886 From psadhukhan at openjdk.java.net Tue Mar 9 08:14:17 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 9 Mar 2021 08:14:17 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation Message-ID: BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource and other properties are set if the current value is null but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. Fixed the javadoc to specify the same. ------------- Commit messages: - 6251901: BasicTextUI: installDefaults method are contrary to the documentation Changes: https://git.openjdk.java.net/jdk/pull/2888/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2888&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-6251901 Stats: 4 lines in 1 file changed: 0 ins; 2 del; 2 mod Patch: https://git.openjdk.java.net/jdk/pull/2888.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2888/head:pull/2888 PR: https://git.openjdk.java.net/jdk/pull/2888 From azvegint at openjdk.java.net Tue Mar 9 14:04:07 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Tue, 9 Mar 2021 14:04:07 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation In-Reply-To: References: Message-ID: On Tue, 9 Mar 2021 08:09:04 GMT, Prasanta Sadhukhan wrote: > BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource > and other properties are set if the current value is null > but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. > Fixed the javadoc to specify the same. src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java line 306: > 304: * Initializes component properties, such as font, foreground, > 305: * background, caret color, selection color, selected text color, > 306: * disabled text color, and border color. All properties are set This method is also affects a margin, but it is does not mentioned in the javadoc. ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From azvegint at openjdk.java.net Tue Mar 9 14:10:07 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Tue, 9 Mar 2021 14:10:07 GMT Subject: RFR: 8263170: ComboBoxModel documentation refers to a nonexistant type In-Reply-To: References: Message-ID: On Tue, 9 Mar 2021 04:10:38 GMT, Prasanta Sadhukhan wrote: > javadoc of ComboBoxModel incorrectly specifies "extends ListDataModel" but actually it extends ListModel and there is no such interface as ListDataModel. Rectified the anomaly. Marked as reviewed by azvegint (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2886 From trebari at openjdk.java.net Tue Mar 9 14:28:08 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Tue, 9 Mar 2021 14:28:08 GMT Subject: RFR: 8263170: ComboBoxModel documentation refers to a nonexistant type In-Reply-To: References: Message-ID: On Tue, 9 Mar 2021 04:10:38 GMT, Prasanta Sadhukhan wrote: > javadoc of ComboBoxModel incorrectly specifies "extends ListDataModel" but actually it extends ListModel and there is no such interface as ListDataModel. Rectified the anomaly. Marked as reviewed by trebari (Committer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2886 From pbansal at openjdk.java.net Tue Mar 9 16:55:07 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Tue, 9 Mar 2021 16:55:07 GMT Subject: RFR: 8263170: ComboBoxModel documentation refers to a nonexistant type In-Reply-To: References: Message-ID: On Tue, 9 Mar 2021 04:10:38 GMT, Prasanta Sadhukhan wrote: > javadoc of ComboBoxModel incorrectly specifies "extends ListDataModel" but actually it extends ListModel and there is no such interface as ListDataModel. Rectified the anomaly. Marked as reviewed by pbansal (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2886 From pbansal at openjdk.java.net Tue Mar 9 17:25:19 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Tue, 9 Mar 2021 17:25:19 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol Message-ID: Create implementation of NSAccessibilitySlider protocol https://developer.apple.com/documentation/appkit/nsaccessibilityslider The implementation has the function performIncrement and performDecrement to increase/decrease the value of slider using the VoiceOver. To implement this functionality, I could think of following two ways. I have chosen the first one here though it is more intrusive. 1. Make the AccessibleJSlider class implement the AccessibleAction interface. This makes AccessibleJSlider consistent with the AccessibleJSpinner class. It is more clear and the logic to increase/decrease Slider value can be changed easily. But this changes AccessibleJSlider class and will need a CSR. 2. Get the current Accessible Value from the component and just increment/decrement it in SliderAccessibility.m class itself and then set the current accessible value fro there only. This will not need any changes in AccessibleJSlider class, but this does not look correct way and I have not used this. The changes can be easily tested by using a JSlider example, like the following example. VO should announce the correct the slider values. To change the slider values, use ctrl+opt+shift+down key to start interacting with the slider, then use ctrl+opt+up/down arrow keys to increment/decrement slider values. import javax.swing.JFrame; import javax.swing.JSlider; public class JSliderDemo{ public static void main(String[] args) throws Exception { JFrame jframe = new JFrame("JSlider Demo"); jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jframe.add(new JSlider()); jframe.setLocationRelativeTo(null); jframe.pack(); jframe.setVisible(true); } } ------------- Commit messages: - Remove whitespaces - remove SpinboxAccessibility.m changes - Code cleanup - cleanup - 8262981: Create implementation for NSAccessibilitySlider protocol Changes: https://git.openjdk.java.net/jdk/pull/2874/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2874&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8262981 Stats: 74 lines in 4 files changed: 68 ins; 1 del; 5 mod Patch: https://git.openjdk.java.net/jdk/pull/2874.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2874/head:pull/2874 PR: https://git.openjdk.java.net/jdk/pull/2874 From aivanov at openjdk.java.net Tue Mar 9 21:00:08 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Tue, 9 Mar 2021 21:00:08 GMT Subject: RFR: 8263170: ComboBoxModel documentation refers to a nonexistant type In-Reply-To: References: Message-ID: On Tue, 9 Mar 2021 04:10:38 GMT, Prasanta Sadhukhan wrote: > javadoc of ComboBoxModel incorrectly specifies "extends ListDataModel" but actually it extends ListModel and there is no such interface as ListDataModel. Rectified the anomaly. Marked as reviewed by aivanov (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2886 From aivanov at openjdk.java.net Tue Mar 9 21:20:07 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Tue, 9 Mar 2021 21:20:07 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation In-Reply-To: References: Message-ID: On Tue, 9 Mar 2021 08:09:04 GMT, Prasanta Sadhukhan wrote: > BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource > and other properties are set if the current value is null > but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. > Fixed the javadoc to specify the same. src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java line 307: > 305: * background, caret color, selection color, selected text color, > 306: * disabled text color, and border color. All properties are set > 307: * if their current value is either null or a UIResource. Suggestion: * disabled text color, and border color. Each property is set, * if its current value is either null or a UIResource. I think this conveys the behavior better. Each property is checked separately, independently from other properties. ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From aivanov at openjdk.java.net Tue Mar 9 21:20:10 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Tue, 9 Mar 2021 21:20:10 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation In-Reply-To: References: Message-ID: <8gtdMKbn2YxGO4eAhGUBk8cdsoCU1srL_sXE2fDziak=.d9d240f9-c7e8-4fd3-b1f3-d233971d8ddb@github.com> On Tue, 9 Mar 2021 13:34:20 GMT, Alexander Zvegintsev wrote: >> BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource >> and other properties are set if the current value is null >> but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. >> Fixed the javadoc to specify the same. > > src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java line 306: > >> 304: * Initializes component properties, such as font, foreground, >> 305: * background, caret color, selection color, selected text color, >> 306: * disabled text color, and border color. All properties are set > > This method is also affects a margin, but it is does not mentioned in the javadoc. Does the list of properties listed in the javadoc have to be comprehensive? However, `margin` seems to be the only property omitted from the list. ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From kizune at openjdk.java.net Tue Mar 9 21:30:09 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Tue, 9 Mar 2021 21:30:09 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: References: Message-ID: On Mon, 8 Mar 2021 12:51:56 GMT, Pankaj Bansal wrote: > Create implementation of NSAccessibilitySlider protocol https://developer.apple.com/documentation/appkit/nsaccessibilityslider > > The implementation has the function performIncrement and performDecrement to increase/decrease the value of slider using the VoiceOver. To implement this functionality, I could think of following two ways. I have chosen the first one here though it is more intrusive. > 1. Make the AccessibleJSlider class implement the AccessibleAction interface. This makes AccessibleJSlider consistent with the AccessibleJSpinner class. It is more clear and the logic to increase/decrease Slider value can be changed easily. But this changes AccessibleJSlider class and will need a CSR. > 2. Get the current Accessible Value from the component and just increment/decrement it in SliderAccessibility.m class itself and then set the current accessible value fro there only. This will not need any changes in AccessibleJSlider class, but this does not look correct way and I have not used this. > > The changes can be easily tested by using a JSlider example, like the following example. VO should announce the correct the slider values. To change the slider values, use ctrl+opt+shift+down key to start interacting with the slider, then use ctrl+opt+up/down arrow keys to increment/decrement slider values. > > import javax.swing.JFrame; > import javax.swing.JSlider; > > public class JSliderDemo{ > public static void main(String[] args) throws Exception { > JFrame jframe = new JFrame("JSlider Demo"); > jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); > jframe.add(new JSlider()); > > jframe.setLocationRelativeTo(null); > jframe.pack(); > jframe.setVisible(true); > } > } src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/CommonComponentAccessibility.m line 59: > 57: [rolesMap setObject:@"RadiobuttonAccessibility" forKey:@"radiobutton"]; > 58: [rolesMap setObject:@"CheckboxAccessibility" forKey:@"checkbox"]; > 59: [rolesMap setObject:@"SliderAccessibility" forKey:@"slider"]; Shouldn't you also increase the rolesMap initial capacity? ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From kizune at openjdk.java.net Tue Mar 9 21:34:10 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Tue, 9 Mar 2021 21:34:10 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation In-Reply-To: References: Message-ID: On Tue, 9 Mar 2021 21:12:08 GMT, Alexey Ivanov wrote: >> BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource >> and other properties are set if the current value is null >> but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. >> Fixed the javadoc to specify the same. > > src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java line 307: > >> 305: * background, caret color, selection color, selected text color, >> 306: * disabled text color, and border color. All properties are set >> 307: * if their current value is either null or a UIResource. > > Suggestion: > > * disabled text color, and border color. Each property is set, > * if its current value is either null or a UIResource. > > I think this conveys the behavior better. Each property is checked separately, independently from other properties. I'm not an expert in English but i think comma after set is not needed. ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From kizune at openjdk.java.net Tue Mar 9 21:35:07 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Tue, 9 Mar 2021 21:35:07 GMT Subject: RFR: 8263170: ComboBoxModel documentation refers to a nonexistant type In-Reply-To: References: Message-ID: On Tue, 9 Mar 2021 04:10:38 GMT, Prasanta Sadhukhan wrote: > javadoc of ComboBoxModel incorrectly specifies "extends ListDataModel" but actually it extends ListModel and there is no such interface as ListDataModel. Rectified the anomaly. Marked as reviewed by kizune (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2886 From aivanov at openjdk.java.net Tue Mar 9 21:54:09 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Tue, 9 Mar 2021 21:54:09 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation In-Reply-To: References: Message-ID: On Tue, 9 Mar 2021 21:31:03 GMT, Alexander Zuev wrote: > I'm not an expert in English but i think comma after set is not needed. You're right, comma is not needed in this case. I updated my comment and removed the comma. ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From serb at openjdk.java.net Wed Mar 10 00:58:06 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 10 Mar 2021 00:58:06 GMT Subject: RFR: 8182043: Access to Windows Large Icons In-Reply-To: References: Message-ID: On Mon, 8 Mar 2021 13:23:00 GMT, Alexander Zuev wrote: >> Fix updated after first round of review. > > Continuation of review at https://github.com/openjdk/jdk/pull/380 Just to continue the thread from the old review, did you have a chance to look at the possibility of loading all existed icons embedded in the file? It was discussed here: https://github.com/openjdk/jdk/pull/380#issuecomment-702999573 ------------- PR: https://git.openjdk.java.net/jdk/pull/2875 From serb at openjdk.java.net Wed Mar 10 01:01:09 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 10 Mar 2021 01:01:09 GMT Subject: RFR: 8263170: ComboBoxModel documentation refers to a nonexistant type In-Reply-To: References: Message-ID: On Tue, 9 Mar 2021 21:32:08 GMT, Alexander Zuev wrote: >> javadoc of ComboBoxModel incorrectly specifies "extends ListDataModel" but actually it extends ListModel and there is no such interface as ListDataModel. Rectified the anomaly. > > Marked as reviewed by kizune (Reviewer). I suggest always update the copyright. ------------- PR: https://git.openjdk.java.net/jdk/pull/2886 From serb at openjdk.java.net Wed Mar 10 01:03:08 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 10 Mar 2021 01:03:08 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: References: Message-ID: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> On Mon, 8 Mar 2021 12:51:56 GMT, Pankaj Bansal wrote: > Create implementation of NSAccessibilitySlider protocol https://developer.apple.com/documentation/appkit/nsaccessibilityslider > > The implementation has the function performIncrement and performDecrement to increase/decrease the value of slider using the VoiceOver. To implement this functionality, I could think of following two ways. I have chosen the first one here though it is more intrusive. > 1. Make the AccessibleJSlider class implement the AccessibleAction interface. This makes AccessibleJSlider consistent with the AccessibleJSpinner class. It is more clear and the logic to increase/decrease Slider value can be changed easily. But this changes AccessibleJSlider class and will need a CSR. > 2. Get the current Accessible Value from the component and just increment/decrement it in SliderAccessibility.m class itself and then set the current accessible value fro there only. This will not need any changes in AccessibleJSlider class, but this does not look correct way and I have not used this. > > The changes can be easily tested by using a JSlider example, like the following example. VO should announce the correct the slider values. To change the slider values, use ctrl+opt+shift+down key to start interacting with the slider, then use ctrl+opt+up/down arrow keys to increment/decrement slider values. > > import javax.swing.JFrame; > import javax.swing.JSlider; > > public class JSliderDemo{ > public static void main(String[] args) throws Exception { > JFrame jframe = new JFrame("JSlider Demo"); > jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); > jframe.add(new JSlider()); > > jframe.setLocationRelativeTo(null); > jframe.pack(); > jframe.setVisible(true); > } > } If you need a new functionality and CSR I wonder how it currently works on Windows and macOS, or it does not work? ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From serb at openjdk.java.net Wed Mar 10 01:43:06 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 10 Mar 2021 01:43:06 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> Message-ID: <8IiVqESA2inNmd8VD9dMWgBxSHXfBqd3RXfDMCVEjQI=.61290b1f-aa2b-4166-b8c0-6548b930b116@github.com> On Tue, 9 Mar 2021 00:49:09 GMT, Yasumasa Suenaga wrote: >> Did you check via some a11y tool that the new code actually works? > > No, can you help? I'll check. ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From psadhukhan at openjdk.java.net Wed Mar 10 04:27:28 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 10 Mar 2021 04:27:28 GMT Subject: RFR: 8263170: ComboBoxModel documentation refers to a nonexistent type [v2] In-Reply-To: References: Message-ID: > javadoc of ComboBoxModel incorrectly specifies "extends ListDataModel" but actually it extends ListModel and there is no such interface as ListDataModel. Rectified the anomaly. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Copyright change ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2886/files - new: https://git.openjdk.java.net/jdk/pull/2886/files/68b4fbe6..87c89395 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2886&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2886&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2886.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2886/head:pull/2886 PR: https://git.openjdk.java.net/jdk/pull/2886 From psadhukhan at openjdk.java.net Wed Mar 10 04:32:29 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 10 Mar 2021 04:32:29 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation [v2] In-Reply-To: References: Message-ID: <75E9PBbMXciz6Iv8KtUCLxV-ZrNkH_ykTdupmcJ96l0=.29152987-b340-4156-b912-e97e2ca8b209@github.com> > BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource > and other properties are set if the current value is null > but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. > Fixed the javadoc to specify the same. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: javadoc change ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2888/files - new: https://git.openjdk.java.net/jdk/pull/2888/files/96ae8509..b27104e5 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2888&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2888&range=00-01 Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.java.net/jdk/pull/2888.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2888/head:pull/2888 PR: https://git.openjdk.java.net/jdk/pull/2888 From psadhukhan at openjdk.java.net Wed Mar 10 04:38:19 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 10 Mar 2021 04:38:19 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation [v3] In-Reply-To: References: Message-ID: > BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource > and other properties are set if the current value is null > but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. > Fixed the javadoc to specify the same. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: copyright change ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2888/files - new: https://git.openjdk.java.net/jdk/pull/2888/files/b27104e5..fad21b0d Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2888&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2888&range=01-02 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2888.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2888/head:pull/2888 PR: https://git.openjdk.java.net/jdk/pull/2888 From psadhukhan at openjdk.java.net Wed Mar 10 04:38:20 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 10 Mar 2021 04:38:20 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation [v3] In-Reply-To: <8gtdMKbn2YxGO4eAhGUBk8cdsoCU1srL_sXE2fDziak=.d9d240f9-c7e8-4fd3-b1f3-d233971d8ddb@github.com> References: <8gtdMKbn2YxGO4eAhGUBk8cdsoCU1srL_sXE2fDziak=.d9d240f9-c7e8-4fd3-b1f3-d233971d8ddb@github.com> Message-ID: On Tue, 9 Mar 2021 21:17:13 GMT, Alexey Ivanov wrote: >> src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java line 306: >> >>> 304: * Initializes component properties, such as font, foreground, >>> 305: * background, caret color, selection color, selected text color, >>> 306: * disabled text color, and border color. All properties are set >> >> This method is also affects a margin, but it is does not mentioned in the javadoc. > > Does the list of properties listed in the javadoc have to be comprehensive? However, `margin` seems to be the only property omitted from the list. I have added margin too, ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From kizune at openjdk.java.net Wed Mar 10 05:39:06 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Wed, 10 Mar 2021 05:39:06 GMT Subject: RFR: 8182043: Access to Windows Large Icons In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 00:55:00 GMT, Sergey Bylokhov wrote: >> Continuation of review at https://github.com/openjdk/jdk/pull/380 > > Just to continue the thread from the old review, did you have a chance to look at the possibility of loading all existed icons embedded in the file? It was discussed here: > https://github.com/openjdk/jdk/pull/380#issuecomment-702999573 > Just to continue the thread from the old review, did you have a chance to look at the possibility of loading all existed icons embedded in the file? It was discussed here: > [#380 (comment)](https://github.com/openjdk/jdk/pull/380#issuecomment-702999573) Yes, i did. There were 3 shortcomings: 1. It works in about 10% of the cases in all other cases it reports only one icon available (32x32) even if there are other resolution icons. 2. It is quite slow, especially on network drives. 3. Does not work at all in files that are within AppData\Roaming folder - returning list is just empty. ------------- PR: https://git.openjdk.java.net/jdk/pull/2875 From psadhukhan at openjdk.java.net Wed Mar 10 06:42:06 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 10 Mar 2021 06:42:06 GMT Subject: Integrated: 8263170: ComboBoxModel documentation refers to a nonexistent type In-Reply-To: References: Message-ID: On Tue, 9 Mar 2021 04:10:38 GMT, Prasanta Sadhukhan wrote: > javadoc of ComboBoxModel incorrectly specifies "extends ListDataModel" but actually it extends ListModel and there is no such interface as ListDataModel. Rectified the anomaly. This pull request has now been integrated. Changeset: 3fe8a466 Author: Prasanta Sadhukhan URL: https://git.openjdk.java.net/jdk/commit/3fe8a466 Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod 8263170: ComboBoxModel documentation refers to a nonexistent type Reviewed-by: azvegint, trebari, pbansal, aivanov, kizune ------------- PR: https://git.openjdk.java.net/jdk/pull/2886 From azvegint at openjdk.java.net Wed Mar 10 10:44:07 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Wed, 10 Mar 2021 10:44:07 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation [v3] In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 04:38:19 GMT, Prasanta Sadhukhan wrote: >> BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource >> and other properties are set if the current value is null >> but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. >> Fixed the javadoc to specify the same. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > copyright change Marked as reviewed by azvegint (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From kizune at openjdk.java.net Wed Mar 10 11:08:08 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Wed, 10 Mar 2021 11:08:08 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation [v3] In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 04:38:19 GMT, Prasanta Sadhukhan wrote: >> BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource >> and other properties are set if the current value is null >> but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. >> Fixed the javadoc to specify the same. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > copyright change Marked as reviewed by kizune (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From aivanov at openjdk.java.net Wed Mar 10 11:53:09 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Wed, 10 Mar 2021 11:53:09 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation [v3] In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 04:38:19 GMT, Prasanta Sadhukhan wrote: >> BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource >> and other properties are set if the current value is null >> but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. >> Fixed the javadoc to specify the same. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > copyright change Changes requested by aivanov (Reviewer). src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java line 306: > 304: * Initializes component properties, such as font, foreground, > 305: * background, caret color, selection color, selected text color, > 306: * disabled text color, border and margin. Each property is set Suggestion: * disabled text color, border, and margin. Each property is set I suggest keeping the command before ?and? as it was before. ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From psadhukhan at openjdk.java.net Wed Mar 10 12:16:09 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 10 Mar 2021 12:16:09 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation [v3] In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 11:49:40 GMT, Alexey Ivanov wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> copyright change > > src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java line 306: > >> 304: * Initializes component properties, such as font, foreground, >> 305: * background, caret color, selection color, selected text color, >> 306: * disabled text color, border and margin. Each property is set > > Suggestion: > > * disabled text color, border, and margin. Each property is set > I suggest keeping the command before ?and? as it was before. I think these are nouns and as per I know, we shouldn't place comma before "and" when we are simply listing the items. ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From aivanov at openjdk.java.net Wed Mar 10 12:22:09 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Wed, 10 Mar 2021 12:22:09 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation [v3] In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 12:13:43 GMT, Prasanta Sadhukhan wrote: > I think these are nouns and as per I know, we shouldn't place comma before "and" when we are simply listing the items. This is called [Oxford Comma](https://www.grammarly.com/blog/what-is-the-oxford-comma-and-why-do-people-care-so-much-about-it/). It is quite standard in American English and javadoc uses American English. The comma was present before therefore I suggest following the style and add the now missing comma. ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From psadhukhan at openjdk.java.net Wed Mar 10 12:28:18 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 10 Mar 2021 12:28:18 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation [v4] In-Reply-To: References: Message-ID: > BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource > and other properties are set if the current value is null > but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. > Fixed the javadoc to specify the same. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Add Oxford Comma ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2888/files - new: https://git.openjdk.java.net/jdk/pull/2888/files/fad21b0d..fb7aa827 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2888&range=03 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2888&range=02-03 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2888.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2888/head:pull/2888 PR: https://git.openjdk.java.net/jdk/pull/2888 From psadhukhan at openjdk.java.net Wed Mar 10 12:28:19 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 10 Mar 2021 12:28:19 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation [v3] In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 12:19:45 GMT, Alexey Ivanov wrote: >> I think these are nouns and as per I know, we shouldn't place comma before "and" when we are simply listing the items. > >> I think these are nouns and as per I know, we shouldn't place comma before "and" when we are simply listing the items. > > This is called [Oxford Comma](https://www.grammarly.com/blog/what-is-the-oxford-comma-and-why-do-people-care-so-much-about-it/). It is quite standard in American English and javadoc uses American English. The comma was present before therefore I suggest following the style and add the now missing comma. ok ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From aivanov at openjdk.java.net Wed Mar 10 12:33:07 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Wed, 10 Mar 2021 12:33:07 GMT Subject: RFR: 6251901: BasicTextUI: installDefaults method are contrary to the documentation [v4] In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 12:28:18 GMT, Prasanta Sadhukhan wrote: >> BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource >> and other properties are set if the current value is null >> but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. >> Fixed the javadoc to specify the same. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Add Oxford Comma Marked as reviewed by aivanov (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From psadhukhan at openjdk.java.net Wed Mar 10 12:51:08 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 10 Mar 2021 12:51:08 GMT Subject: Integrated: 6251901: BasicTextUI: installDefaults method are contrary to the documentation In-Reply-To: References: Message-ID: <6-CsTjt25AQV6rkK8yKSrTERqWTlricS3nq3wSAXq8c=.c48512d7-e4d9-41a8-ac75-05030305afa9@github.com> On Tue, 9 Mar 2021 08:09:04 GMT, Prasanta Sadhukhan wrote: > BasicTextUI: installDefaults javadoc specifies only font, foreground and background properties are set if their current value is either null or a UIResource > and other properties are set if the current value is null > but in reality all properties such as font, foreground, background, caret color, selection color, selected text color, disabled text color, and border color are set if their current value is either null or a UIResource. > Fixed the javadoc to specify the same. This pull request has now been integrated. Changeset: c0542ed8 Author: Prasanta Sadhukhan URL: https://git.openjdk.java.net/jdk/commit/c0542ed8 Stats: 4 lines in 1 file changed: 0 ins; 2 del; 2 mod 6251901: BasicTextUI: installDefaults method are contrary to the documentation Reviewed-by: azvegint, kizune, aivanov ------------- PR: https://git.openjdk.java.net/jdk/pull/2888 From kizune at openjdk.java.net Wed Mar 10 13:35:08 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Wed, 10 Mar 2021 13:35:08 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> References: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> Message-ID: On Wed, 10 Mar 2021 01:00:33 GMT, Sergey Bylokhov wrote: > If you need a new functionality and CSR I wonder how it currently works on Windows and macOS, or it does not work? Haven't tested this functionality on Windows, on macOS with current JDK it does not work at all. After entering the JSlider interaction mode VoiceOver does not announce the a11y shortcuts and the attempt to invoke said shortcuts do nothing. ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From pbansal at openjdk.java.net Wed Mar 10 13:55:07 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Wed, 10 Mar 2021 13:55:07 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: References: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> Message-ID: On Wed, 10 Mar 2021 13:32:01 GMT, Alexander Zuev wrote: > If you need a new functionality and CSR I wonder how it currently works on Windows and macOS, or it does not work? ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From pbansal at openjdk.java.net Wed Mar 10 14:50:11 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Wed, 10 Mar 2021 14:50:11 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: References: Message-ID: On Tue, 9 Mar 2021 21:27:39 GMT, Alexander Zuev wrote: > Shouldn't you also increase the rolesMap initial capacity? ok, I will do that in next commit. ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From pbansal at openjdk.java.net Wed Mar 10 14:50:08 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Wed, 10 Mar 2021 14:50:08 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: References: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> Message-ID: <4SZRIR695DBooSWt-1aatGx-CKPy6EwuRpXS29A8wro=.4ba37fe2-6017-482f-83c4-33d7a11fc320@github.com> On Wed, 10 Mar 2021 13:32:01 GMT, Alexander Zuev wrote: > > If you need a new functionality and CSR I wonder how it currently works on Windows and macOS, or it does not work? > > Haven't tested this functionality on Windows, on macOS with current JDK it does not work at all. After entering the JSlider interaction mode VoiceOver does not announce the a11y shortcuts and the attempt to invoke said shortcuts do nothing. Yes, as Alex pointed out, it does not work on MacOS. The VO only announces the value and user can not modify the slider values using VO shortcut keys. I saw the windows code and I did not see anything where the current value of a component is being set. I tested this by running JAWS as well. When a JSlider is in focus, JAWS announces the slider values and then says "To increase or decrease, use the arrow keys". The keys are being handled by JAVA only and JAWS is not doing any part in it. To verify this, I commented the code to handle keys events in Java and slider value does not change. So looks like this does not work on Windows as well. If these changes are too intrusive, I can go with the second approach of getting and setting the current values of slider in performincrement/performdecrement functions in SliderAccessibility.m. I am not sure if this will be correct approach, but it will be less intrusive and will not need a CSR. ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From github.com+741251+turbanoff at openjdk.java.net Wed Mar 10 18:12:08 2021 From: github.com+741251+turbanoff at openjdk.java.net (Andrey Turbanov) Date: Wed, 10 Mar 2021 18:12:08 GMT Subject: RFR: 8263170: ComboBoxModel documentation refers to a nonexistent type [v2] In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 00:58:36 GMT, Sergey Bylokhov wrote: >> Marked as reviewed by kizune (Reviewer). > > I suggest always update the copyright. There is one more occurrence of `ListDataModel` in JDK code - https://github.com/openjdk/jdk/blob/master/src/java.desktop/share/classes/javax/swing/ListModel.java#L34 Perhaps it's worth to fix it too. ------------- PR: https://git.openjdk.java.net/jdk/pull/2886 From aivanov at openjdk.java.net Wed Mar 10 21:01:14 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Wed, 10 Mar 2021 21:01:14 GMT Subject: RFR: 8182043: Access to Windows Large Icons In-Reply-To: References: Message-ID: On Mon, 8 Mar 2021 13:22:07 GMT, Alexander Zuev wrote: > Fix updated after first round of review. src/java.desktop/windows/classes/sun/awt/shell/Win32ShellFolder2.java line 1044: > 1042: new BufferedImage(iconSize, iconSize, BufferedImage.TYPE_INT_ARGB); > 1043: img.setRGB(0, 0, iconSize, iconSize, iconBits, 0, iconSize); > 1044: return img; There are cases where the size of the buffered image is different from the requested size. It could affect the layout because it breaks the assumption that the returned image has the requested size but it may be larger. (Or is it no longer possible?) I think it should be wrapped into `MultiResolutionIconImage` in this case. src/java.desktop/windows/classes/sun/awt/shell/Win32ShellFolder2.java line 1114: > 1112: bothIcons.put(getLargeIcon? SMALL_ICON_SIZE : LARGE_ICON_SIZE, newIcon2); > 1113: newIcon = new MultiResolutionIconImage(getLargeIcon ? LARGE_ICON_SIZE > 1114: : SMALL_ICON_SIZE, bothIcons); I still propose to refactor this code to make it clearer. The code always returns two icons: _small + large_ or _large + small_ ? combined in `MultiResolutionIconImage`. You can get `smallIcon` and `largeIcon` and then wrap them into `MultiResolutionIconImage` in the correct order and store each icon in the cache. My opinion hasn't changed here. I still think there's not much value in getting smaller icon size in addition to larger one. Or does it provide an alternative image for the case where the system scaling is 200% and the window is moved to a monitor with scaling of 100%? src/java.desktop/windows/classes/sun/awt/shell/Win32ShellFolder2.java line 1195: > 1193: */ > 1194: static Image getShell32Icon(int iconID, int size) { > 1195: boolean useVGAColors = true; // Will be ignored on XP and later I cannot see where `useVGAColors` is used. Since the supported OS are later than XP, it can be removed, can't it? src/java.desktop/windows/native/libawt/windows/ShellFolder2.cpp line 983: > 981: size = 16; > 982: } > 983: hres = pIcon->Extract(szBuf, index, &hIcon, NULL, (16 << 16) + size); Suggestion: hres = pIcon->Extract(szBuf, index, &hIcon, NULL, size); Now you request only one icon. test/jdk/javax/swing/JFileChooser/FileSystemView/SystemIconTest.java line 64: > 62: } > 63: > 64: if (icon.getIconWidth() != size) { Does it make sense to check that the icon is a multi-resolution image with the expected sizes? We know for sure `explorer.exe` contains the entire set of icons. src/java.desktop/share/classes/javax/swing/filechooser/FileSystemView.java line 264: > 262: *

> 263: * The default implementation gets information from the > 264: * ShellFolder class. Whenever possible, the icon Do we continue using `` elements? I thought that {@code} is the preferred way to markup class names. src/java.desktop/windows/classes/sun/awt/shell/Win32ShellFolder2.java line 1112: > 1110: Map bothIcons = new HashMap<>(2); > 1111: bothIcons.put(getLargeIcon? LARGE_ICON_SIZE : SMALL_ICON_SIZE, newIcon); > 1112: bothIcons.put(getLargeIcon? SMALL_ICON_SIZE : LARGE_ICON_SIZE, newIcon2); Suggestion: bothIcons.put(getLargeIcon ? LARGE_ICON_SIZE : SMALL_ICON_SIZE, newIcon); bothIcons.put(getLargeIcon ? SMALL_ICON_SIZE : LARGE_ICON_SIZE, newIcon2); src/java.desktop/windows/classes/sun/awt/shell/Win32ShellFolder2.java line 1146: > 1144: } > 1145: Map multiResolutionIcon = new HashMap<>(); > 1146: int start = size > MAX_QUALITY_ICON ? ICON_RESOLUTIONS.length - 1 : 0; Does it make sense to always start at zero? The icons of smaller size will never be used, will they? Thus it's safe to start at the index which corresponds to the requested size if `size` matches, or the index such as `ICON_RESOLUTIONS[index] < size && ICON_RESOLUTIONS[index + 1] > size`. src/java.desktop/windows/classes/sun/awt/shell/Win32ShellFolder2.java line 1149: > 1147: int increment = size > MAX_QUALITY_ICON ? -1 : 1; > 1148: int end = size > MAX_QUALITY_ICON ? -1 : ICON_RESOLUTIONS.length; > 1149: for (int i = start; i != end; i+=increment) { Suggestion: for (int i = start; i != end; i += increment) { src/java.desktop/windows/classes/sun/awt/shell/Win32ShellFolder2.java line 1422: > 1420: int w = (int) width; > 1421: int retindex = 0; > 1422: for (Integer i: resolutionVariants.keySet()) { Suggestion: for (Integer i : resolutionVariants.keySet()) { ------------- PR: https://git.openjdk.java.net/jdk/pull/2875 From serb at openjdk.java.net Wed Mar 10 23:12:09 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 10 Mar 2021 23:12:09 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: <4SZRIR695DBooSWt-1aatGx-CKPy6EwuRpXS29A8wro=.4ba37fe2-6017-482f-83c4-33d7a11fc320@github.com> References: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> <4SZRIR695DBooSWt-1aatGx-CKPy6EwuRpXS29A8wro=.4ba37fe2-6017-482f-83c4-33d7a11fc320@github.com> Message-ID: On Wed, 10 Mar 2021 14:47:02 GMT, Pankaj Bansal wrote: >>> If you need a new functionality and CSR I wonder how it currently works on Windows and macOS, or it does not work? >> >> Haven't tested this functionality on Windows, on macOS with current JDK it does not work at all. After entering the JSlider interaction mode VoiceOver does not announce the a11y shortcuts and the attempt to invoke said shortcuts do nothing. > >> > If you need a new functionality and CSR I wonder how it currently works on Windows and macOS, or it does not work? >> >> Haven't tested this functionality on Windows, on macOS with current JDK it does not work at all. After entering the JSlider interaction mode VoiceOver does not announce the a11y shortcuts and the attempt to invoke said shortcuts do nothing. > > Yes, as Alex pointed out, it does not work on MacOS. The VO only announces the value and user can not modify the slider values using VO shortcut keys. > > I saw the windows code and I did not see anything where the current value of a component is being set. I tested this by running JAWS as well. When a JSlider is in focus, JAWS announces the slider values and then says "To increase or decrease, use the arrow keys". The keys are being handled by JAVA only and JAWS is not doing any part in it. To verify this, I commented the code to handle keys events in Java and slider value does not change. So looks like this does not work on Windows as well. > > If these changes are too intrusive, I can go with the second approach of getting and setting the current values of slider in performincrement/performdecrement functions in SliderAccessibility.m. I am not sure if this will be correct approach, but it will be less intrusive and will not need a CSR. If it does not work on Windows then I suggest checking that the new functionality requested via CSR will help it as well. ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From kizune at openjdk.java.net Thu Mar 11 01:47:07 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Thu, 11 Mar 2021 01:47:07 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: <4SZRIR695DBooSWt-1aatGx-CKPy6EwuRpXS29A8wro=.4ba37fe2-6017-482f-83c4-33d7a11fc320@github.com> References: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> <4SZRIR695DBooSWt-1aatGx-CKPy6EwuRpXS29A8wro=.4ba37fe2-6017-482f-83c4-33d7a11fc320@github.com> Message-ID: On Wed, 10 Mar 2021 14:47:02 GMT, Pankaj Bansal wrote: > If these changes are too intrusive, I can go with the second approach of getting and setting the current values of slider in performincrement/performdecrement functions in SliderAccessibility.m. I am not sure if this will be correct approach, but it will be less intrusive and will not need a CSR. I would suggest to fix it properly by filing CSR for the functional change. The idea of new implementation is not only to make it compatible with the new Apple API, but also to make it cleaner, more consistent and easier to support in the future. ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From psadhukhan at openjdk.java.net Thu Mar 11 04:00:10 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Thu, 11 Mar 2021 04:00:10 GMT Subject: RFR: 8263170: ComboBoxModel documentation refers to a nonexistent type [v2] In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 18:09:37 GMT, Andrey Turbanov wrote: > > > There is one more occurrence of `ListDataModel` in JDK code - https://github.com/openjdk/jdk/blob/master/src/java.desktop/share/classes/javax/swing/ListModel.java#L34 > Perhaps it's worth to fix it too. ok. will take a look. ------------- PR: https://git.openjdk.java.net/jdk/pull/2886 From psadhukhan at openjdk.java.net Thu Mar 11 04:37:17 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Thu, 11 Mar 2021 04:37:17 GMT Subject: RFR: 8263410: ListModel javadoc refers to non-existent interface Message-ID: ListModel class javadoc refers to ListDataModel interface but there is no ListDataModel interface. Rectified the anomaly. ------------- Commit messages: - 8263410: ListModel javadoc refers to non-existent interface Changes: https://git.openjdk.java.net/jdk/pull/2931/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2931&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8263410 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2931.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2931/head:pull/2931 PR: https://git.openjdk.java.net/jdk/pull/2931 From psadhukhan at openjdk.java.net Thu Mar 11 04:40:25 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Thu, 11 Mar 2021 04:40:25 GMT Subject: RFR: 8263410: ListModel javadoc refers to non-existent interface [v2] In-Reply-To: References: Message-ID: <5tteNI8tzgKO2jGYeg5bH07UAb6e5O317G-OmpTV1bc=.4d517d4a-2f86-46f8-9291-872cf7d67d25@github.com> > ListModel class javadoc refers to ListDataModel interface but there is no ListDataModel interface. Rectified the anomaly. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Copyright change ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2931/files - new: https://git.openjdk.java.net/jdk/pull/2931/files/64908df5..26d4df72 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2931&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2931&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2931.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2931/head:pull/2931 PR: https://git.openjdk.java.net/jdk/pull/2931 From azvegint at openjdk.java.net Thu Mar 11 13:02:09 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Thu, 11 Mar 2021 13:02:09 GMT Subject: RFR: 8263410: ListModel javadoc refers to non-existent interface [v2] In-Reply-To: <5tteNI8tzgKO2jGYeg5bH07UAb6e5O317G-OmpTV1bc=.4d517d4a-2f86-46f8-9291-872cf7d67d25@github.com> References: <5tteNI8tzgKO2jGYeg5bH07UAb6e5O317G-OmpTV1bc=.4d517d4a-2f86-46f8-9291-872cf7d67d25@github.com> Message-ID: On Thu, 11 Mar 2021 04:40:25 GMT, Prasanta Sadhukhan wrote: >> ListModel class javadoc refers to ListDataModel interface but there is no ListDataModel interface. Rectified the anomaly. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Copyright change Marked as reviewed by azvegint (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2931 From pbansal at openjdk.java.net Thu Mar 11 13:29:07 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Thu, 11 Mar 2021 13:29:07 GMT Subject: RFR: 8263410: ListModel javadoc refers to non-existent interface [v2] In-Reply-To: <5tteNI8tzgKO2jGYeg5bH07UAb6e5O317G-OmpTV1bc=.4d517d4a-2f86-46f8-9291-872cf7d67d25@github.com> References: <5tteNI8tzgKO2jGYeg5bH07UAb6e5O317G-OmpTV1bc=.4d517d4a-2f86-46f8-9291-872cf7d67d25@github.com> Message-ID: On Thu, 11 Mar 2021 04:40:25 GMT, Prasanta Sadhukhan wrote: >> ListModel class javadoc refers to ListDataModel interface but there is no ListDataModel interface. Rectified the anomaly. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Copyright change Marked as reviewed by pbansal (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2931 From pbansal at openjdk.java.net Thu Mar 11 17:13:05 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Thu, 11 Mar 2021 17:13:05 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: References: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> <4SZRIR695DBooSWt-1aatGx-CKPy6EwuRpXS29A8wro=.4ba37fe2-6017-482f-83c4-33d7a11fc320@github.com> Message-ID: On Wed, 10 Mar 2021 23:09:31 GMT, Sergey Bylokhov wrote: > If it does not work on Windows then I suggest checking that the new functionality requested via CSR will help it as well. I could not find any key shortcuts where JAWS will consume the key pressed and will be used to interact with the component like the VO is doing here. This similar functionality is present in JSpinner already and JAWS says similar thing when a Spinner is in focus "To set the value, press the arrow keys or type the value". When user presses the keys, it is consumed by Java and value is incremented/decremented as expected. But the value is not being set by JAWS like VO if used with VO keys. So I am not sure how to verify if the changes will be useful for windows as well. I think if there is a way user can interact with Spinner or Slider, then these changes should be useful and if it is not possible, it will not be useful in both. These changes does make the Slider more consistent with Spinner and easy to maintain and cleaner. If you happen to have some idea about how can a user interact with Sliders or Spinners using JAWS, please let me know. I will definitely verify if the changes would be helpful for Windows. ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From aivanov at openjdk.java.net Thu Mar 11 21:52:07 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Thu, 11 Mar 2021 21:52:07 GMT Subject: RFR: 8263410: ListModel javadoc refers to non-existent interface [v2] In-Reply-To: <5tteNI8tzgKO2jGYeg5bH07UAb6e5O317G-OmpTV1bc=.4d517d4a-2f86-46f8-9291-872cf7d67d25@github.com> References: <5tteNI8tzgKO2jGYeg5bH07UAb6e5O317G-OmpTV1bc=.4d517d4a-2f86-46f8-9291-872cf7d67d25@github.com> Message-ID: On Thu, 11 Mar 2021 04:40:25 GMT, Prasanta Sadhukhan wrote: >> ListModel class javadoc refers to ListDataModel interface but there is no ListDataModel interface. Rectified the anomaly. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Copyright change Marked as reviewed by aivanov (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2931 From serb at openjdk.java.net Fri Mar 12 03:29:11 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Fri, 12 Mar 2021 03:29:11 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: References: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> <4SZRIR695DBooSWt-1aatGx-CKPy6EwuRpXS29A8wro=.4ba37fe2-6017-482f-83c4-33d7a11fc320@github.com> Message-ID: <60QaQ3ISOvoR5RMWU1hTSCsiBHfy7xU2QjvLzrGaSvA=.c02ab62e-5176-4015-a16c-849a71088452@github.com> On Thu, 11 Mar 2021 17:10:01 GMT, Pankaj Bansal wrote: > If you happen to have some idea about how can a user interact with Sliders or Spinners using JAWS, please let me know. I will definitely verify if the changes would be helpful for Windows. How the native applications works under JAWS? ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From psadhukhan at openjdk.java.net Fri Mar 12 04:38:19 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Fri, 12 Mar 2021 04:38:19 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing Message-ID: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. ------------- Commit messages: - 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing Changes: https://git.openjdk.java.net/jdk/pull/2955/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8263472 Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jdk/pull/2955.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2955/head:pull/2955 PR: https://git.openjdk.java.net/jdk/pull/2955 From github.com+72060147+amresh-sahu at openjdk.java.net Fri Mar 12 05:36:23 2021 From: github.com+72060147+amresh-sahu at openjdk.java.net (Amresh Sahu) Date: Fri, 12 Mar 2021 05:36:23 GMT Subject: RFR: JDK-8263235 : sanity/client/SwingSet/src/ColorChooserDemoTest.java failed throwing java.lang.NoClassDefFoundError Message-ID: <7wHhDXuqX0oZMwq82WEmTlzRxsHYy7IBhsehPKFwtIo=.7565e4dc-175a-46b4-9cc7-dc3d4b23f240@github.com> Added @build org.jemmy2ext.JemmyExt. ------------- Commit messages: - JDK-8263235:Added @build org.jemmy2ext.JemmyExt - Merge pull request #2 from openjdk/master Changes: https://git.openjdk.java.net/jdk/pull/2958/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2958&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8263235 Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jdk/pull/2958.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2958/head:pull/2958 PR: https://git.openjdk.java.net/jdk/pull/2958 From github.com+72060147+amresh-sahu at openjdk.java.net Fri Mar 12 05:43:06 2021 From: github.com+72060147+amresh-sahu at openjdk.java.net (Amresh Sahu) Date: Fri, 12 Mar 2021 05:43:06 GMT Subject: RFR: JDK-8263235 : sanity/client/SwingSet/src/ColorChooserDemoTest.java failed throwing java.lang.NoClassDefFoundError In-Reply-To: <7wHhDXuqX0oZMwq82WEmTlzRxsHYy7IBhsehPKFwtIo=.7565e4dc-175a-46b4-9cc7-dc3d4b23f240@github.com> References: <7wHhDXuqX0oZMwq82WEmTlzRxsHYy7IBhsehPKFwtIo=.7565e4dc-175a-46b4-9cc7-dc3d4b23f240@github.com> Message-ID: <0BoiMhMpzmk9jiDBv4ZNkV0MdYyPKYGqZeu0JeE2v-8=.e3dc5ed5-57b6-42d4-a3dd-14c1f9466d76@github.com> On Fri, 12 Mar 2021 05:29:01 GMT, Amresh Sahu wrote: > Added @build org.jemmy2ext.JemmyExt. @shurymury , @akolarkunnu Kindly review my changes. ------------- PR: https://git.openjdk.java.net/jdk/pull/2958 From akolarkunnu at openjdk.java.net Fri Mar 12 06:30:06 2021 From: akolarkunnu at openjdk.java.net (Abdul Kolarkunnu) Date: Fri, 12 Mar 2021 06:30:06 GMT Subject: RFR: JDK-8263235 : sanity/client/SwingSet/src/ColorChooserDemoTest.java failed throwing java.lang.NoClassDefFoundError In-Reply-To: <0BoiMhMpzmk9jiDBv4ZNkV0MdYyPKYGqZeu0JeE2v-8=.e3dc5ed5-57b6-42d4-a3dd-14c1f9466d76@github.com> References: <7wHhDXuqX0oZMwq82WEmTlzRxsHYy7IBhsehPKFwtIo=.7565e4dc-175a-46b4-9cc7-dc3d4b23f240@github.com> <0BoiMhMpzmk9jiDBv4ZNkV0MdYyPKYGqZeu0JeE2v-8=.e3dc5ed5-57b6-42d4-a3dd-14c1f9466d76@github.com> Message-ID: On Fri, 12 Mar 2021 05:40:35 GMT, Amresh Sahu wrote: >> Added @build org.jemmy2ext.JemmyExt. > > @shurymury , @akolarkunnu > Kindly review my changes. looks good to me ------------- PR: https://git.openjdk.java.net/jdk/pull/2958 From psadhukhan at openjdk.java.net Fri Mar 12 08:11:14 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Fri, 12 Mar 2021 08:11:14 GMT Subject: RFR: JDK-8263235 : sanity/client/SwingSet/src/ColorChooserDemoTest.java failed throwing java.lang.NoClassDefFoundError In-Reply-To: <7wHhDXuqX0oZMwq82WEmTlzRxsHYy7IBhsehPKFwtIo=.7565e4dc-175a-46b4-9cc7-dc3d4b23f240@github.com> References: <7wHhDXuqX0oZMwq82WEmTlzRxsHYy7IBhsehPKFwtIo=.7565e4dc-175a-46b4-9cc7-dc3d4b23f240@github.com> Message-ID: On Fri, 12 Mar 2021 05:29:01 GMT, Amresh Sahu wrote: > Added @build org.jemmy2ext.JemmyExt. test/jdk/sanity/client/SwingSet/src/ColorChooserDemoTest.java line 66: > 64: * java.logging > 65: * @build org.jemmy2ext.JemmyExt > 66: * @build com.sun.swingset3.demos.colorchooser.ColorChooserDemo I guess you also need to update GridBagLayoutDemoTest.java with the same. ------------- PR: https://git.openjdk.java.net/jdk/pull/2958 From github.com+72060147+amresh-sahu at openjdk.java.net Fri Mar 12 14:39:23 2021 From: github.com+72060147+amresh-sahu at openjdk.java.net (Amresh Sahu) Date: Fri, 12 Mar 2021 14:39:23 GMT Subject: RFR: JDK-8263235 : sanity/client/SwingSet/src/ColorChooserDemoTest.java failed throwing java.lang.NoClassDefFoundError [v2] In-Reply-To: <7wHhDXuqX0oZMwq82WEmTlzRxsHYy7IBhsehPKFwtIo=.7565e4dc-175a-46b4-9cc7-dc3d4b23f240@github.com> References: <7wHhDXuqX0oZMwq82WEmTlzRxsHYy7IBhsehPKFwtIo=.7565e4dc-175a-46b4-9cc7-dc3d4b23f240@github.com> Message-ID: > Added @build org.jemmy2ext.JemmyExt. Amresh Sahu has updated the pull request incrementally with one additional commit since the last revision: JDK-8263235:Added @build org.jemmy2ext.JemmyExt ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2958/files - new: https://git.openjdk.java.net/jdk/pull/2958/files/ce31d169..6673b53b Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2958&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2958&range=00-01 Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jdk/pull/2958.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2958/head:pull/2958 PR: https://git.openjdk.java.net/jdk/pull/2958 From herrick at openjdk.java.net Fri Mar 12 16:13:36 2021 From: herrick at openjdk.java.net (Andy Herrick) Date: Fri, 12 Mar 2021 16:13:36 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations Message-ID: implementation of JDK-8256145: JEP 398: Deprecate the Applet API for Removal ------------- Commit messages: - 8189198: Add "forRemoval = true" to Applet API deprecations Changes: https://git.openjdk.java.net/jdk/pull/2920/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2920&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8189198 Stats: 74 lines in 22 files changed: 14 ins; 0 del; 60 mod Patch: https://git.openjdk.java.net/jdk/pull/2920.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2920/head:pull/2920 PR: https://git.openjdk.java.net/jdk/pull/2920 From iris at openjdk.java.net Fri Mar 12 18:20:06 2021 From: iris at openjdk.java.net (Iris Clark) Date: Fri, 12 Mar 2021 18:20:06 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 18:33:37 GMT, Andy Herrick wrote: > implementation of > JDK-8256145: JEP 398: Deprecate the Applet API for Removal Marked as reviewed by iris (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From aivanov at openjdk.java.net Fri Mar 12 21:40:09 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Fri, 12 Mar 2021 21:40:09 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing In-Reply-To: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Fri, 12 Mar 2021 04:33:43 GMT, Prasanta Sadhukhan wrote: > It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. src/java.desktop/share/classes/javax/swing/JComponent.java line 660: > 658: /** > 659: * Resets the UI property to a value from the current look and feel. > 660: * Since default implementation of this method don't do anything, Suggestion: * Since the default implementation of this method doesn't do anything, Or maybe even: Suggestion: * The default implementation of this method does nothing; It's a statement. Then it continues with ??subclasses must override this method??. src/java.desktop/share/classes/javax/swing/JComponent.java line 659: > 657: > 658: /** > 659: * Resets the UI property to a value from the current look and feel. Shall it rather use plural? Suggestion: * Resets the UI properties to values from the current look and feel. There are usually several properties that get updated, *all the properties* in fact. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From serb at openjdk.java.net Fri Mar 12 22:27:06 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Fri, 12 Mar 2021 22:27:06 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing In-Reply-To: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Fri, 12 Mar 2021 04:33:43 GMT, Prasanta Sadhukhan wrote: > It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. Do we really want to specify this as a noop method? In this case, we will not be able to change this implementation in the future. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From almatvee at openjdk.java.net Sat Mar 13 00:46:07 2021 From: almatvee at openjdk.java.net (Alexander Matveev) Date: Sat, 13 Mar 2021 00:46:07 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 18:33:37 GMT, Andy Herrick wrote: > implementation of > JDK-8256145: JEP 398: Deprecate the Applet API for Removal Marked as reviewed by almatvee (Committer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From serb at openjdk.java.net Sat Mar 13 02:01:07 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Sat, 13 Mar 2021 02:01:07 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> Message-ID: On Mon, 8 Mar 2021 00:56:24 GMT, Yasumasa Suenaga wrote: >> I saw C4530 with VS 2019 (16.9.0) as following (on Japanese locale): >> >> AccessBridgeDebug.cpp >> ??: ?????? ????: d:\github-forked\jdk\src\jdk.accessibility\windows\native\common\AccessBridgeDebug.h >> >> : >> >> c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\ostream(611): error C2220: ??? >> ?????????????? >> c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\ostream(611): warning C4530: C++ >> ??????????????????? ??????????????????/EHsc ?????????? >> ??: ?????? ????: c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\string >> >> `/EHsc` has been already passed in other makefiles, and also AccessBridgeDebug.cpp uses some STL classes (e.g. `chrono` namespace). So `/EHsc` is a solution for this problem. > > Yasumasa Suenaga has updated the pull request incrementally with one additional commit since the last revision: > > Refactoring Marked as reviewed by serb (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From serb at openjdk.java.net Sat Mar 13 02:01:08 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Sat, 13 Mar 2021 02:01:08 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: <8IiVqESA2inNmd8VD9dMWgBxSHXfBqd3RXfDMCVEjQI=.61290b1f-aa2b-4166-b8c0-6548b930b116@github.com> References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> <8IiVqESA2inNmd8VD9dMWgBxSHXfBqd3RXfDMCVEjQI=.61290b1f-aa2b-4166-b8c0-6548b930b116@github.com> Message-ID: On Wed, 10 Mar 2021 01:40:39 GMT, Sergey Bylokhov wrote: >> No, can you help? > > I'll check. This change looks fine, I was able to see the proper logs in the java_access_bridge.log, but I cannot find the logs from the windows_access_bridge.log. It seems unrelated to this fix. @pankaj-bansal please take a look at why the windows log might be missed if "JAVA_ACCESSBRIDGE_LOGDIR" is set. ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From serb at openjdk.java.net Sat Mar 13 02:01:08 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Sat, 13 Mar 2021 02:01:08 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> <8IiVqESA2inNmd8VD9dMWgBxSHXfBqd3RXfDMCVEjQI=.61290b1f-aa2b-4166-b8c0-6548b930b116@github.com> Message-ID: On Sat, 13 Mar 2021 01:56:06 GMT, Sergey Bylokhov wrote: >> I'll check. > > This change looks fine, I was able to see the proper logs in the java_access_bridge.log, but I cannot find the logs from the windows_access_bridge.log. It seems unrelated to this fix. @pankaj-bansal please take a look at why the windows log might be missed if "JAVA_ACCESSBRIDGE_LOGDIR" is set. For the record: the jaws J2021.2102.34.400 was used for testing. ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From ysuenaga at openjdk.java.net Sat Mar 13 02:08:05 2021 From: ysuenaga at openjdk.java.net (Yasumasa Suenaga) Date: Sat, 13 Mar 2021 02:08:05 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> <8IiVqESA2inNmd8VD9dMWgBxSHXfBqd3RXfDMCVEjQI=.61290b1f-aa2b-4166-b8c0-6548b930b116@github.com> Message-ID: <8x8s2aklV8X1RcrW9OkE1I8pnCYP5on1EtmMFNsH-2Q=.54c4ede0-00f7-458a-826c-bf28aa627f96@github.com> On Sat, 13 Mar 2021 01:57:53 GMT, Sergey Bylokhov wrote: >> This change looks fine, I was able to see the proper logs in the java_access_bridge.log, but I cannot find the logs from the windows_access_bridge.log. It seems unrelated to this fix. @pankaj-bansal please take a look at why the windows log might be missed if "JAVA_ACCESSBRIDGE_LOGDIR" is set. > > For the record: the jaws J2021.2102.34.400 was used for testing. Thanks @mrserb for the test! ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From ysuenaga at openjdk.java.net Sat Mar 13 09:46:07 2021 From: ysuenaga at openjdk.java.net (Yasumasa Suenaga) Date: Sat, 13 Mar 2021 09:46:07 GMT Subject: Integrated: 8263136: C4530 was reported from VS 2019 at access bridge In-Reply-To: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> Message-ID: On Sun, 7 Mar 2021 03:18:53 GMT, Yasumasa Suenaga wrote: > I saw C4530 with VS 2019 (16.9.0) as following (on Japanese locale): > > AccessBridgeDebug.cpp > ??: ?????? ????: d:\github-forked\jdk\src\jdk.accessibility\windows\native\common\AccessBridgeDebug.h > > : > > c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\ostream(611): error C2220: ??? > ?????????????? > c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\ostream(611): warning C4530: C++ > ??????????????????? ??????????????????/EHsc ?????????? > ??: ?????? ????: c:\progra~2\micros~2\2019\commun~1\vc\tools\msvc\1428~1.299\include\string > > `/EHsc` has been already passed in other makefiles, and also AccessBridgeDebug.cpp uses some STL classes (e.g. `chrono` namespace). So `/EHsc` is a solution for this problem. This pull request has now been integrated. Changeset: d339320e Author: Yasumasa Suenaga URL: https://git.openjdk.java.net/jdk/commit/d339320e Stats: 9 lines in 1 file changed: 2 ins; 1 del; 6 mod 8263136: C4530 was reported from VS 2019 at access bridge Reviewed-by: stuefe, serb ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From redestad at openjdk.java.net Sat Mar 13 15:22:08 2021 From: redestad at openjdk.java.net (Claes Redestad) Date: Sat, 13 Mar 2021 15:22:08 GMT Subject: RFR: 8263552: Use String.valueOf() for char-to-String conversion in ObjectStreamClass In-Reply-To: References: Message-ID: On Sat, 20 Feb 2021 12:17:32 GMT, ?????? ??????? wrote: > This is a very simple and trivial improvement about getting rid of pointless char wrapping into array LGTM src/java.base/share/classes/java/io/ObjectStreamClass.java line 833: > 831: String fname = in.readUTF(); > 832: String signature = ((tcode == 'L') || (tcode == '[')) ? > 833: in.readTypeString() : String.valueOf(tcode); Since the result of String.valueOf here will be equal to one of the primitive signatures strings ("I", "J", ...) (otherwise ObjectStreamField will throw an exception) it might make sense to turn this into a switch expression and simplify the whole thing. I can't tell how performance sensitive this piece of code is, though. ------------- Marked as reviewed by redestad (Reviewer). PR: https://git.openjdk.java.net/jdk/pull/2660 From github.com+10835776+stsypanov at openjdk.java.net Sat Mar 13 15:56:08 2021 From: github.com+10835776+stsypanov at openjdk.java.net (=?UTF-8?B?0KHQtdGA0LPQtdC5?= =?UTF-8?B?IA==?= =?UTF-8?B?0KbRi9C/0LDQvdC+0LI=?=) Date: Sat, 13 Mar 2021 15:56:08 GMT Subject: RFR: 8263552: Use String.valueOf() for char-to-String conversion in ObjectStreamClass In-Reply-To: References: Message-ID: On Sat, 13 Mar 2021 15:18:59 GMT, Claes Redestad wrote: >> This is a very simple and trivial improvement about getting rid of pointless char wrapping into array > > src/java.base/share/classes/java/io/ObjectStreamClass.java line 833: > >> 831: String fname = in.readUTF(); >> 832: String signature = ((tcode == 'L') || (tcode == '[')) ? >> 833: in.readTypeString() : String.valueOf(tcode); > > Since the result of String.valueOf here will be equal to one of the primitive signatures strings ("I", "J", ...) (otherwise ObjectStreamField will throw an exception) it might make sense to turn this into a switch expression and simplify the whole thing. I can't tell how performance sensitive this piece of code is, though. Hi, I'll check and add one more PR if it makes sense ------------- PR: https://git.openjdk.java.net/jdk/pull/2660 From redestad at openjdk.java.net Sun Mar 14 00:05:07 2021 From: redestad at openjdk.java.net (Claes Redestad) Date: Sun, 14 Mar 2021 00:05:07 GMT Subject: RFR: 8263552: Use String.valueOf() for char-to-String conversion in ObjectStreamClass In-Reply-To: References: Message-ID: On Sat, 13 Mar 2021 15:19:18 GMT, Claes Redestad wrote: >> This is a very simple and trivial improvement about getting rid of pointless char wrapping into array > > LGTM I'll sponsor when I'm back to work on Monday, assuming there are no objections. ------------- PR: https://git.openjdk.java.net/jdk/pull/2660 From pbansal at openjdk.java.net Sun Mar 14 11:13:07 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Sun, 14 Mar 2021 11:13:07 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: <60QaQ3ISOvoR5RMWU1hTSCsiBHfy7xU2QjvLzrGaSvA=.c02ab62e-5176-4015-a16c-849a71088452@github.com> References: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> <4SZRIR695DBooSWt-1aatGx-CKPy6EwuRpXS29A8wro=.4ba37fe2-6017-482f-83c4-33d7a11fc320@github.com> <60QaQ3ISOvoR5RMWU1hTSCsiBHfy7xU2QjvLzrGaSvA=.c02ab62e-5176-4015-a16c-849a71088452@github.com> Message-ID: On Fri, 12 Mar 2021 03:26:10 GMT, Sergey Bylokhov wrote: > > If you happen to have some idea about how can a user interact with Sliders or Spinners using JAWS, please let me know. I will definitely verify if the changes would be helpful for Windows. > > How the native applications works under JAWS? I tried running a Windows native settings app like "Display Settings" with JAWS. It has a Slider "Brightness". JAWS says same thing when the Slider was brought in focus like "To increase or decrease, use the arrow keys". When I press the arrow keys, the values change. But I don't know if the value changed because the Windows Native dialog handles the keys and changed the value, or JAWS consumed the event and then changed the value. It looks like the Dialog must have handled the keys as there are no special keys mentioned for JAWS to interact with the component like the VO. I am not sure how I can verify this on Windows native apps. I did try to run the JSpinner with JAWS and I see that if Java does not handle the keys, the value in Spinner does not change. This means JAWS does not interact with the component and the accessibility functionality was added for MacOS only. Same thing is being done for JSlider. ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From pbansal at openjdk.java.net Sun Mar 14 11:18:25 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Sun, 14 Mar 2021 11:18:25 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol [v2] In-Reply-To: References: Message-ID: > Create implementation of NSAccessibilitySlider protocol https://developer.apple.com/documentation/appkit/nsaccessibilityslider > > The implementation has the function performIncrement and performDecrement to increase/decrease the value of slider using the VoiceOver. To implement this functionality, I could think of following two ways. I have chosen the first one here though it is more intrusive. > 1. Make the AccessibleJSlider class implement the AccessibleAction interface. This makes AccessibleJSlider consistent with the AccessibleJSpinner class. It is more clear and the logic to increase/decrease Slider value can be changed easily. But this changes AccessibleJSlider class and will need a CSR. > 2. Get the current Accessible Value from the component and just increment/decrement it in SliderAccessibility.m class itself and then set the current accessible value fro there only. This will not need any changes in AccessibleJSlider class, but this does not look correct way and I have not used this. > > The changes can be easily tested by using a JSlider example, like the following example. VO should announce the correct the slider values. To change the slider values, use ctrl+opt+shift+down key to start interacting with the slider, then use ctrl+opt+up/down arrow keys to increment/decrement slider values. > > import javax.swing.JFrame; > import javax.swing.JSlider; > > public class JSliderDemo{ > public static void main(String[] args) throws Exception { > JFrame jframe = new JFrame("JSlider Demo"); > jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); > jframe.add(new JSlider()); > > jframe.setLocationRelativeTo(null); > jframe.pack(); > jframe.setVisible(true); > } > } Pankaj Bansal has updated the pull request incrementally with one additional commit since the last revision: increase initial capacity for rolesMap ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2874/files - new: https://git.openjdk.java.net/jdk/pull/2874/files/dac91ff1..a1944fee Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2874&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2874&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2874.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2874/head:pull/2874 PR: https://git.openjdk.java.net/jdk/pull/2874 From pbansal at openjdk.java.net Sun Mar 14 11:18:25 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Sun, 14 Mar 2021 11:18:25 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol [v2] In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 14:47:38 GMT, Pankaj Bansal wrote: >> src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/CommonComponentAccessibility.m line 59: >> >>> 57: [rolesMap setObject:@"RadiobuttonAccessibility" forKey:@"radiobutton"]; >>> 58: [rolesMap setObject:@"CheckboxAccessibility" forKey:@"checkbox"]; >>> 59: [rolesMap setObject:@"SliderAccessibility" forKey:@"slider"]; >> >> Shouldn't you also increase the rolesMap initial capacity? > >> Shouldn't you also increase the rolesMap initial capacity? > > ok, I will do that in next commit. Done ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From alanb at openjdk.java.net Sun Mar 14 12:09:05 2021 From: alanb at openjdk.java.net (Alan Bateman) Date: Sun, 14 Mar 2021 12:09:05 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations In-Reply-To: References: Message-ID: On Sat, 13 Mar 2021 00:43:33 GMT, Alexander Matveev wrote: >> implementation of >> JDK-8256145: JEP 398: Deprecate the Applet API for Removal > > Marked as reviewed by almatvee (Committer). Have you looked at narrowing the use of the SuppressWarnings to local variable declarations to avoid adding it to some of these methods? ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From pbansal at openjdk.java.net Sun Mar 14 17:32:07 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Sun, 14 Mar 2021 17:32:07 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> <8IiVqESA2inNmd8VD9dMWgBxSHXfBqd3RXfDMCVEjQI=.61290b1f-aa2b-4166-b8c0-6548b930b116@github.com> Message-ID: On Sat, 13 Mar 2021 01:57:53 GMT, Sergey Bylokhov wrote: >> This change looks fine, I was able to see the proper logs in the java_access_bridge.log, but I cannot find the logs from the windows_access_bridge.log. It seems unrelated to this fix. @pankaj-bansal please take a look at why the windows log might be missed if "JAVA_ACCESSBRIDGE_LOGDIR" is set. > > For the record: the jaws J2021.2102.34.400 was used for testing. @mrserb Did you close the JAWS after running the program. I have seen that the logs for windows_access_bridge are flushed only after the JAWS is closed. ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From vtewari at openjdk.java.net Sun Mar 14 17:48:07 2021 From: vtewari at openjdk.java.net (Vyom Tewari) Date: Sun, 14 Mar 2021 17:48:07 GMT Subject: RFR: 8263552: Use String.valueOf() for char-to-String conversion in ObjectStreamClass In-Reply-To: References: Message-ID: <7gdjb_onDfovaFwTFHONcf_r-zYx80Lp13JZmbjx0Gw=.0f0225b1-2fba-43ff-ae80-a754a62372c2@github.com> On Sat, 20 Feb 2021 12:17:32 GMT, ?????? ??????? wrote: > This is a very simple and trivial improvement about getting rid of pointless char wrapping into array LGTM ------------- Marked as reviewed by vtewari (Committer). PR: https://git.openjdk.java.net/jdk/pull/2660 From serb at openjdk.java.net Sun Mar 14 23:05:08 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Sun, 14 Mar 2021 23:05:08 GMT Subject: RFR: 8263136: C4530 was reported from VS 2019 at access bridge [v2] In-Reply-To: References: <9Jzp6b6MjrFSOBV1DePBT7BpVO460EH6BDxLzVc2x8E=.d6dd0334-5e7e-4493-beee-cbf9f61c062f@github.com> <8IiVqESA2inNmd8VD9dMWgBxSHXfBqd3RXfDMCVEjQI=.61290b1f-aa2b-4166-b8c0-6548b930b116@github.com> Message-ID: On Sun, 14 Mar 2021 17:27:58 GMT, Pankaj Bansal wrote: >> For the record: the jaws J2021.2102.34.400 was used for testing. > > @mrserb Did you close the JAWS after running the program. I have seen that the logs for windows_access_bridge are flushed only after the JAWS is closed. Nope! thank you for confirmation that win logs it works as well. ------------- PR: https://git.openjdk.java.net/jdk/pull/2859 From psadhukhan at openjdk.java.net Mon Mar 15 04:17:15 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Mon, 15 Mar 2021 04:17:15 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Fri, 12 Mar 2021 22:24:09 GMT, Sergey Bylokhov wrote: > > > Do we really want to specify this as a noop method? In this case, we will not be able to change this implementation in the future. I thought about it earlier but I raised this PR as I don't see this method was updated from inception so I was not sure if it will be in future and also since it already says "JComponent subclasses **must** override this method" so a noop default implementation will not be a problem, I guess. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Mon Mar 15 04:23:26 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Mon, 15 Mar 2021 04:23:26 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: > It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: javadoc change ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2955/files - new: https://git.openjdk.java.net/jdk/pull/2955/files/9a0b2751..2d5e9112 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2955.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2955/head:pull/2955 PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Mon Mar 15 04:23:27 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Mon, 15 Mar 2021 04:23:27 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Fri, 12 Mar 2021 21:36:58 GMT, Alexey Ivanov wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> javadoc change > > src/java.desktop/share/classes/javax/swing/JComponent.java line 659: > >> 657: >> 658: /** >> 659: * Resets the UI property to a value from the current look and feel. > > Shall it rather use plural? > Suggestion: > > * Resets the UI properties to values from the current look and feel. > There are usually several properties that get updated, *all the properties* in fact. I see that all subclass of JComponent implementing updateUI() cites this sentence so changing only here may not be proper unless we change it everywhere, so I guess let it be as it is. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Mon Mar 15 04:32:08 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Mon, 15 Mar 2021 04:32:08 GMT Subject: RFR: JDK-8263235 : sanity/client/SwingSet/src/ColorChooserDemoTest.java failed throwing java.lang.NoClassDefFoundError [v2] In-Reply-To: References: <7wHhDXuqX0oZMwq82WEmTlzRxsHYy7IBhsehPKFwtIo=.7565e4dc-175a-46b4-9cc7-dc3d4b23f240@github.com> Message-ID: On Fri, 12 Mar 2021 14:39:23 GMT, Amresh Sahu wrote: >> Added @build org.jemmy2ext.JemmyExt. > > Amresh Sahu has updated the pull request incrementally with one additional commit since the last revision: > > JDK-8263235:Added @build org.jemmy2ext.JemmyExt Marked as reviewed by psadhukhan (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2958 From psadhukhan at openjdk.java.net Mon Mar 15 06:57:24 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Mon, 15 Mar 2021 06:57:24 GMT Subject: RFR: 8263481: Specification of JComponent::setDefaultLocale doesn't mention that passing 'null' restores VM's default locale Message-ID: The current state of specification for https://docs.oracle.com/en/java/javase/15/docs/api/java.desktop/javax/swing/JComponent.html#setDefaultLocale(java.util.Locale) doesn't mention anything about passing 'null' as a new default locale. In fact for OpenJDK implementation passing 'null' restores the default VM's locale. This is now explicitly stated in javadoc. ------------- Commit messages: - 8263481: Specification of JComponent::setDefaultLocale doesn't mention that passing 'null' restores VM's default locale Changes: https://git.openjdk.java.net/jdk/pull/3003/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3003&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8263481 Stats: 52 lines in 2 files changed: 52 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jdk/pull/3003.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3003/head:pull/3003 PR: https://git.openjdk.java.net/jdk/pull/3003 From azvegint at openjdk.java.net Mon Mar 15 09:32:12 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Mon, 15 Mar 2021 09:32:12 GMT Subject: RFR: 8263552: Use String.valueOf() for char-to-String conversion in ObjectStreamClass In-Reply-To: References: Message-ID: On Sat, 20 Feb 2021 12:17:32 GMT, ?????? ??????? wrote: > This is a very simple and trivial improvement about getting rid of pointless char wrapping into array Marked as reviewed by azvegint (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2660 From aivanov at openjdk.java.net Mon Mar 15 10:48:10 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Mon, 15 Mar 2021 10:48:10 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Mon, 15 Mar 2021 04:23:26 GMT, Prasanta Sadhukhan wrote: >> It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > javadoc change Marked as reviewed by aivanov (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From aivanov at openjdk.java.net Mon Mar 15 10:48:11 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Mon, 15 Mar 2021 10:48:11 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Mon, 15 Mar 2021 04:17:51 GMT, Prasanta Sadhukhan wrote: >> src/java.desktop/share/classes/javax/swing/JComponent.java line 659: >> >>> 657: >>> 658: /** >>> 659: * Resets the UI property to a value from the current look and feel. >> >> Shall it rather use plural? >> Suggestion: >> >> * Resets the UI properties to values from the current look and feel. >> There are usually several properties that get updated, *all the properties* in fact. > > I see that all subclass of JComponent implementing updateUI() cites this sentence so changing only here may not be proper unless we change it everywhere, so I guess let it be as it is. Agreed. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From github.com+10835776+stsypanov at openjdk.java.net Mon Mar 15 10:54:07 2021 From: github.com+10835776+stsypanov at openjdk.java.net (=?UTF-8?B?0KHQtdGA0LPQtdC5?= =?UTF-8?B?IA==?= =?UTF-8?B?0KbRi9C/0LDQvdC+0LI=?=) Date: Mon, 15 Mar 2021 10:54:07 GMT Subject: RFR: 8263552: Use String.valueOf() for char-to-String conversions In-Reply-To: References: Message-ID: On Mon, 15 Mar 2021 10:51:08 GMT, Claes Redestad wrote: >> Marked as reviewed by azvegint (Reviewer). > > Ok if we change the summary to "Use String.valueOf() for char-to-String conversions"? @cl4es done ------------- PR: https://git.openjdk.java.net/jdk/pull/2660 From redestad at openjdk.java.net Mon Mar 15 10:54:07 2021 From: redestad at openjdk.java.net (Claes Redestad) Date: Mon, 15 Mar 2021 10:54:07 GMT Subject: RFR: 8263552: Use String.valueOf() for char-to-String conversions In-Reply-To: References: Message-ID: On Mon, 15 Mar 2021 09:29:00 GMT, Alexander Zvegintsev wrote: >> This is a very simple and trivial improvement about getting rid of pointless char wrapping into array > > Marked as reviewed by azvegint (Reviewer). Ok if we change the summary to "Use String.valueOf() for char-to-String conversions"? ------------- PR: https://git.openjdk.java.net/jdk/pull/2660 From chegar at openjdk.java.net Mon Mar 15 10:58:07 2021 From: chegar at openjdk.java.net (Chris Hegarty) Date: Mon, 15 Mar 2021 10:58:07 GMT Subject: RFR: 8263552: Use String.valueOf() for char-to-String conversions In-Reply-To: References: Message-ID: On Sat, 20 Feb 2021 12:17:32 GMT, ?????? ??????? wrote: > This is a very simple and trivial improvement about getting rid of pointless char wrapping into array Marked as reviewed by chegar (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2660 From redestad at openjdk.java.net Mon Mar 15 11:17:06 2021 From: redestad at openjdk.java.net (Claes Redestad) Date: Mon, 15 Mar 2021 11:17:06 GMT Subject: RFR: 8263552: Use String.valueOf() for char-to-String conversions In-Reply-To: References: Message-ID: On Mon, 15 Mar 2021 10:55:12 GMT, Chris Hegarty wrote: >> This is a very simple and trivial improvement about getting rid of pointless char wrapping into array > > Marked as reviewed by chegar (Reviewer). It seems the bots haven't seen that I changed the bug summary to match yet. ------------- PR: https://git.openjdk.java.net/jdk/pull/2660 From github.com+10835776+stsypanov at openjdk.java.net Mon Mar 15 11:17:06 2021 From: github.com+10835776+stsypanov at openjdk.java.net (=?UTF-8?B?0KHQtdGA0LPQtdC5?= =?UTF-8?B?IA==?= =?UTF-8?B?0KbRi9C/0LDQvdC+0LI=?=) Date: Mon, 15 Mar 2021 11:17:06 GMT Subject: RFR: 8263552: Use String.valueOf() for char-to-String conversions In-Reply-To: References: Message-ID: On Mon, 15 Mar 2021 11:11:21 GMT, Claes Redestad wrote: >> Marked as reviewed by chegar (Reviewer). > > It seems the bots haven't seen that I changed the bug summary to match yet. @cl4es could you try `/sponsor` again? I think this time it should be fine. ------------- PR: https://git.openjdk.java.net/jdk/pull/2660 From github.com+10835776+stsypanov at openjdk.java.net Mon Mar 15 11:22:11 2021 From: github.com+10835776+stsypanov at openjdk.java.net (=?UTF-8?B?0KHQtdGA0LPQtdC5?= =?UTF-8?B?IA==?= =?UTF-8?B?0KbRi9C/0LDQvdC+0LI=?=) Date: Mon, 15 Mar 2021 11:22:11 GMT Subject: Integrated: 8263552: Use String.valueOf() for char-to-String conversions In-Reply-To: References: Message-ID: On Sat, 20 Feb 2021 12:17:32 GMT, ?????? ??????? wrote: > This is a very simple and trivial improvement about getting rid of pointless char wrapping into array This pull request has now been integrated. Changeset: c0176c42 Author: Sergey Tsypanov Committer: Claes Redestad URL: https://git.openjdk.java.net/jdk/commit/c0176c42 Stats: 6 lines in 6 files changed: 0 ins; 0 del; 6 mod 8263552: Use String.valueOf() for char-to-String conversions Reviewed-by: redestad, vtewari, azvegint, chegar ------------- PR: https://git.openjdk.java.net/jdk/pull/2660 From serb at openjdk.java.net Mon Mar 15 17:40:06 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Mon, 15 Mar 2021 17:40:06 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Mon, 15 Mar 2021 10:44:51 GMT, Alexey Ivanov wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> javadoc change > > Marked as reviewed by aivanov (Reviewer). > I thought about it earlier but I raised this PR as I don't see this method was updated from inception so I was not sure if it will be in future and also since it already says "JComponent subclasses **must** override this method" so a noop default implementation will not be a problem, I guess. Based on the current spec we may add some kind of assertion that this method must not be called. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From serb at openjdk.java.net Mon Mar 15 17:40:10 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Mon, 15 Mar 2021 17:40:10 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Mon, 15 Mar 2021 04:23:26 GMT, Prasanta Sadhukhan wrote: >> It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > javadoc change src/java.desktop/share/classes/javax/swing/JComponent.java line 660: > 658: /** > 659: * Resets the UI property to a value from the current look and feel. > 660: * Since the default implementation of this method doesn't do anything, The reason why this method should be overridden is that the subclasses only can implement it properly, and it is not because the current method is empty. Probably we can move the new text to the @implnote tag? ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From aivanov at openjdk.java.net Mon Mar 15 18:09:20 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Mon, 15 Mar 2021 18:09:20 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Mon, 15 Mar 2021 17:37:07 GMT, Sergey Bylokhov wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> javadoc change > > src/java.desktop/share/classes/javax/swing/JComponent.java line 660: > >> 658: /** >> 659: * Resets the UI property to a value from the current look and feel. >> 660: * Since the default implementation of this method doesn't do anything, > > The reason why this method should be overridden is that the subclasses only can implement it properly, and it is not because the current method is empty. > > Probably we can move the new text to the @implnote tag? Yet specifying that this method is empty implies overridden methods do not need to call `super.updateUI()`. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From aivanov at openjdk.java.net Mon Mar 15 18:12:10 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Mon, 15 Mar 2021 18:12:10 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Mon, 15 Mar 2021 17:34:30 GMT, Sergey Bylokhov wrote: > > I thought about it earlier but I raised this PR as I don't see this method was updated from inception so I was not sure if it will be in future and also since it already says "JComponent subclasses **must** override this method" so a noop default implementation will not be a problem, I guess. > > Based on the current spec we may add some kind of assertion that this method must not be called. I'm afraid this can be interpreted in a wrong way: *never* call `JComponent.updateUI()`, which is not what we want to say, is it? ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From serb at openjdk.java.net Mon Mar 15 21:15:10 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Mon, 15 Mar 2021 21:15:10 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Mon, 15 Mar 2021 18:06:57 GMT, Alexey Ivanov wrote: >> src/java.desktop/share/classes/javax/swing/JComponent.java line 660: >> >>> 658: /** >>> 659: * Resets the UI property to a value from the current look and feel. >>> 660: * Since the default implementation of this method doesn't do anything, >> >> The reason why this method should be overridden is that the subclasses only can implement it properly, and it is not because the current method is empty. >> >> Probably we can move the new text to the @implnote tag? > > Yet specifying that this method is empty implies overridden methods do not need to call `super.updateUI()`. But probably it might be changed in the future? If for example, we will move some common functionality from the standard subclasses to this method. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From aivanov at openjdk.java.net Mon Mar 15 21:40:09 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Mon, 15 Mar 2021 21:40:09 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Mon, 15 Mar 2021 21:12:11 GMT, Sergey Bylokhov wrote: >> Yet specifying that this method is empty implies overridden methods do not need to call `super.updateUI()`. > > But probably it might be changed in the future? If for example, we will move some common functionality from the standard subclasses to this method. It hasn't changed over all these years? In addition to that, the specification says you *must* override and shows the example without calling `super.updateUI()`. My take is it's unlikely to change. Yet I understand your concern: Stating explicitly `JComponent.updateUI` is empty, there's no way back. So being cautious wouldn't hurt. From this point of view, `@implnote` still gives some flexibility rather than being cast in stone. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Tue Mar 16 04:22:27 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 16 Mar 2021 04:22:27 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v3] In-Reply-To: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: <9WVbrtv5baEH4JOvgvQLZkODDBRI2ajgS4V6_Zka9Hg=.066073da-b76f-470a-9386-d7b97d363216@github.com> > It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: added @implnote ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2955/files - new: https://git.openjdk.java.net/jdk/pull/2955/files/2d5e9112..a6484203 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=01-02 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2955.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2955/head:pull/2955 PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Tue Mar 16 04:27:06 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 16 Mar 2021 04:27:06 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Mon, 15 Mar 2021 21:35:23 GMT, Alexey Ivanov wrote: >> But probably it might be changed in the future? If for example, we will move some common functionality from the standard subclasses to this method. > > It hasn't changed over all these years? In addition to that, the specification says you *must* override and shows the example without calling `super.updateUI()`. > My take is it's unlikely to change. Yet I understand your concern: Stating explicitly `JComponent.updateUI` is empty means there's no way back. So being cautious wouldn't hurt. From this point of view, `@implnote` still gives some flexibility rather than being cast in stone. `@implnote` added ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From aivanov at openjdk.java.net Tue Mar 16 12:14:09 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Tue, 16 Mar 2021 12:14:09 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v3] In-Reply-To: <9WVbrtv5baEH4JOvgvQLZkODDBRI2ajgS4V6_Zka9Hg=.066073da-b76f-470a-9386-d7b97d363216@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> <9WVbrtv5baEH4JOvgvQLZkODDBRI2ajgS4V6_Zka9Hg=.066073da-b76f-470a-9386-d7b97d363216@github.com> Message-ID: <55Hw-ozFF1oDwP4-efljRKHVTTN1Muzk7SOw8o42Cs4=.4f9c2842-7468-4c5e-bdc0-12db118ad866@github.com> On Tue, 16 Mar 2021 04:22:27 GMT, Prasanta Sadhukhan wrote: >> It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > added @implnote Changes requested by aivanov (Reviewer). src/java.desktop/share/classes/javax/swing/JComponent.java line 660: > 658: /** > 659: * Resets the UI property to a value from the current look and feel. > 660: * @implnote Since the default implementation of this method doesn't do anything, Suggestion: * @implNote Since the default implementation of this method doesn't do anything, The correct tag is `@implNote` with capital N. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Tue Mar 16 12:25:34 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 16 Mar 2021 12:25:34 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v4] In-Reply-To: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: > It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Use @implNote ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2955/files - new: https://git.openjdk.java.net/jdk/pull/2955/files/a6484203..39c4a720 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=03 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=02-03 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2955.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2955/head:pull/2955 PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Tue Mar 16 12:25:35 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 16 Mar 2021 12:25:35 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v3] In-Reply-To: <55Hw-ozFF1oDwP4-efljRKHVTTN1Muzk7SOw8o42Cs4=.4f9c2842-7468-4c5e-bdc0-12db118ad866@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> <9WVbrtv5baEH4JOvgvQLZkODDBRI2ajgS4V6_Zka9Hg=.066073da-b76f-470a-9386-d7b97d363216@github.com> <55Hw-ozFF1oDwP4-efljRKHVTTN1Muzk7SOw8o42Cs4=.4f9c2842-7468-4c5e-bdc0-12db118ad866@github.com> Message-ID: On Tue, 16 Mar 2021 12:11:19 GMT, Alexey Ivanov wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> added @implnote > > src/java.desktop/share/classes/javax/swing/JComponent.java line 660: > >> 658: /** >> 659: * Resets the UI property to a value from the current look and feel. >> 660: * @implnote Since the default implementation of this method doesn't do anything, > > Suggestion: > > * @implNote Since the default implementation of this method doesn't do anything, > The correct tag is `@implNote` with capital N. It was suggested to use @implnote tag and I saw that couple of places in jdk repo, we used that in Unsafe.java and TrayIcon.java so I used that, although in majority of places, @implNote is used, so I thought maybe both can be used at our discretion. Anyway, will change to @implNote. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From aivanov at openjdk.java.net Tue Mar 16 12:25:36 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Tue, 16 Mar 2021 12:25:36 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Tue, 16 Mar 2021 04:24:14 GMT, Prasanta Sadhukhan wrote: >> It hasn't changed over all these years? In addition to that, the specification says you *must* override and shows the example without calling `super.updateUI()`. >> My take is it's unlikely to change. Yet I understand your concern: Stating explicitly `JComponent.updateUI` is empty means there's no way back. So being cautious wouldn't hurt. From this point of view, `@implnote` still gives some flexibility rather than being cast in stone. > > `@implnote` added It feels wrong with this `@implNote`. Subclasses *must still override* the default implementation. Should this statement be included in the regular spec text as it was before? Implementation note could say, ?The default implementation doesn't do anything.? Or alternatively, this change can be rejected at all, leaving the spec as it is now. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From aivanov at openjdk.java.net Tue Mar 16 12:29:11 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Tue, 16 Mar 2021 12:29:11 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v3] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> <9WVbrtv5baEH4JOvgvQLZkODDBRI2ajgS4V6_Zka9Hg=.066073da-b76f-470a-9386-d7b97d363216@github.com> <55Hw-ozFF1oDwP4-efljRKHVTTN1Muzk7SOw8o42Cs4=.4f9c2842-7468-4c5e-bdc0-12db118ad866@github.com> Message-ID: On Tue, 16 Mar 2021 12:17:49 GMT, Prasanta Sadhukhan wrote: >> src/java.desktop/share/classes/javax/swing/JComponent.java line 660: >> >>> 658: /** >>> 659: * Resets the UI property to a value from the current look and feel. >>> 660: * @implnote Since the default implementation of this method doesn't do anything, >> >> Suggestion: >> >> * @implNote Since the default implementation of this method doesn't do anything, >> The correct tag is `@implNote` with capital N. > > It was suggested to use @implnote tag and I saw that couple of places in jdk repo, we used that in Unsafe.java and TrayIcon.java so I used that, although in majority of places, @implNote is used, so I thought maybe both can be used at our discretion. > Anyway, will change to @implNote. I understand it. I just built the docs to see how it looks and the text after `@implnote` was missing ? it's absolutely wrong this way. With `@implNote`, the text is displayed below *Implementation Note:* sub-heading. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Tue Mar 16 12:43:06 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 16 Mar 2021 12:43:06 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v3] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> <9WVbrtv5baEH4JOvgvQLZkODDBRI2ajgS4V6_Zka9Hg=.066073da-b76f-470a-9386-d7b97d363216@github.com> <55Hw-ozFF1oDwP4-efljRKHVTTN1Muzk7SOw8o42Cs4=.4f9c2842-7468-4c5e-bdc0-12db118ad866@github.com> Message-ID: On Tue, 16 Mar 2021 12:26:24 GMT, Alexey Ivanov wrote: >> It was suggested to use @implnote tag and I saw that couple of places in jdk repo, we used that in Unsafe.java and TrayIcon.java so I used that, although in majority of places, @implNote is used, so I thought maybe both can be used at our discretion. >> Anyway, will change to @implNote. > > I understand it. I just built the docs to see how it looks and the text after `@implnote` was missing ? it's absolutely wrong this way. With `@implNote`, the text is displayed below *Implementation Note:* sub-heading. I can remove `Since` and have "@implNote The default implementation of this method doesn't do anything. leaving other sentence `JComponent subclasses must override this method` separate. I guess that will keep the spec same as before and also keep the submitter satisfied. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Tue Mar 16 12:56:19 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 16 Mar 2021 12:56:19 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v5] In-Reply-To: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: <4cngvXvMR-PITjQmCKTmekcbzO7wp29PKfnW8i4XGUM=.4718b2f6-e4c4-4304-a991-a28c3ef4a473@github.com> > It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: @implNote change ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2955/files - new: https://git.openjdk.java.net/jdk/pull/2955/files/39c4a720..50b997de Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=04 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=03-04 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2955.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2955/head:pull/2955 PR: https://git.openjdk.java.net/jdk/pull/2955 From serb at openjdk.java.net Wed Mar 17 01:51:10 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 17 Mar 2021 01:51:10 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: References: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> <4SZRIR695DBooSWt-1aatGx-CKPy6EwuRpXS29A8wro=.4ba37fe2-6017-482f-83c4-33d7a11fc320@github.com> <60QaQ3ISOvoR5RMWU1hTSCsiBHfy7xU2QjvLzrGaSvA=.c02ab62e-5176-4015-a16c-849a71088452@github.com> Message-ID: On Sun, 14 Mar 2021 11:10:09 GMT, Pankaj Bansal wrote: > It looks like the Dialog must have handled the keys as there are no special keys mentioned for JAWS to interact with the component like the VO Did you check this list of hotkeys? https://www.freedomscientific.com/training/jaws/hotkeys https://freedomscientific.github.io/VFO-standards-support/aria.html Something like: RIGHT ARROW and UP ARROW increase the value of the slider. LEFT ARROW and DOWN ARROW decrease the value of the slider. HOME and END move to the minimum and maximum values of the slider. PAGE UP and PAGE DOWN increment or decrement the slider by a given amount. ======================= My main point is that if we will change some shared code we should care about both supported platforms. ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From psadhukhan at openjdk.java.net Wed Mar 17 07:58:06 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 17 Mar 2021 07:58:06 GMT Subject: Integrated: 8263410: ListModel javadoc refers to non-existent interface In-Reply-To: References: Message-ID: On Thu, 11 Mar 2021 04:32:18 GMT, Prasanta Sadhukhan wrote: > ListModel class javadoc refers to ListDataModel interface but there is no ListDataModel interface. Rectified the anomaly. This pull request has now been integrated. Changeset: ec95a5c6 Author: Prasanta Sadhukhan URL: https://git.openjdk.java.net/jdk/commit/ec95a5c6 Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod 8263410: ListModel javadoc refers to non-existent interface Reviewed-by: azvegint, pbansal, aivanov ------------- PR: https://git.openjdk.java.net/jdk/pull/2931 From psadhukhan at openjdk.java.net Wed Mar 17 08:03:39 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 17 Mar 2021 08:03:39 GMT Subject: RFR: 8263481: Specification of JComponent::setDefaultLocale doesn't mention that passing 'null' restores VM's default locale [v2] In-Reply-To: References: Message-ID: > The current state of specification for > https://docs.oracle.com/en/java/javase/15/docs/api/java.desktop/javax/swing/JComponent.html#setDefaultLocale(java.util.Locale) > doesn't mention anything about passing 'null' as a new default locale. > > In fact for OpenJDK implementation passing 'null' restores the default VM's locale. > This is now explicitly stated in javadoc. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Test modification ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/3003/files - new: https://git.openjdk.java.net/jdk/pull/3003/files/acc270ea..d35284f6 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3003&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3003&range=00-01 Stats: 2 lines in 1 file changed: 0 ins; 2 del; 0 mod Patch: https://git.openjdk.java.net/jdk/pull/3003.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3003/head:pull/3003 PR: https://git.openjdk.java.net/jdk/pull/3003 From herrick at openjdk.java.net Wed Mar 17 15:35:49 2021 From: herrick at openjdk.java.net (Andy Herrick) Date: Wed, 17 Mar 2021 15:35:49 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations In-Reply-To: References: Message-ID: <4WfIqOQTCLxtbCQnD2xn4Doku9I1K5cnZ3FOv_JfeJQ=.09c24289-7e79-4592-9043-36b3b790701f@github.com> On Sun, 14 Mar 2021 12:06:08 GMT, Alan Bateman wrote: > the ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From herrick at openjdk.java.net Wed Mar 17 15:35:49 2021 From: herrick at openjdk.java.net (Andy Herrick) Date: Wed, 17 Mar 2021 15:35:49 GMT Subject: Withdrawn: 8189198: Add "forRemoval = true" to Applet API deprecations In-Reply-To: References: Message-ID: On Wed, 10 Mar 2021 18:33:37 GMT, Andy Herrick wrote: > implementation of > JDK-8256145: JEP 398: Deprecate the Applet API for Removal This pull request has been closed without being integrated. ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From herrick at openjdk.java.net Wed Mar 17 16:46:49 2021 From: herrick at openjdk.java.net (Andy Herrick) Date: Wed, 17 Mar 2021 16:46:49 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations In-Reply-To: References: Message-ID: On Sun, 14 Mar 2021 12:06:08 GMT, Alan Bateman wrote: > > > Have you looked at narrowing the use of the SuppressWarnings to local variable declarations to avoid adding it to some of these methods? in all cases either: - the class or method itself is being deprecated - the method takes a deprecated arg . - there is no local variable involved, such as testing if something is an instanceOf a class being deprecated, or calling a deprecated method. I cannot find any instances where the scope can be narrowed ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From alanb at openjdk.java.net Wed Mar 17 19:05:52 2021 From: alanb at openjdk.java.net (Alan Bateman) Date: Wed, 17 Mar 2021 19:05:52 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations In-Reply-To: References: Message-ID: On Wed, 17 Mar 2021 16:44:19 GMT, Andy Herrick wrote: > I cannot find any instances where the scope can be narrowed Are you about AquaInternalFrameUI.mouseRelased, BasicPopupMenuUI. stateChanged, and other non-trivial methods? ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From herrick at openjdk.java.net Wed Mar 17 20:35:54 2021 From: herrick at openjdk.java.net (Andy Herrick) Date: Wed, 17 Mar 2021 20:35:54 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations In-Reply-To: References: Message-ID: On Wed, 17 Mar 2021 19:02:39 GMT, Alan Bateman wrote: > > > > I cannot find any instances where the scope can be narrowed > > Are you about AquaInternalFrameUI.mouseRelased, BasicPopupMenuUI. stateChanged, and other non-trivial methods? These have the code pattern such as: } else if (c instanceof JApplet) { putting '@SuppressWarnings("removal")' before the declaration of 'c' does not help, because the code is not an assignment to 'c' ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From psadhukhan at openjdk.java.net Thu Mar 18 04:51:56 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Thu, 18 Mar 2021 04:51:56 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean Message-ID: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Default implementation of JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() returns null but it is not mentioned in the spec. It is now explicitly mentioned in the spec by @impNote tag. ------------- Commit messages: - 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean Changes: https://git.openjdk.java.net/jdk/pull/3064/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3064&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8263768 Stats: 4 lines in 1 file changed: 2 ins; 0 del; 2 mod Patch: https://git.openjdk.java.net/jdk/pull/3064.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3064/head:pull/3064 PR: https://git.openjdk.java.net/jdk/pull/3064 From aivanov at openjdk.java.net Thu Mar 18 10:55:39 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Thu, 18 Mar 2021 10:55:39 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Tue, 16 Mar 2021 12:22:24 GMT, Alexey Ivanov wrote: >> `@implnote` added > > It feels wrong with this `@implNote`. > > Subclasses *must still override* the default implementation. Should this statement be included in the regular spec text as it was before? Implementation note could say, ?The default implementation doesn't do anything.? > > Or alternatively, this change can be rejected at all, leaving the spec as it is now. > It feels wrong with this `@implNote`. > > Subclasses _must still override_ the default implementation. Should this statement be included in the regular spec text as it was before? Implementation note could say, ?The default implementation doesn't do anything.? > > Or alternatively, this change can be rejected at all, leaving the spec as it is now. To make it clearer, what I suggest is keeping the old text as it was and adding `@implNote` below like this: /** * Resets the UI property to a value from the current look and feel. * JComponent subclasses must override this method * like this: *

     *   public void updateUI() {
     *      setUI((SliderUI)UIManager.getUI(this);
     *   }
     *  
* * @implNote The default implementation of this method doesn't do anything. * * @see #setUI * @see UIManager#getLookAndFeel * @see UIManager#getUI */ This way, it's more *highlighted* that `JComponent` subclasses must override `updateUI` as shown for the correct behaviour. Then the implementation note will add the missing detail: The default implementation does nothing. So it's not necessary to call the super method from the overridden one. What do you, @prsadhuk and @mrserb, think? ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Thu Mar 18 10:59:41 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Thu, 18 Mar 2021 10:59:41 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v2] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Thu, 18 Mar 2021 10:52:34 GMT, Alexey Ivanov wrote: >> It feels wrong with this `@implNote`. >> >> Subclasses *must still override* the default implementation. Should this statement be included in the regular spec text as it was before? Implementation note could say, ?The default implementation doesn't do anything.? >> >> Or alternatively, this change can be rejected at all, leaving the spec as it is now. > >> It feels wrong with this `@implNote`. >> >> Subclasses _must still override_ the default implementation. Should this statement be included in the regular spec text as it was before? Implementation note could say, ?The default implementation doesn't do anything.? >> >> Or alternatively, this change can be rejected at all, leaving the spec as it is now. > > To make it clearer, what I suggest is keeping the old text as it was and adding `@implNote` below like this: > /** > * Resets the UI property to a value from the current look and feel. > * JComponent subclasses must override this method > * like this: > *
>      *   public void updateUI() {
>      *      setUI((SliderUI)UIManager.getUI(this);
>      *   }
>      *  
> * > * @implNote The default implementation of this method doesn't do anything. > * > * @see #setUI > * @see UIManager#getLookAndFeel > * @see UIManager#getUI > */ > > This way, it's more *highlighted* that `JComponent` subclasses must override `updateUI` as shown for the correct behaviour. Then the implementation note will add the missing detail: The default implementation does nothing. So it's not necessary to call the super method from the overridden one. > > What do you, @prsadhuk and @mrserb, think? OK. Seems fair enough for me. ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Thu Mar 18 11:05:55 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Thu, 18 Mar 2021 11:05:55 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v6] In-Reply-To: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: > It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. Prasanta Sadhukhan has updated the pull request incrementally with two additional commits since the last revision: - javadoc change - implNote change ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2955/files - new: https://git.openjdk.java.net/jdk/pull/2955/files/50b997de..5b15e87f Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=05 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=04-05 Stats: 3 lines in 1 file changed: 2 ins; 1 del; 0 mod Patch: https://git.openjdk.java.net/jdk/pull/2955.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2955/head:pull/2955 PR: https://git.openjdk.java.net/jdk/pull/2955 From aivanov at openjdk.java.net Thu Mar 18 11:09:39 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Thu, 18 Mar 2021 11:09:39 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v6] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Thu, 18 Mar 2021 11:05:55 GMT, Prasanta Sadhukhan wrote: >> It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. > > Prasanta Sadhukhan has updated the pull request incrementally with two additional commits since the last revision: > > - javadoc change > - implNote change Marked as reviewed by aivanov (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From trebari at openjdk.java.net Thu Mar 18 13:10:42 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Thu, 18 Mar 2021 13:10:42 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean In-Reply-To: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: On Thu, 18 Mar 2021 04:46:03 GMT, Prasanta Sadhukhan wrote: > Default implementation of JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() returns null but it is not mentioned in the spec. > It is now explicitly mentioned in the spec by @impNote tag. Marked as reviewed by trebari (Committer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3064 From aivanov at openjdk.java.net Thu Mar 18 22:19:39 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Thu, 18 Mar 2021 22:19:39 GMT Subject: RFR: 8263481: Specification of JComponent::setDefaultLocale doesn't mention that passing 'null' restores VM's default locale [v2] In-Reply-To: References: Message-ID: <-mFsKDI0yNsYS5snBu1gYkIQIQJHjezEWGtjlmJA2ts=.5a13a35a-c0f7-4632-a3ab-ea389cde2428@github.com> On Wed, 17 Mar 2021 08:03:39 GMT, Prasanta Sadhukhan wrote: >> The current state of specification for >> https://docs.oracle.com/en/java/javase/15/docs/api/java.desktop/javax/swing/JComponent.html#setDefaultLocale(java.util.Locale) >> doesn't mention anything about passing 'null' as a new default locale. >> >> In fact for OpenJDK implementation passing 'null' restores the default VM's locale. >> This is now explicitly stated in javadoc. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Test modification Marked as reviewed by aivanov (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3003 From aivanov at openjdk.java.net Thu Mar 18 22:23:37 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Thu, 18 Mar 2021 22:23:37 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean In-Reply-To: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: On Thu, 18 Mar 2021 04:46:03 GMT, Prasanta Sadhukhan wrote: > Default implementation of JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() returns null but it is not mentioned in the spec. > It is now explicitly mentioned in the spec by @impNote tag. Changes requested by aivanov (Reviewer). src/java.desktop/share/classes/javax/swing/JFormattedTextField.java line 1089: > 1087: > 1088: /** > 1089: * @implNote Default implementation returns null. I suggest moving `@implNote` to the end of the spec, otherwise the entire spec is the implementation note, which is wrong, isn't it? Suggestion: * @implNote The default implementation returns null. It requires the definite article. Both points above also apply to `getNavigationFilter` method below. ------------- PR: https://git.openjdk.java.net/jdk/pull/3064 From serb at openjdk.java.net Thu Mar 18 22:52:40 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Thu, 18 Mar 2021 22:52:40 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v6] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Thu, 18 Mar 2021 11:07:14 GMT, Alexey Ivanov wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with two additional commits since the last revision: >> >> - javadoc change >> - implNote change > > Marked as reviewed by aivanov (Reviewer). Do we need a CSR? ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Fri Mar 19 04:31:41 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Fri, 19 Mar 2021 04:31:41 GMT Subject: Integrated: 8263481: Specification of JComponent::setDefaultLocale doesn't mention that passing 'null' restores VM's default locale In-Reply-To: References: Message-ID: On Mon, 15 Mar 2021 06:52:15 GMT, Prasanta Sadhukhan wrote: > The current state of specification for > https://docs.oracle.com/en/java/javase/15/docs/api/java.desktop/javax/swing/JComponent.html#setDefaultLocale(java.util.Locale) > doesn't mention anything about passing 'null' as a new default locale. > > In fact for OpenJDK implementation passing 'null' restores the default VM's locale. > This is now explicitly stated in javadoc. This pull request has now been integrated. Changeset: d24e4cfe Author: Prasanta Sadhukhan URL: https://git.openjdk.java.net/jdk/commit/d24e4cfe Stats: 50 lines in 2 files changed: 50 ins; 0 del; 0 mod 8263481: Specification of JComponent::setDefaultLocale doesn't mention that passing 'null' restores VM's default locale Reviewed-by: aivanov ------------- PR: https://git.openjdk.java.net/jdk/pull/3003 From psadhukhan at openjdk.java.net Fri Mar 19 04:40:38 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Fri, 19 Mar 2021 04:40:38 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v6] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Thu, 18 Mar 2021 22:50:07 GMT, Sergey Bylokhov wrote: >> Marked as reviewed by aivanov (Reviewer). > > Do we need a CSR? I have added CSR just in case...https://bugs.openjdk.java.net/browse/JDK-8263845....please review ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Fri Mar 19 08:59:12 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Fri, 19 Mar 2021 08:59:12 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v2] In-Reply-To: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: > Default implementation of JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() returns null but it is not mentioned in the spec. > It is now explicitly mentioned in the spec by @impNote tag. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: @implNote change ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/3064/files - new: https://git.openjdk.java.net/jdk/pull/3064/files/e2b547b2..4ffa0d08 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3064&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3064&range=00-01 Stats: 6 lines in 1 file changed: 4 ins; 2 del; 0 mod Patch: https://git.openjdk.java.net/jdk/pull/3064.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3064/head:pull/3064 PR: https://git.openjdk.java.net/jdk/pull/3064 From aivanov at openjdk.java.net Fri Mar 19 11:07:40 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Fri, 19 Mar 2021 11:07:40 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v2] In-Reply-To: References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: On Fri, 19 Mar 2021 08:59:12 GMT, Prasanta Sadhukhan wrote: >> Default implementation of JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() returns null but it is not mentioned in the spec. >> It is now explicitly mentioned in the spec by @impNote tag. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > @implNote change Changes requested by aivanov (Reviewer). src/java.desktop/share/classes/javax/swing/JFormattedTextField.java line 1089: > 1087: > 1088: /** > 1089: * Subclass must override if you wish to provide a It think the original text was correct: Subclass was used as a verb in imperative. You have to *subclass* before you can override. src/java.desktop/share/classes/javax/swing/JFormattedTextField.java line 1108: > 1106: * the JFormattedTextField. > 1107: * > 1108: * @implNote The default implementation returns null Suggestion: * @implNote The default implementation returns null. Full stop for consistency. ------------- PR: https://git.openjdk.java.net/jdk/pull/3064 From psadhukhan at openjdk.java.net Fri Mar 19 11:15:03 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Fri, 19 Mar 2021 11:15:03 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v3] In-Reply-To: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: > Default implementation of JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() returns null but it is not mentioned in the spec. > It is now explicitly mentioned in the spec by @impNote tag. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: @implNote added ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/3064/files - new: https://git.openjdk.java.net/jdk/pull/3064/files/4ffa0d08..cea2f171 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3064&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3064&range=01-02 Stats: 3 lines in 1 file changed: 0 ins; 0 del; 3 mod Patch: https://git.openjdk.java.net/jdk/pull/3064.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3064/head:pull/3064 PR: https://git.openjdk.java.net/jdk/pull/3064 From aivanov at openjdk.java.net Fri Mar 19 11:21:38 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Fri, 19 Mar 2021 11:21:38 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v3] In-Reply-To: References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: <4Bc-fJWQEMC_co3jPFFn69o3LGujydfNjstWqlR7-qk=.f2da0b4d-0028-40b8-aab4-0a80c7717d19@github.com> On Fri, 19 Mar 2021 11:15:03 GMT, Prasanta Sadhukhan wrote: >> Default implementation of JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() returns null but it is not mentioned in the spec. >> It is now explicitly mentioned in the spec by @impNote tag. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > @implNote added Marked as reviewed by aivanov (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3064 From azvegint at openjdk.java.net Fri Mar 19 19:52:41 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Fri, 19 Mar 2021 19:52:41 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v3] In-Reply-To: References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: On Fri, 19 Mar 2021 11:15:03 GMT, Prasanta Sadhukhan wrote: >> Default implementation of JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() returns null but it is not mentioned in the spec. >> It is now explicitly mentioned in the spec by @impNote tag. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > @implNote added The bug's title is `JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean` The fix mentions what default implementation returns, but it looks like `what does it mean` is still not addressed. ------------- Marked as reviewed by azvegint (Reviewer). PR: https://git.openjdk.java.net/jdk/pull/3064 From serb at openjdk.java.net Fri Mar 19 22:43:40 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Fri, 19 Mar 2021 22:43:40 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v3] In-Reply-To: References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: On Fri, 19 Mar 2021 19:50:20 GMT, Alexander Zvegintsev wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> @implNote added > > The bug's title is `JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean` > The fix mentions what default implementation returns, but it looks like `what does it mean` is still not addressed. csr? ------------- PR: https://git.openjdk.java.net/jdk/pull/3064 From psadhukhan at openjdk.java.net Mon Mar 22 04:36:00 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Mon, 22 Mar 2021 04:36:00 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI doesn't mention that the original implementaiton does nothing [v7] In-Reply-To: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: > It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Modified as per Phil's comment ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2955/files - new: https://git.openjdk.java.net/jdk/pull/2955/files/5b15e87f..36cccdab Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=06 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=05-06 Stats: 6 lines in 1 file changed: 1 ins; 2 del; 3 mod Patch: https://git.openjdk.java.net/jdk/pull/2955.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2955/head:pull/2955 PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Mon Mar 22 05:01:43 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Mon, 22 Mar 2021 05:01:43 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v3] In-Reply-To: References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: On Fri, 19 Mar 2021 22:40:38 GMT, Sergey Bylokhov wrote: >> The bug's title is `JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean` >> The fix mentions what default implementation returns, but it looks like `what does it mean` is still not addressed. > > csr? Added CSR https://bugs.openjdk.java.net/browse/JDK-8263922...Please review.. ------------- PR: https://git.openjdk.java.net/jdk/pull/3064 From shade at openjdk.java.net Mon Mar 22 15:45:58 2021 From: shade at openjdk.java.net (Aleksey Shipilev) Date: Mon, 22 Mar 2021 15:45:58 GMT Subject: RFR: 8263977: GTK L&F: Cleanup duplicate checks in GTKStyle and GTKLookAndFeel Message-ID: SonarCloud reports a few minor problems in GTKStyle and GTKLookAndFeel: Correct one of the identical sub-expressions on both sides of operator "||". ------------- Commit messages: - 8263977: GTK L&F: Cleanup duplicate checks in GTKStyle and GTKLookAndFeel Changes: https://git.openjdk.java.net/jdk/pull/3121/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3121&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8263977 Stats: 3 lines in 2 files changed: 0 ins; 2 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/3121.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3121/head:pull/3121 PR: https://git.openjdk.java.net/jdk/pull/3121 From serb at openjdk.java.net Mon Mar 22 17:29:45 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Mon, 22 Mar 2021 17:29:45 GMT Subject: RFR: 8263977: GTK L&F: Cleanup duplicate checks in GTKStyle and GTKLookAndFeel In-Reply-To: References: Message-ID: On Mon, 22 Mar 2021 15:40:41 GMT, Aleksey Shipilev wrote: > SonarCloud reports a few minor problems in GTKStyle and GTKLookAndFeel: Correct one of the identical sub-expressions on both sides of operator "||". Looks fine, please update the dates. ------------- Marked as reviewed by serb (Reviewer). PR: https://git.openjdk.java.net/jdk/pull/3121 From pbansal at openjdk.java.net Mon Mar 22 17:35:47 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Mon, 22 Mar 2021 17:35:47 GMT Subject: RFR: 8263977: GTK L&F: Cleanup duplicate checks in GTKStyle and GTKLookAndFeel In-Reply-To: References: Message-ID: <-55PXhSDbQ2uuB8JJim6vhfx4pOH_SxS62wpmG0QHVc=.50f95742-c8d6-4ff8-81ce-72762817163d@github.com> On Mon, 22 Mar 2021 15:40:41 GMT, Aleksey Shipilev wrote: > SonarCloud reports a few minor problems in GTKStyle and GTKLookAndFeel: Correct one of the identical sub-expressions on both sides of operator "||". Marked as reviewed by pbansal (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3121 From kizune at openjdk.java.net Mon Mar 22 17:35:48 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Mon, 22 Mar 2021 17:35:48 GMT Subject: RFR: 8263977: GTK L&F: Cleanup duplicate checks in GTKStyle and GTKLookAndFeel In-Reply-To: References: Message-ID: On Mon, 22 Mar 2021 15:40:41 GMT, Aleksey Shipilev wrote: > SonarCloud reports a few minor problems in GTKStyle and GTKLookAndFeel: Correct one of the identical sub-expressions on both sides of operator "||". Marked as reviewed by kizune (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3121 From shade at openjdk.java.net Mon Mar 22 18:25:57 2021 From: shade at openjdk.java.net (Aleksey Shipilev) Date: Mon, 22 Mar 2021 18:25:57 GMT Subject: RFR: 8263977: GTK L&F: Cleanup duplicate checks in GTKStyle and GTKLookAndFeel [v2] In-Reply-To: References: Message-ID: > SonarCloud reports a few minor problems in GTKStyle and GTKLookAndFeel: Correct one of the identical sub-expressions on both sides of operator "||". Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision: Update copyrights ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/3121/files - new: https://git.openjdk.java.net/jdk/pull/3121/files/285cefc5..2c434a57 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3121&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3121&range=00-01 Stats: 2 lines in 2 files changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.java.net/jdk/pull/3121.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3121/head:pull/3121 PR: https://git.openjdk.java.net/jdk/pull/3121 From pbansal at openjdk.java.net Mon Mar 22 19:30:52 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Mon, 22 Mar 2021 19:30:52 GMT Subject: RFR: 8263977: GTK L&F: Cleanup duplicate checks in GTKStyle and GTKLookAndFeel [v2] In-Reply-To: References: Message-ID: On Mon, 22 Mar 2021 18:25:57 GMT, Aleksey Shipilev wrote: >> SonarCloud reports a few minor problems in GTKStyle and GTKLookAndFeel: Correct one of the identical sub-expressions on both sides of operator "||". > > Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision: > > Update copyrights Marked as reviewed by pbansal (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3121 From azvegint at openjdk.java.net Mon Mar 22 22:25:51 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Mon, 22 Mar 2021 22:25:51 GMT Subject: RFR: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() Message-ID: Looks like the original idea was to set `fallbacktext` on strings containing only spaces. I decided to remove the `trim()` call to keep the same behavior and to allows to set such meaningless space only titles/tooltips(same as on other platforms, maybe someone want empty label for some reason). ------------- Commit messages: - initial Changes: https://git.openjdk.java.net/jdk/pull/3136/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3136&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8263454 Stats: 3 lines in 1 file changed: 0 ins; 2 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/3136.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3136/head:pull/3136 PR: https://git.openjdk.java.net/jdk/pull/3136 From serb at openjdk.java.net Mon Mar 22 22:34:38 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Mon, 22 Mar 2021 22:34:38 GMT Subject: RFR: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() In-Reply-To: References: Message-ID: On Mon, 22 Mar 2021 22:19:18 GMT, Alexander Zvegintsev wrote: > Looks like the original idea was to set `fallbacktext` on strings containing only spaces. > > I decided to remove the `trim()` call to keep the same behavior and to allows to set such meaningless space only titles/tooltips(same as on other platforms, maybe someone want empty label for some reason). Marked as reviewed by serb (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3136 From pbansal at openjdk.java.net Tue Mar 23 04:55:40 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Tue, 23 Mar 2021 04:55:40 GMT Subject: RFR: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() In-Reply-To: References: Message-ID: <1XGtSANAL_K0KnV0pUsrIfNX8OlcX4DsPaZk7bMZR20=.c8ef8358-cd11-4684-94d4-ac5c742b7e7c@github.com> On Mon, 22 Mar 2021 22:19:18 GMT, Alexander Zvegintsev wrote: > Looks like the original idea was to set `fallbacktext` on strings containing only spaces. > > I decided to remove the `trim()` call to keep the same behavior and to allows to set such meaningless space only titles/tooltips(same as on other platforms, maybe someone want empty label for some reason). Marked as reviewed by pbansal (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3136 From psadhukhan at openjdk.java.net Tue Mar 23 05:03:41 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 23 Mar 2021 05:03:41 GMT Subject: RFR: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() In-Reply-To: References: Message-ID: On Mon, 22 Mar 2021 22:19:18 GMT, Alexander Zvegintsev wrote: > Looks like the original idea was to set `fallbacktext` on strings containing only spaces. > > I decided to remove the `trim()` call to keep the same behavior and to allows to set such meaningless space only titles/tooltips(same as on other platforms, maybe someone want empty label for some reason). src/java.desktop/macosx/classes/com/apple/laf/AquaFileChooserUI.java line 2059: > 2057: final String tooltipText = fc.getApproveButtonToolTipText(); > 2058: if (tooltipText != null) { > 2059: if (!tooltipText.isEmpty()) return tooltipText; In other L&F like Metal, Basic even empty text is allowed.. there's no check for isEmpty()....Should we do the same here too? ------------- PR: https://git.openjdk.java.net/jdk/pull/3136 From psadhukhan at openjdk.java.net Tue Mar 23 05:58:55 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 23 Mar 2021 05:58:55 GMT Subject: RFR: 8263766: Confusing specification of JEditorPaneAccessibleHypertextSupport constructor Message-ID: The constructor JEditorPaneAccessibleHypertextSupport javadoc wording is wrong. Rectified the anomaly. ------------- Commit messages: - 8263766: Confusing specification of JEditorPaneAccessibleHypertextSupport constructor Changes: https://git.openjdk.java.net/jdk/pull/3145/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3145&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8263766 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/3145.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3145/head:pull/3145 PR: https://git.openjdk.java.net/jdk/pull/3145 From psadhukhan at openjdk.java.net Tue Mar 23 06:15:55 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 23 Mar 2021 06:15:55 GMT Subject: RFR: 8263907: Specification of CellRendererPane::paintComponent(..Rectangle) should clearly mention which method it delegates the call to Message-ID: Specification for method javax/swing/CellRendererPane.html#paintComponent(java.awt.Graphics,java.awt.Component,java.awt.Container,java.awt.Rectangle) is not perfectly clear which method the call is delegated to. Updated spec to clarify. ------------- Commit messages: - 8263907: Specification of CellRendererPane::paintComponent(..Rectangle) should clearly mention which method it delegates the call to Changes: https://git.openjdk.java.net/jdk/pull/3146/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3146&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8263907 Stats: 2 lines in 1 file changed: 1 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/3146.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3146/head:pull/3146 PR: https://git.openjdk.java.net/jdk/pull/3146 From shade at openjdk.java.net Tue Mar 23 06:57:51 2021 From: shade at openjdk.java.net (Aleksey Shipilev) Date: Tue, 23 Mar 2021 06:57:51 GMT Subject: Integrated: 8263977: GTK L&F: Cleanup duplicate checks in GTKStyle and GTKLookAndFeel In-Reply-To: References: Message-ID: On Mon, 22 Mar 2021 15:40:41 GMT, Aleksey Shipilev wrote: > SonarCloud reports a few minor problems in GTKStyle and GTKLookAndFeel: Correct one of the identical sub-expressions on both sides of operator "||". This pull request has now been integrated. Changeset: df01b15b Author: Aleksey Shipilev URL: https://git.openjdk.java.net/jdk/commit/df01b15b Stats: 5 lines in 2 files changed: 0 ins; 2 del; 3 mod 8263977: GTK L&F: Cleanup duplicate checks in GTKStyle and GTKLookAndFeel Reviewed-by: serb, pbansal, kizune ------------- PR: https://git.openjdk.java.net/jdk/pull/3121 From kizune at openjdk.java.net Tue Mar 23 07:10:40 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Tue, 23 Mar 2021 07:10:40 GMT Subject: RFR: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() In-Reply-To: References: Message-ID: <3kLOV_bM-ShTLL-w3R1oySQvN7ws9je9UX8x0RSUrmk=.6be6e9cc-404c-43d8-91ae-6f97a2124076@github.com> On Mon, 22 Mar 2021 22:19:18 GMT, Alexander Zvegintsev wrote: > Looks like the original idea was to set `fallbacktext` on strings containing only spaces. > > I decided to remove the `trim()` call to keep the same behavior and to allows to set such meaningless space only titles/tooltips(same as on other platforms, maybe someone want empty label for some reason). Marked as reviewed by kizune (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3136 From psadhukhan at openjdk.java.net Tue Mar 23 10:32:07 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 23 Mar 2021 10:32:07 GMT Subject: RFR: 8263496: MetalHighContrastTheme.getControlHighlight cleanup Message-ID: SonarCloud reports the potential issue with MetalHighContrastTheme.getControlHighlight where `controlHighlight ` field is not used and the getControlHighlight() uses secondary field. public ColorUIResource getControlHighlight() { // This was super.getSecondary3(); return secondary2; } Removed the unused field. ------------- Commit messages: - 8263496: MetalHighContrastTheme.getControlHighlight cleanup Changes: https://git.openjdk.java.net/jdk/pull/3149/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3149&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8263496 Stats: 2 lines in 1 file changed: 0 ins; 2 del; 0 mod Patch: https://git.openjdk.java.net/jdk/pull/3149.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3149/head:pull/3149 PR: https://git.openjdk.java.net/jdk/pull/3149 From azvegint at openjdk.java.net Tue Mar 23 10:38:40 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Tue, 23 Mar 2021 10:38:40 GMT Subject: RFR: 8263766: Confusing specification of JEditorPaneAccessibleHypertextSupport constructor In-Reply-To: References: Message-ID: On Tue, 23 Mar 2021 05:53:30 GMT, Prasanta Sadhukhan wrote: > The constructor JEditorPaneAccessibleHypertextSupport javadoc wording is wrong. Rectified the anomaly. Marked as reviewed by azvegint (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3145 From pbansal at openjdk.java.net Tue Mar 23 10:42:39 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Tue, 23 Mar 2021 10:42:39 GMT Subject: RFR: 8263766: Confusing specification of JEditorPaneAccessibleHypertextSupport constructor In-Reply-To: References: Message-ID: On Tue, 23 Mar 2021 05:53:30 GMT, Prasanta Sadhukhan wrote: > The constructor JEditorPaneAccessibleHypertextSupport javadoc wording is wrong. Rectified the anomaly. Marked as reviewed by pbansal (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3145 From psadhukhan at openjdk.java.net Tue Mar 23 12:18:39 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Tue, 23 Mar 2021 12:18:39 GMT Subject: Integrated: 8263766: Confusing specification of JEditorPaneAccessibleHypertextSupport constructor In-Reply-To: References: Message-ID: On Tue, 23 Mar 2021 05:53:30 GMT, Prasanta Sadhukhan wrote: > The constructor JEditorPaneAccessibleHypertextSupport javadoc wording is wrong. Rectified the anomaly. This pull request has now been integrated. Changeset: 8c1ab38e Author: Prasanta Sadhukhan URL: https://git.openjdk.java.net/jdk/commit/8c1ab38e Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod 8263766: Confusing specification of JEditorPaneAccessibleHypertextSupport constructor Reviewed-by: azvegint, pbansal ------------- PR: https://git.openjdk.java.net/jdk/pull/3145 From azvegint at openjdk.java.net Tue Mar 23 14:55:58 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Tue, 23 Mar 2021 14:55:58 GMT Subject: RFR: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() [v2] In-Reply-To: References: Message-ID: > Looks like the original idea was to set `fallbacktext` on strings containing only spaces. > > I decided to remove the `trim()` call to keep the same behavior and to allows to set such meaningless space only titles/tooltips(same as on other platforms, maybe someone want empty label for some reason). Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: allow empty text ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/3136/files - new: https://git.openjdk.java.net/jdk/pull/3136/files/06c5322d..9e4f2a35 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3136&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3136&range=00-01 Stats: 8 lines in 1 file changed: 0 ins; 2 del; 6 mod Patch: https://git.openjdk.java.net/jdk/pull/3136.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3136/head:pull/3136 PR: https://git.openjdk.java.net/jdk/pull/3136 From azvegint at openjdk.java.net Tue Mar 23 15:36:43 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Tue, 23 Mar 2021 15:36:43 GMT Subject: RFR: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() [v2] In-Reply-To: References: Message-ID: On Tue, 23 Mar 2021 05:00:45 GMT, Prasanta Sadhukhan wrote: >> Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: >> >> allow empty text > > src/java.desktop/macosx/classes/com/apple/laf/AquaFileChooserUI.java line 2059: > >> 2057: final String tooltipText = fc.getApproveButtonToolTipText(); >> 2058: if (tooltipText != null) { >> 2059: if (!tooltipText.isEmpty()) return tooltipText; > > In other L&F like Metal, Basic even empty text is allowed.. there's no check for isEmpty()....Should we do the same here too? Yes, I think it would be better to allow to set empty text to conform with other LaF behavior. Also `JFileChooser.getApproveButtonText()` and `JFileChooser.getApproveButtonToolTipText()` will now return correct values for empty strings. e.g. before the fix if we call `setApproveButtonText("")` subsequent call to `getApproveButtonText()` will return passed string, but in fact fallback string is used. I've also labeled the issue with `noreg-hard`. ------------- PR: https://git.openjdk.java.net/jdk/pull/3136 From serb at openjdk.java.net Tue Mar 23 17:33:43 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Tue, 23 Mar 2021 17:33:43 GMT Subject: RFR: 8263766: Confusing specification of JEditorPaneAccessibleHypertextSupport constructor In-Reply-To: References: Message-ID: On Tue, 23 Mar 2021 10:39:58 GMT, Pankaj Bansal wrote: >> The constructor JEditorPaneAccessibleHypertextSupport javadoc wording is wrong. Rectified the anomaly. > > Marked as reviewed by pbansal (Reviewer). where is a csr? ------------- PR: https://git.openjdk.java.net/jdk/pull/3145 From serb at openjdk.java.net Tue Mar 23 22:16:41 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Tue, 23 Mar 2021 22:16:41 GMT Subject: RFR: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() [v2] In-Reply-To: References: Message-ID: <0V3Yd3Cb5a2EaEYVCV_ilvA-aOOyP36hczjCH0qgUe4=.a7dabd86-6d32-4b63-8406-d28781d53742@github.com> On Tue, 23 Mar 2021 15:33:43 GMT, Alexander Zvegintsev wrote: >> src/java.desktop/macosx/classes/com/apple/laf/AquaFileChooserUI.java line 2059: >> >>> 2057: final String tooltipText = fc.getApproveButtonToolTipText(); >>> 2058: if (tooltipText != null) { >>> 2059: if (!tooltipText.isEmpty()) return tooltipText; >> >> In other L&F like Metal, Basic even empty text is allowed.. there's no check for isEmpty()....Should we do the same here too? > > Yes, I think it would be better to allow to set empty text to conform with other LaF behavior. > > Also `JFileChooser.getApproveButtonText()` and `JFileChooser.getApproveButtonToolTipText()` will now return correct values for empty strings. > e.g. before the fix if we call `setApproveButtonText("")` subsequent call to `getApproveButtonText()` will return passed string, but in fact fallback string is used. > > I've also labeled the issue with `noreg-hard`. Is it possible to set an empty label in the native file chooser on macOS? ------------- PR: https://git.openjdk.java.net/jdk/pull/3136 From psadhukhan at openjdk.java.net Wed Mar 24 04:22:56 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 24 Mar 2021 04:22:56 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI should document that the default implementation does nothing [v8] In-Reply-To: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: > It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Add @implSpec as per JoeDarcy's recommendation ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2955/files - new: https://git.openjdk.java.net/jdk/pull/2955/files/36cccdab..ec7755a4 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=07 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=06-07 Stats: 4 lines in 1 file changed: 2 ins; 0 del; 2 mod Patch: https://git.openjdk.java.net/jdk/pull/2955.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2955/head:pull/2955 PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Wed Mar 24 04:32:01 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 24 Mar 2021 04:32:01 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v4] In-Reply-To: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: > Default implementation of JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() returns null but it is not mentioned in the spec. > It is now explicitly mentioned in the spec by @impNote tag. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Add @implSpec as per JoeDarcy's recommendation ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/3064/files - new: https://git.openjdk.java.net/jdk/pull/3064/files/cea2f171..0fdd15f4 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3064&range=03 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3064&range=02-03 Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.java.net/jdk/pull/3064.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3064/head:pull/3064 PR: https://git.openjdk.java.net/jdk/pull/3064 From trebari at openjdk.java.net Wed Mar 24 06:22:57 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Wed, 24 Mar 2021 06:22:57 GMT Subject: RFR: 8253266 : JList and JTable constructors should clear OPAQUE_SET before calling updateUI Message-ID: <0xQaEjHSESc7X1yaj1XWaOXBSyQDQgD1Jd6bkJbBGGw=.30558ebd-a585-4204-a501-b23d41249573@github.com> Hi All, Please review the following fix for jdk17. Issue : LookAndFeel.installProperty(list, "opaque", false) is not able to set the opaque property for JList and JTable. LookAndFeel.installProperty calls the setUIProperty, and setUIProperty checks for OPAQUE_SET to change the opaque property as requested by the client. OPAQUE_SET is always set to true when there is call to setOpaque(boolean).So when the constructor calls setOpaque(true) OPAQUE_SET is set to true and wont allow the setUIProperty to change the opaque property. installProperty should work as the opaque property is not set by the client. Fix. Fix is to remove the call to the setOpaque() from the constructor of JList and JTable. This will allow the client to change the opaque property calling LookAndFeel.installProperty() when the property is already not set. Test : Added a test to check the same. Also tested internal tests which all are passing. Link is in JBS. ------------- Commit messages: - intial changes Changes: https://git.openjdk.java.net/jdk/pull/3167/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3167&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8253266 Stats: 83 lines in 3 files changed: 81 ins; 2 del; 0 mod Patch: https://git.openjdk.java.net/jdk/pull/3167.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3167/head:pull/3167 PR: https://git.openjdk.java.net/jdk/pull/3167 From trebari at openjdk.java.net Wed Mar 24 06:37:39 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Wed, 24 Mar 2021 06:37:39 GMT Subject: RFR: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() [v2] In-Reply-To: References: Message-ID: On Tue, 23 Mar 2021 14:55:58 GMT, Alexander Zvegintsev wrote: >> Looks like the original idea was to set `fallbacktext` on strings containing only spaces. >> >> I decided to remove the `trim()` call to keep the same behavior and to allows to set such meaningless space only titles/tooltips(same as on other platforms, maybe someone want empty label for some reason). > > Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: > > allow empty text Marked as reviewed by trebari (Committer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3136 From psadhukhan at openjdk.java.net Wed Mar 24 08:30:41 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 24 Mar 2021 08:30:41 GMT Subject: RFR: 8253266 : JList and JTable constructors should clear OPAQUE_SET before calling updateUI In-Reply-To: <0xQaEjHSESc7X1yaj1XWaOXBSyQDQgD1Jd6bkJbBGGw=.30558ebd-a585-4204-a501-b23d41249573@github.com> References: <0xQaEjHSESc7X1yaj1XWaOXBSyQDQgD1Jd6bkJbBGGw=.30558ebd-a585-4204-a501-b23d41249573@github.com> Message-ID: On Wed, 24 Mar 2021 06:17:04 GMT, Tejpal Rebari wrote: > Hi All, > Please review the following fix for jdk17. > > Issue : LookAndFeel.installProperty(list, "opaque", false) is not able to set the opaque property for JList and JTable. > LookAndFeel.installProperty calls the setUIProperty, and setUIProperty checks for OPAQUE_SET to change the opaque property as requested by the client. > OPAQUE_SET is always set to true when there is call to setOpaque(boolean).So when the constructor calls setOpaque(true) OPAQUE_SET is set to true and wont allow the setUIProperty to change the opaque property. > installProperty should work as the opaque property is not set by the client. > > Fix. Fix is to remove the call to the setOpaque() from the constructor of JList and JTable. This will allow the client to change the opaque property calling LookAndFeel.installProperty() when the property is already not set. > > Test : Added a test to check the same. Also tested internal tests which all are passing. > Link is in JBS. I am not sure if this is the correct fix, as then we would have to remove setOpaque call for JTree, JToolTip, JRootPane etc where we might face same installProperty issue. Also, if we have to change this, we then need to change "autoScrolls" property too which is set in this 2 component and setUIProperty() can change those too. Probably, we need to check if the value to be set is different in setUIProperty and then set it or override setUIProperty per component basis (as it is done for JTable) and then not check for OPAQUE_SET flag for opaque property accordingly. ------------- PR: https://git.openjdk.java.net/jdk/pull/3167 From azvegint at openjdk.java.net Wed Mar 24 11:15:40 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Wed, 24 Mar 2021 11:15:40 GMT Subject: RFR: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() [v2] In-Reply-To: <0V3Yd3Cb5a2EaEYVCV_ilvA-aOOyP36hczjCH0qgUe4=.a7dabd86-6d32-4b63-8406-d28781d53742@github.com> References: <0V3Yd3Cb5a2EaEYVCV_ilvA-aOOyP36hczjCH0qgUe4=.a7dabd86-6d32-4b63-8406-d28781d53742@github.com> Message-ID: <4NaDfuDk_bN7C4FQe7oxotqd5k3Vq2igTpNsUKBu_3k=.ac588d55-b0e3-4ad4-b969-3805727db448@github.com> On Tue, 23 Mar 2021 22:13:21 GMT, Sergey Bylokhov wrote: >> Yes, I think it would be better to allow to set empty text to conform with other LaF behavior. >> >> Also `JFileChooser.getApproveButtonText()` and `JFileChooser.getApproveButtonToolTipText()` will now return correct values for empty strings. >> e.g. before the fix if we call `setApproveButtonText("")` subsequent call to `getApproveButtonText()` will return passed string, but in fact fallback string is used. >> >> I've also labeled the issue with `noreg-hard`. > > Is it possible to set an empty label in the native file chooser on macOS? Yes, and it looks the same as the one with `" "` label. image ------------- PR: https://git.openjdk.java.net/jdk/pull/3136 From psadhukhan at openjdk.java.net Wed Mar 24 11:26:41 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Wed, 24 Mar 2021 11:26:41 GMT Subject: RFR: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() [v2] In-Reply-To: References: Message-ID: On Tue, 23 Mar 2021 14:55:58 GMT, Alexander Zvegintsev wrote: >> Looks like the original idea was to set `fallbacktext` on strings containing only spaces. >> >> I decided to remove the `trim()` call to keep the same behavior and to allows to set such meaningless space only titles/tooltips(same as on other platforms, maybe someone want empty label for some reason). > > Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: > > allow empty text Marked as reviewed by psadhukhan (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3136 From azvegint at openjdk.java.net Wed Mar 24 17:56:45 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Wed, 24 Mar 2021 17:56:45 GMT Subject: RFR: 8263496: MetalHighContrastTheme.getControlHighlight cleanup In-Reply-To: References: Message-ID: On Tue, 23 Mar 2021 10:26:42 GMT, Prasanta Sadhukhan wrote: > SonarCloud reports the potential issue with MetalHighContrastTheme.getControlHighlight where `controlHighlight ` field is not used and the getControlHighlight() uses secondary field. > public ColorUIResource getControlHighlight() { > // This was super.getSecondary3(); > return secondary2; > } > Removed the unused field. src/java.desktop/share/classes/javax/swing/plaf/metal/MetalHighContrastTheme.java line 55: > 53: 255, 255, 255); > 54: private static final ColorUIResource controlHighlight = new > 55: ColorUIResource(102, 102, 102); I didn't check it on Windows(AFAICS it is used for Windows only), but I've done a quick check how it looks on Linux with both colors. Using `controlHighlight` in `getControlHighlight()`: ![using controlHighlight](https://user-images.githubusercontent.com/77687766/112357602-bf00dd80-8ce0-11eb-9a8d-0faeb6d1940b.png) Using `secondary2` in `getControlHighlight()`: ![using secondary2](https://user-images.githubusercontent.com/77687766/112357736-db9d1580-8ce0-11eb-8e1a-527ec327874f.png) And it seems that the option with unused `controlHighlight` color is more fits the definition of high contrast. Have you checked why its usage was removed? ------------- PR: https://git.openjdk.java.net/jdk/pull/3149 From aivanov at openjdk.java.net Wed Mar 24 19:57:40 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Wed, 24 Mar 2021 19:57:40 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI should document that the default implementation does nothing [v8] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Wed, 24 Mar 2021 04:22:56 GMT, Prasanta Sadhukhan wrote: >> It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Add @implSpec as per JoeDarcy's recommendation Marked as reviewed by aivanov (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From aivanov at openjdk.java.net Wed Mar 24 20:04:40 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Wed, 24 Mar 2021 20:04:40 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v4] In-Reply-To: References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: On Wed, 24 Mar 2021 04:32:01 GMT, Prasanta Sadhukhan wrote: >> Default implementation of JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() returns null but it is not mentioned in the spec. >> It is now explicitly mentioned in the spec by @impNote tag. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Add @implSpec as per JoeDarcy's recommendation Marked as reviewed by aivanov (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3064 From prr at openjdk.java.net Wed Mar 24 20:10:42 2021 From: prr at openjdk.java.net (Phil Race) Date: Wed, 24 Mar 2021 20:10:42 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI should document that the default implementation does nothing [v8] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: <64rUDtNqIIkh9uKfu0MmrQxqd13gJGvLtBf-fsz59o4=.f0a4a2c0-1a05-4cc5-9323-c4061b4bc63c@github.com> On Wed, 24 Mar 2021 04:22:56 GMT, Prasanta Sadhukhan wrote: >> It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Add @implSpec as per JoeDarcy's recommendation src/java.desktop/share/classes/javax/swing/JComponent.java line 670: > 668: * > 669: * @implSpec The default implementation of this method doesn't do anything. > 670: * I prefer "does nothing" ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From aivanov at openjdk.java.net Wed Mar 24 20:12:41 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Wed, 24 Mar 2021 20:12:41 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v4] In-Reply-To: References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: On Wed, 24 Mar 2021 20:01:25 GMT, Alexey Ivanov wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> Add @implSpec as per JoeDarcy's recommendation > > Marked as reviewed by aivanov (Reviewer). > csr? For my own clarification, does any change to the javadoc require a CSR? ------------- PR: https://git.openjdk.java.net/jdk/pull/3064 From serb at openjdk.java.net Wed Mar 24 20:12:41 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 24 Mar 2021 20:12:41 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v4] In-Reply-To: References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: On Wed, 24 Mar 2021 20:07:48 GMT, Alexey Ivanov wrote: > For my own clarification, does any change to the javadoc require a CSR? Any changes which add the new testable statements. Actually most change except typos/renames/format. ------------- PR: https://git.openjdk.java.net/jdk/pull/3064 From serb at openjdk.java.net Wed Mar 24 20:15:40 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 24 Mar 2021 20:15:40 GMT Subject: RFR: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() [v2] In-Reply-To: References: Message-ID: On Tue, 23 Mar 2021 14:55:58 GMT, Alexander Zvegintsev wrote: >> Looks like the original idea was to set `fallbacktext` on strings containing only spaces. >> >> I decided to remove the `trim()` call to keep the same behavior and to allows to set such meaningless space only titles/tooltips(same as on other platforms, maybe someone want empty label for some reason). > > Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: > > allow empty text Marked as reviewed by serb (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3136 From aivanov at openjdk.java.net Wed Mar 24 20:19:39 2021 From: aivanov at openjdk.java.net (Alexey Ivanov) Date: Wed, 24 Mar 2021 20:19:39 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v4] In-Reply-To: References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: <_eGfAqvYAV9D1A2ghgqDhOJKdEGw0fzhVdgO1ARyKnM=.8adde3d8-9df6-4167-b502-49c8c247dd04@github.com> On Wed, 24 Mar 2021 20:10:04 GMT, Sergey Bylokhov wrote: > > For my own clarification, does any change to the javadoc require a CSR? > > Any changes which add the new testable statements. Actually most change except typos/renames/format. Thank you. ------------- PR: https://git.openjdk.java.net/jdk/pull/3064 From darcy at openjdk.java.net Thu Mar 25 00:42:43 2021 From: darcy at openjdk.java.net (Joe Darcy) Date: Thu, 25 Mar 2021 00:42:43 GMT Subject: RFR: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean [v4] In-Reply-To: References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: <0bwLPzYWzn4TC98rX0pJbuaunqCoLDCRgC8soUr6vQo=.cbfc2c82-0ad2-4550-82cc-674f83472715@github.com> On Wed, 24 Mar 2021 04:32:01 GMT, Prasanta Sadhukhan wrote: >> Default implementation of JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() returns null but it is not mentioned in the spec. >> It is now explicitly mentioned in the spec by @impNote tag. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Add @implSpec as per JoeDarcy's recommendation Marked as reviewed by darcy (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3064 From darcy at openjdk.java.net Thu Mar 25 00:44:40 2021 From: darcy at openjdk.java.net (Joe Darcy) Date: Thu, 25 Mar 2021 00:44:40 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI should document that the default implementation does nothing [v8] In-Reply-To: References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Wed, 24 Mar 2021 04:22:56 GMT, Prasanta Sadhukhan wrote: >> It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Add @implSpec as per JoeDarcy's recommendation Marked as reviewed by darcy (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Thu Mar 25 04:09:07 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Thu, 25 Mar 2021 04:09:07 GMT Subject: RFR: 8263472: Specification of JComponent::updateUI should document that the default implementation does nothing [v9] In-Reply-To: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: > It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: javadoc change ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2955/files - new: https://git.openjdk.java.net/jdk/pull/2955/files/ec7755a4..f48a043c Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=08 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2955&range=07-08 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/2955.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2955/head:pull/2955 PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Thu Mar 25 04:10:43 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Thu, 25 Mar 2021 04:10:43 GMT Subject: Integrated: 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean In-Reply-To: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> References: <2AnuIGqLl43fddio2YRmB3os98OGVUh5F7vuaSjKB_c=.2932ec8c-9ee9-4999-ac20-0eecda62458d@github.com> Message-ID: <31Cy6cAMHmt1YGazGjo5yFSvhQxY4yj5ctSFJnInu4Y=.644a1499-4fca-48d2-81a6-00c6f8bd8cd4@github.com> On Thu, 18 Mar 2021 04:46:03 GMT, Prasanta Sadhukhan wrote: > Default implementation of JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() returns null but it is not mentioned in the spec. > It is now explicitly mentioned in the spec by @impNote tag. This pull request has now been integrated. Changeset: 3fcb499c Author: Prasanta Sadhukhan URL: https://git.openjdk.java.net/jdk/commit/3fcb499c Stats: 4 lines in 1 file changed: 4 ins; 0 del; 0 mod 8263768: JFormattedTextField.AbstractFormatter.getDocumentFilter()/getNavigationFilter() spec doesn't mention what the default impls return and what does it mean Reviewed-by: trebari, aivanov, azvegint, darcy ------------- PR: https://git.openjdk.java.net/jdk/pull/3064 From psadhukhan at openjdk.java.net Thu Mar 25 04:16:47 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Thu, 25 Mar 2021 04:16:47 GMT Subject: RFR: 8263496: MetalHighContrastTheme.getControlHighlight cleanup In-Reply-To: References: Message-ID: On Wed, 24 Mar 2021 17:51:44 GMT, Alexander Zvegintsev wrote: >> SonarCloud reports the potential issue with MetalHighContrastTheme.getControlHighlight where `controlHighlight ` field is not used and the getControlHighlight() uses secondary field. >> public ColorUIResource getControlHighlight() { >> // This was super.getSecondary3(); >> return secondary2; >> } >> Removed the unused field. > > src/java.desktop/share/classes/javax/swing/plaf/metal/MetalHighContrastTheme.java line 55: > >> 53: 255, 255, 255); >> 54: private static final ColorUIResource controlHighlight = new >> 55: ColorUIResource(102, 102, 102); > > I didn't check it on Windows(AFAICS it is used for Windows only), but I've done a quick check how it looks on Linux with both colors. > > Using `controlHighlight` in `getControlHighlight()`: > ![using controlHighlight](https://user-images.githubusercontent.com/77687766/112357602-bf00dd80-8ce0-11eb-9a8d-0faeb6d1940b.png) > > Using `secondary2` in `getControlHighlight()`: > ![using secondary2](https://user-images.githubusercontent.com/77687766/112357736-db9d1580-8ce0-11eb-8e1a-527ec327874f.png) > > And it seems that the option with unused `controlHighlight` color is more fits the definition of high contrast. > > Have you checked why its usage was removed? As far I see in the history of this file, it was `secondary2` that was used from beginning, so I kept it and removed the unused. ------------- PR: https://git.openjdk.java.net/jdk/pull/3149 From trebari at openjdk.java.net Thu Mar 25 06:36:40 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Thu, 25 Mar 2021 06:36:40 GMT Subject: RFR: 8253266 : JList and JTable constructors should clear OPAQUE_SET before calling updateUI In-Reply-To: References: <0xQaEjHSESc7X1yaj1XWaOXBSyQDQgD1Jd6bkJbBGGw=.30558ebd-a585-4204-a501-b23d41249573@github.com> Message-ID: On Wed, 24 Mar 2021 08:27:40 GMT, Prasanta Sadhukhan wrote: > I am not sure if this is the correct fix, as then we would have to remove setOpaque call for JTree, JToolTip, JRootPane etc where we might face same installProperty issue. Yes we face the same issue in JTree, JToolTip, and JViewport , but many of the components do not have this problem like JButton JRootPane , JCheckbox, JInternalFrame, JMenuItem, JCheckBoxMenuItem, JPopupMenu, JMenu ..etc We can fix the issue with JTree, JTooltip and JViewport same way. > Also, if we have to change this, we then need to change "autoScrolls" property too which is set in this 2 component and setUIProperty() can change those too. > Probably, we need to check if the value to be set is different in setUIProperty and then set it > or > override setUIProperty per component basis (as it is done for JTable) and then not check for OPAQUE_SET flag for opaque property accordingly. OPAQUE_SET is private variable and can not be accessed in JTable or JTree. >From the spec of LookAndFeel.installProperty and setUIProperty it * Sets the property with the specified name to the specified value if * the property has not already been set by the client program.* is clear that once the property is set by the client setUIProperty can not change it. And OPAUQE_SET is used for that . Removing the setOpaque() from the constructor of these component will not make any initial difference as it is also set to true in BasicListUI, BasicTableUI, BasicTreeUI, BasicTooltipUI and BasicViewportUI by calling LookAndFeel.installProperty. The difference which it will make is now by calling LookAndFeel.installProperty(c,opaque,false) will clear the opaque property. ------------- PR: https://git.openjdk.java.net/jdk/pull/3167 From serb at openjdk.java.net Thu Mar 25 06:46:40 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Thu, 25 Mar 2021 06:46:40 GMT Subject: RFR: 8253266 : JList and JTable constructors should clear OPAQUE_SET before calling updateUI In-Reply-To: <0xQaEjHSESc7X1yaj1XWaOXBSyQDQgD1Jd6bkJbBGGw=.30558ebd-a585-4204-a501-b23d41249573@github.com> References: <0xQaEjHSESc7X1yaj1XWaOXBSyQDQgD1Jd6bkJbBGGw=.30558ebd-a585-4204-a501-b23d41249573@github.com> Message-ID: On Wed, 24 Mar 2021 06:17:04 GMT, Tejpal Rebari wrote: > Hi All, > Please review the following fix for jdk17. > > Issue : LookAndFeel.installProperty(list, "opaque", false) is not able to set the opaque property for JList and JTable. > LookAndFeel.installProperty calls the setUIProperty, and setUIProperty checks for OPAQUE_SET to change the opaque property as requested by the client. > OPAQUE_SET is always set to true when there is call to setOpaque(boolean).So when the constructor calls setOpaque(true) OPAQUE_SET is set to true and wont allow the setUIProperty to change the opaque property. > installProperty should work as the opaque property is not set by the client. > > Fix. Fix is to remove the call to the setOpaque() from the constructor of JList and JTable. This will allow the client to change the opaque property calling LookAndFeel.installProperty() when the property is already not set. > > Test : Added a test to check the same. Also tested internal tests which all are passing. > Link is in JBS. test/jdk/javax/swing/JList/TestOpaqueListTable.java line 38: > 36: > 37: public static void main(String[] args) throws Exception { > 38: UIManager.LookAndFeelInfo[] installedLookAndFeels; I did not look close to the fix, but you need to check that the default value of the "opaque" property will not be changed. So all default L&F will set it to true, as before the fix. ------------- PR: https://git.openjdk.java.net/jdk/pull/3167 From trebari at openjdk.java.net Thu Mar 25 07:45:42 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Thu, 25 Mar 2021 07:45:42 GMT Subject: RFR: 8253266 : JList and JTable constructors should clear OPAQUE_SET before calling updateUI In-Reply-To: References: <0xQaEjHSESc7X1yaj1XWaOXBSyQDQgD1Jd6bkJbBGGw=.30558ebd-a585-4204-a501-b23d41249573@github.com> Message-ID: On Thu, 25 Mar 2021 06:44:10 GMT, Sergey Bylokhov wrote: >> Hi All, >> Please review the following fix for jdk17. >> >> Issue : LookAndFeel.installProperty(list, "opaque", false) is not able to set the opaque property for JList and JTable. >> LookAndFeel.installProperty calls the setUIProperty, and setUIProperty checks for OPAQUE_SET to change the opaque property as requested by the client. >> OPAQUE_SET is always set to true when there is call to setOpaque(boolean).So when the constructor calls setOpaque(true) OPAQUE_SET is set to true and wont allow the setUIProperty to change the opaque property. >> installProperty should work as the opaque property is not set by the client. >> >> Fix. Fix is to remove the call to the setOpaque() from the constructor of JList and JTable. This will allow the client to change the opaque property calling LookAndFeel.installProperty() when the property is already not set. >> >> Test : Added a test to check the same. Also tested internal tests which all are passing. >> Link is in JBS. > > test/jdk/javax/swing/JList/TestOpaqueListTable.java line 38: > >> 36: >> 37: public static void main(String[] args) throws Exception { >> 38: UIManager.LookAndFeelInfo[] installedLookAndFeels; > > I did not look close to the fix, but you need to check that the default value of the "opaque" property will not be changed. So all default L&F will set it to true, as before the fix. Yeah, the default value for "opaque" property will not be changed. It will be true for All L&F after the fix as well , I will add that check to the test. ------------- PR: https://git.openjdk.java.net/jdk/pull/3167 From trebari at openjdk.java.net Thu Mar 25 08:03:21 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Thu, 25 Mar 2021 08:03:21 GMT Subject: RFR: 8253266 : JList and JTable constructors should clear OPAQUE_SET before calling updateUI [v2] In-Reply-To: <0xQaEjHSESc7X1yaj1XWaOXBSyQDQgD1Jd6bkJbBGGw=.30558ebd-a585-4204-a501-b23d41249573@github.com> References: <0xQaEjHSESc7X1yaj1XWaOXBSyQDQgD1Jd6bkJbBGGw=.30558ebd-a585-4204-a501-b23d41249573@github.com> Message-ID: > Hi All, > Please review the following fix for jdk17. > > Issue : LookAndFeel.installProperty(list, "opaque", false) is not able to set the opaque property for JList and JTable. > LookAndFeel.installProperty calls the setUIProperty, and setUIProperty checks for OPAQUE_SET to change the opaque property as requested by the client. > OPAQUE_SET is always set to true when there is call to setOpaque(boolean).So when the constructor calls setOpaque(true) OPAQUE_SET is set to true and wont allow the setUIProperty to change the opaque property. > installProperty should work as the opaque property is not set by the client. > > Fix. Fix is to remove the call to the setOpaque() from the constructor of JList and JTable. This will allow the client to change the opaque property calling LookAndFeel.installProperty() when the property is already not set. > > Test : Added a test to check the same. Also tested internal tests which all are passing. > Link is in JBS. Tejpal Rebari has updated the pull request incrementally with one additional commit since the last revision: Added default value check for opaque property ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/3167/files - new: https://git.openjdk.java.net/jdk/pull/3167/files/aafac8f2..eec8b913 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3167&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3167&range=00-01 Stats: 11 lines in 1 file changed: 11 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jdk/pull/3167.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3167/head:pull/3167 PR: https://git.openjdk.java.net/jdk/pull/3167 From azvegint at openjdk.java.net Thu Mar 25 13:55:27 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Thu, 25 Mar 2021 13:55:27 GMT Subject: Integrated: 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() In-Reply-To: References: Message-ID: On Mon, 22 Mar 2021 22:19:18 GMT, Alexander Zvegintsev wrote: > Looks like the original idea was to set `fallbacktext` on strings containing only spaces. > > I decided to remove the `trim()` call to keep the same behavior and to allows to set such meaningless space only titles/tooltips(same as on other platforms, maybe someone want empty label for some reason). This pull request has now been integrated. Changeset: c037e1ed Author: Alexander Zvegintsev URL: https://git.openjdk.java.net/jdk/commit/c037e1ed Stats: 11 lines in 1 file changed: 0 ins; 4 del; 7 mod 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() Reviewed-by: serb, pbansal, kizune, trebari, psadhukhan ------------- PR: https://git.openjdk.java.net/jdk/pull/3136 From kcr at openjdk.java.net Thu Mar 25 20:19:27 2021 From: kcr at openjdk.java.net (Kevin Rushforth) Date: Thu, 25 Mar 2021 20:19:27 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations In-Reply-To: References: Message-ID: <8Vo0sYp5M4FNk6DKP2URAChl60rTHV-MpMsSUQi0-Nk=.c1f6ac22-cc67-4072-8d75-80032979db2f@github.com> On Wed, 10 Mar 2021 18:33:37 GMT, Andy Herrick wrote: > implementation of > JDK-8256145: JEP 398: Deprecate the Applet API for Removal src/java.desktop/share/classes/java/applet/package-info.java line 39: > 37: * applet development environment. > 38: *

> 39: * @deprecated. This package has been deprecated and may be removed in Package declarations cannot have `@deprecated` tags, so `make docs` fails with this change. Also, since there is a tag here, the previous `

` is now empty and causes a warning. Both problems will be fixed by removing the `@deprecated` tag, while leaving the added text. ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From herrick at openjdk.java.net Thu Mar 25 22:58:53 2021 From: herrick at openjdk.java.net (Andy Herrick) Date: Thu, 25 Mar 2021 22:58:53 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations [v2] In-Reply-To: References: Message-ID: <-CtgNrXO36S532ldbcltqkgdva_l7Oaam8rBgC7yBQY=.b56cd831-56f3-4573-8a67-e4b835c677c9@github.com> > implementation of > JDK-8256145: JEP 398: Deprecate the Applet API for Removal Andy Herrick has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 301 additional commits since the last revision: - 8189198: Add "forRemoval = true" to Applet API deprecations - Merge branch 'master' into 8189198 - 8260862: JFR: New configure command for the jfr tool Reviewed-by: mgronlun - 8264161: BigDecimal#stripTrailingZeros can throw undocumented ArithmeticException Reviewed-by: bpb - 8262081: vmTestbase/nsk/jdi/ThreadDeathRequest/addThreadFilter/addthreadfilter001/TestDescription.java failed with "ERROR: eventSet1.size() != 3 :: 2" Reviewed-by: cjplummer, lmesnik, sspitsyn - 8261502: ECDHKeyAgreement: Allows alternate ECPrivateKey impl and revised exception handling Reviewed-by: jnimeh - 8253795: Implementation of JEP 391: macOS/AArch64 Port 8253816: Support macOS W^X 8253817: Support macOS Aarch64 ABI in Interpreter 8253818: Support macOS Aarch64 ABI for compiled wrappers 8253819: Implement os/cpu for macOS/AArch64 8253839: Update tests and JDK code for macOS/Aarch64 8254941: Implement Serviceability Agent for macOS/AArch64 8255776: Change build system for macOS/AArch64 8262903: [macos_aarch64] Thread::current() called on detached thread Co-authored-by: Vladimir Kempik Co-authored-by: Bernhard Urban-Forster Co-authored-by: Ludovic Henry Co-authored-by: Monica Beckwith Reviewed-by: erikj, ihse, prr, cjplummer, stefank, gziemski, aph, mbeckwit, luhenry - 4833719: (bf) Views of MappedByteBuffers are not MappedByteBuffers, and cannot be forced Reviewed-by: adinn - 8264165: jpackage BasicTest fails after JDK-8220266: Check help text contains plaform specific parameters Reviewed-by: herrick, dcubed - 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() Reviewed-by: serb, pbansal, kizune, trebari, psadhukhan - ... and 291 more: https://git.openjdk.java.net/jdk/compare/ddfe8ec5...026f09c8 ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/2920/files - new: https://git.openjdk.java.net/jdk/pull/2920/files/1148f208..026f09c8 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2920&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2920&range=00-01 Stats: 64315 lines in 2948 files changed: 41333 ins; 13022 del; 9960 mod Patch: https://git.openjdk.java.net/jdk/pull/2920.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/2920/head:pull/2920 PR: https://git.openjdk.java.net/jdk/pull/2920 From herrick at openjdk.java.net Thu Mar 25 22:58:53 2021 From: herrick at openjdk.java.net (Andy Herrick) Date: Thu, 25 Mar 2021 22:58:53 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations [v2] In-Reply-To: References: Message-ID: On Wed, 17 Mar 2021 20:33:09 GMT, Andy Herrick wrote: >>> I cannot find any instances where the scope can be narrowed >> >> Are you about AquaInternalFrameUI.mouseRelased, BasicPopupMenuUI. stateChanged, and other non-trivial methods? > >> >> >> > I cannot find any instances where the scope can be narrowed >> >> Are you about AquaInternalFrameUI.mouseRelased, BasicPopupMenuUI. stateChanged, and other non-trivial methods? > > These have the code pattern such as: > } else if (c instanceof JApplet) { > putting '@SuppressWarnings("removal")' before the declaration of 'c' does not help, because the code is not an assignment to 'c' pushed minor change to src/java.desktop/share/classes/java/applet/package-info.java as well as merge with master. ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From kcr at openjdk.java.net Thu Mar 25 23:27:37 2021 From: kcr at openjdk.java.net (Kevin Rushforth) Date: Thu, 25 Mar 2021 23:27:37 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations [v2] In-Reply-To: <-CtgNrXO36S532ldbcltqkgdva_l7Oaam8rBgC7yBQY=.b56cd831-56f3-4573-8a67-e4b835c677c9@github.com> References: <-CtgNrXO36S532ldbcltqkgdva_l7Oaam8rBgC7yBQY=.b56cd831-56f3-4573-8a67-e4b835c677c9@github.com> Message-ID: On Thu, 25 Mar 2021 22:58:53 GMT, Andy Herrick wrote: >> implementation of >> JDK-8256145: JEP 398: Deprecate the Applet API for Removal > > Andy Herrick has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 301 additional commits since the last revision: > > - 8189198: Add "forRemoval = true" to Applet API deprecations > - Merge branch 'master' into 8189198 > - 8260862: JFR: New configure command for the jfr tool > > Reviewed-by: mgronlun > - 8264161: BigDecimal#stripTrailingZeros can throw undocumented ArithmeticException > > Reviewed-by: bpb > - 8262081: vmTestbase/nsk/jdi/ThreadDeathRequest/addThreadFilter/addthreadfilter001/TestDescription.java failed with "ERROR: eventSet1.size() != 3 :: 2" > > Reviewed-by: cjplummer, lmesnik, sspitsyn > - 8261502: ECDHKeyAgreement: Allows alternate ECPrivateKey impl and revised exception handling > > Reviewed-by: jnimeh > - 8253795: Implementation of JEP 391: macOS/AArch64 Port > 8253816: Support macOS W^X > 8253817: Support macOS Aarch64 ABI in Interpreter > 8253818: Support macOS Aarch64 ABI for compiled wrappers > 8253819: Implement os/cpu for macOS/AArch64 > 8253839: Update tests and JDK code for macOS/Aarch64 > 8254941: Implement Serviceability Agent for macOS/AArch64 > 8255776: Change build system for macOS/AArch64 > 8262903: [macos_aarch64] Thread::current() called on detached thread > > Co-authored-by: Vladimir Kempik > Co-authored-by: Bernhard Urban-Forster > Co-authored-by: Ludovic Henry > Co-authored-by: Monica Beckwith > Reviewed-by: erikj, ihse, prr, cjplummer, stefank, gziemski, aph, mbeckwit, luhenry > - 4833719: (bf) Views of MappedByteBuffers are not MappedByteBuffers, and cannot be forced > > Reviewed-by: adinn > - 8264165: jpackage BasicTest fails after JDK-8220266: Check help text contains plaform specific parameters > > Reviewed-by: herrick, dcubed > - 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() > > Reviewed-by: serb, pbansal, kizune, trebari, psadhukhan > - ... and 291 more: https://git.openjdk.java.net/jdk/compare/e2285595...026f09c8 Looks good. ------------- Marked as reviewed by kcr (Author). PR: https://git.openjdk.java.net/jdk/pull/2920 From iris at openjdk.java.net Thu Mar 25 23:38:33 2021 From: iris at openjdk.java.net (Iris Clark) Date: Thu, 25 Mar 2021 23:38:33 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations [v2] In-Reply-To: <-CtgNrXO36S532ldbcltqkgdva_l7Oaam8rBgC7yBQY=.b56cd831-56f3-4573-8a67-e4b835c677c9@github.com> References: <-CtgNrXO36S532ldbcltqkgdva_l7Oaam8rBgC7yBQY=.b56cd831-56f3-4573-8a67-e4b835c677c9@github.com> Message-ID: On Thu, 25 Mar 2021 22:58:53 GMT, Andy Herrick wrote: >> implementation of >> JDK-8256145: JEP 398: Deprecate the Applet API for Removal > > Andy Herrick has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 301 additional commits since the last revision: > > - 8189198: Add "forRemoval = true" to Applet API deprecations > - Merge branch 'master' into 8189198 > - 8260862: JFR: New configure command for the jfr tool > > Reviewed-by: mgronlun > - 8264161: BigDecimal#stripTrailingZeros can throw undocumented ArithmeticException > > Reviewed-by: bpb > - 8262081: vmTestbase/nsk/jdi/ThreadDeathRequest/addThreadFilter/addthreadfilter001/TestDescription.java failed with "ERROR: eventSet1.size() != 3 :: 2" > > Reviewed-by: cjplummer, lmesnik, sspitsyn > - 8261502: ECDHKeyAgreement: Allows alternate ECPrivateKey impl and revised exception handling > > Reviewed-by: jnimeh > - 8253795: Implementation of JEP 391: macOS/AArch64 Port > 8253816: Support macOS W^X > 8253817: Support macOS Aarch64 ABI in Interpreter > 8253818: Support macOS Aarch64 ABI for compiled wrappers > 8253819: Implement os/cpu for macOS/AArch64 > 8253839: Update tests and JDK code for macOS/Aarch64 > 8254941: Implement Serviceability Agent for macOS/AArch64 > 8255776: Change build system for macOS/AArch64 > 8262903: [macos_aarch64] Thread::current() called on detached thread > > Co-authored-by: Vladimir Kempik > Co-authored-by: Bernhard Urban-Forster > Co-authored-by: Ludovic Henry > Co-authored-by: Monica Beckwith > Reviewed-by: erikj, ihse, prr, cjplummer, stefank, gziemski, aph, mbeckwit, luhenry > - 4833719: (bf) Views of MappedByteBuffers are not MappedByteBuffers, and cannot be forced > > Reviewed-by: adinn > - 8264165: jpackage BasicTest fails after JDK-8220266: Check help text contains plaform specific parameters > > Reviewed-by: herrick, dcubed > - 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() > > Reviewed-by: serb, pbansal, kizune, trebari, psadhukhan > - ... and 291 more: https://git.openjdk.java.net/jdk/compare/8fcfe0bd...026f09c8 Marked as reviewed by iris (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From prr at openjdk.java.net Thu Mar 25 23:51:33 2021 From: prr at openjdk.java.net (Phil Race) Date: Thu, 25 Mar 2021 23:51:33 GMT Subject: RFR: 8189198: Add "forRemoval = true" to Applet API deprecations [v2] In-Reply-To: <-CtgNrXO36S532ldbcltqkgdva_l7Oaam8rBgC7yBQY=.b56cd831-56f3-4573-8a67-e4b835c677c9@github.com> References: <-CtgNrXO36S532ldbcltqkgdva_l7Oaam8rBgC7yBQY=.b56cd831-56f3-4573-8a67-e4b835c677c9@github.com> Message-ID: On Thu, 25 Mar 2021 22:58:53 GMT, Andy Herrick wrote: >> implementation of >> JDK-8256145: JEP 398: Deprecate the Applet API for Removal > > Andy Herrick has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 301 additional commits since the last revision: > > - 8189198: Add "forRemoval = true" to Applet API deprecations > - Merge branch 'master' into 8189198 > - 8260862: JFR: New configure command for the jfr tool > > Reviewed-by: mgronlun > - 8264161: BigDecimal#stripTrailingZeros can throw undocumented ArithmeticException > > Reviewed-by: bpb > - 8262081: vmTestbase/nsk/jdi/ThreadDeathRequest/addThreadFilter/addthreadfilter001/TestDescription.java failed with "ERROR: eventSet1.size() != 3 :: 2" > > Reviewed-by: cjplummer, lmesnik, sspitsyn > - 8261502: ECDHKeyAgreement: Allows alternate ECPrivateKey impl and revised exception handling > > Reviewed-by: jnimeh > - 8253795: Implementation of JEP 391: macOS/AArch64 Port > 8253816: Support macOS W^X > 8253817: Support macOS Aarch64 ABI in Interpreter > 8253818: Support macOS Aarch64 ABI for compiled wrappers > 8253819: Implement os/cpu for macOS/AArch64 > 8253839: Update tests and JDK code for macOS/Aarch64 > 8254941: Implement Serviceability Agent for macOS/AArch64 > 8255776: Change build system for macOS/AArch64 > 8262903: [macos_aarch64] Thread::current() called on detached thread > > Co-authored-by: Vladimir Kempik > Co-authored-by: Bernhard Urban-Forster > Co-authored-by: Ludovic Henry > Co-authored-by: Monica Beckwith > Reviewed-by: erikj, ihse, prr, cjplummer, stefank, gziemski, aph, mbeckwit, luhenry > - 4833719: (bf) Views of MappedByteBuffers are not MappedByteBuffers, and cannot be forced > > Reviewed-by: adinn > - 8264165: jpackage BasicTest fails after JDK-8220266: Check help text contains plaform specific parameters > > Reviewed-by: herrick, dcubed > - 8263454: com.apple.laf.AquaFileChooserUI ignores the result of String.trim() > > Reviewed-by: serb, pbansal, kizune, trebari, psadhukhan > - ... and 291 more: https://git.openjdk.java.net/jdk/compare/00b7b36f...026f09c8 Marked as reviewed by prr (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From psadhukhan at openjdk.java.net Fri Mar 26 11:33:32 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Fri, 26 Mar 2021 11:33:32 GMT Subject: Integrated: 8263472: Specification of JComponent::updateUI should document that the default implementation does nothing In-Reply-To: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> References: <-7UierpUJBT3_Y0GOUbxPUy8F434Yel9N597P_pD288=.59f3f1ed-22d2-495c-84ea-8354b8c23ae1@github.com> Message-ID: On Fri, 12 Mar 2021 04:33:43 GMT, Prasanta Sadhukhan wrote: > It's unclear from the spec that the original implementation of the method JComponent.updateUI() does nothing which needs to be explicitly stated in the javadoc. This pull request has now been integrated. Changeset: 4fbb7c24 Author: Prasanta Sadhukhan URL: https://git.openjdk.java.net/jdk/commit/4fbb7c24 Stats: 5 lines in 1 file changed: 3 ins; 0 del; 2 mod 8263472: Specification of JComponent::updateUI should document that the default implementation does nothing Reviewed-by: aivanov, darcy ------------- PR: https://git.openjdk.java.net/jdk/pull/2955 From psadhukhan at openjdk.java.net Fri Mar 26 11:37:33 2021 From: psadhukhan at openjdk.java.net (Prasanta Sadhukhan) Date: Fri, 26 Mar 2021 11:37:33 GMT Subject: RFR: 8264218: Public method javax.swing.JMenu.setComponentOrientation() has no spec Message-ID: A public overriding method JMenu.setComponentOrientation(java.awt.ComponentOrientation) has no spec. Added spec for the method. ------------- Commit messages: - 8264218: Public method javax.swing.JMenu.setComponentOrientation() has no spec Changes: https://git.openjdk.java.net/jdk/pull/3213/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3213&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8264218 Stats: 12 lines in 1 file changed: 12 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jdk/pull/3213.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3213/head:pull/3213 PR: https://git.openjdk.java.net/jdk/pull/3213 From azvegint at openjdk.java.net Fri Mar 26 12:05:26 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Fri, 26 Mar 2021 12:05:26 GMT Subject: RFR: 8263496: MetalHighContrastTheme.getControlHighlight cleanup In-Reply-To: References: Message-ID: On Tue, 23 Mar 2021 10:26:42 GMT, Prasanta Sadhukhan wrote: > SonarCloud reports the potential issue with MetalHighContrastTheme.getControlHighlight where `controlHighlight ` field is not used and the getControlHighlight() uses secondary field. > public ColorUIResource getControlHighlight() { > // This was super.getSecondary3(); > return secondary2; > } > Removed the unused field. Marked as reviewed by azvegint (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3149 From herrick at openjdk.java.net Fri Mar 26 14:51:28 2021 From: herrick at openjdk.java.net (Andy Herrick) Date: Fri, 26 Mar 2021 14:51:28 GMT Subject: Integrated: 8189198: Add "forRemoval = true" to Applet API deprecations In-Reply-To: References: Message-ID: <4WWT8Ziy2C8n3V8-SQqJ_SNHpYlyB1uO26I-Szzm29c=.d2041dca-362a-4285-a961-7f71635df559@github.com> On Wed, 10 Mar 2021 18:33:37 GMT, Andy Herrick wrote: > implementation of > JDK-8256145: JEP 398: Deprecate the Applet API for Removal This pull request has now been integrated. Changeset: 57115fa2 Author: Andy Herrick URL: https://git.openjdk.java.net/jdk/commit/57115fa2 Stats: 73 lines in 22 files changed: 14 ins; 0 del; 59 mod 8189198: Add "forRemoval = true" to Applet API deprecations Reviewed-by: iris, almatvee, kcr, prr ------------- PR: https://git.openjdk.java.net/jdk/pull/2920 From serb at openjdk.java.net Sat Mar 27 01:23:25 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Sat, 27 Mar 2021 01:23:25 GMT Subject: RFR: 8264218: Public method javax.swing.JMenu.setComponentOrientation() has no spec In-Reply-To: References: Message-ID: On Fri, 26 Mar 2021 11:30:35 GMT, Prasanta Sadhukhan wrote: > A public overriding method JMenu.setComponentOrientation(java.awt.ComponentOrientation) > has no spec. > Added spec for the method. Looks like the JavaDoc bug, the spec was there in jdk7: https://docs.oracle.com/javase/7/docs/api/javax/swing/JMenu.html#setComponentOrientation(java.awt.ComponentOrientation) ------------- PR: https://git.openjdk.java.net/jdk/pull/3213 From serb at openjdk.java.net Sun Mar 28 00:30:44 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Sun, 28 Mar 2021 00:30:44 GMT Subject: RFR: 8264328: Broken license in javax/swing/JComboBox/8072767/bug8072767.java Message-ID: <-B4T2kagAgO1uCf0SCBm2F5i_Uwuz7azy74v1AUt48I=.aeae9cf7-5126-4c25-9122-1df181925e2e@github.com> This test has a broken license: /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates /* * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ------------- Commit messages: - Update bug8072767.java Changes: https://git.openjdk.java.net/jdk/pull/3230/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3230&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8264328 Stats: 4 lines in 1 file changed: 0 ins; 3 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/3230.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3230/head:pull/3230 PR: https://git.openjdk.java.net/jdk/pull/3230 From kizune at openjdk.java.net Sun Mar 28 07:45:33 2021 From: kizune at openjdk.java.net (Alexander Zuev) Date: Sun, 28 Mar 2021 07:45:33 GMT Subject: RFR: 8264328: Broken license in javax/swing/JComboBox/8072767/bug8072767.java In-Reply-To: <-B4T2kagAgO1uCf0SCBm2F5i_Uwuz7azy74v1AUt48I=.aeae9cf7-5126-4c25-9122-1df181925e2e@github.com> References: <-B4T2kagAgO1uCf0SCBm2F5i_Uwuz7azy74v1AUt48I=.aeae9cf7-5126-4c25-9122-1df181925e2e@github.com> Message-ID: <-TDhQcmsCjsUNNXfOxjN9H1DD3bdMKIBgMyEnfEndhI=.d12b2d1b-1630-4a62-9e7d-5a8476b9f377@github.com> On Sun, 28 Mar 2021 00:21:16 GMT, Sergey Bylokhov wrote: > This test has a broken license: > /* > * To change this license header, choose License Headers in Project Properties. > * To change this template file, choose Tools | Templates > /* > * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. Marked as reviewed by kizune (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3230 From trebari at openjdk.java.net Sun Mar 28 07:50:42 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Sun, 28 Mar 2021 07:50:42 GMT Subject: RFR: 8264328: Broken license in javax/swing/JComboBox/8072767/bug8072767.java In-Reply-To: <-B4T2kagAgO1uCf0SCBm2F5i_Uwuz7azy74v1AUt48I=.aeae9cf7-5126-4c25-9122-1df181925e2e@github.com> References: <-B4T2kagAgO1uCf0SCBm2F5i_Uwuz7azy74v1AUt48I=.aeae9cf7-5126-4c25-9122-1df181925e2e@github.com> Message-ID: On Sun, 28 Mar 2021 00:21:16 GMT, Sergey Bylokhov wrote: > This test has a broken license: > /* > * To change this license header, choose License Headers in Project Properties. > * To change this template file, choose Tools | Templates > /* > * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. Marked as reviewed by trebari (Committer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3230 From pbansal at openjdk.java.net Sun Mar 28 08:05:33 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Sun, 28 Mar 2021 08:05:33 GMT Subject: RFR: 8264328: Broken license in javax/swing/JComboBox/8072767/bug8072767.java In-Reply-To: <-B4T2kagAgO1uCf0SCBm2F5i_Uwuz7azy74v1AUt48I=.aeae9cf7-5126-4c25-9122-1df181925e2e@github.com> References: <-B4T2kagAgO1uCf0SCBm2F5i_Uwuz7azy74v1AUt48I=.aeae9cf7-5126-4c25-9122-1df181925e2e@github.com> Message-ID: <5ODLYs1f8SNU82hRKnSj4JgI-mjddF-nUQtYiCs-9vQ=.1a216316-66cd-4b24-8e4a-5b924282b2bc@github.com> On Sun, 28 Mar 2021 00:21:16 GMT, Sergey Bylokhov wrote: > This test has a broken license: > /* > * To change this license header, choose License Headers in Project Properties. > * To change this template file, choose Tools | Templates > /* > * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. Marked as reviewed by pbansal (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/3230 From serb at openjdk.java.net Mon Mar 29 03:45:30 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Mon, 29 Mar 2021 03:45:30 GMT Subject: Integrated: 8264328: Broken license in javax/swing/JComboBox/8072767/bug8072767.java In-Reply-To: <-B4T2kagAgO1uCf0SCBm2F5i_Uwuz7azy74v1AUt48I=.aeae9cf7-5126-4c25-9122-1df181925e2e@github.com> References: <-B4T2kagAgO1uCf0SCBm2F5i_Uwuz7azy74v1AUt48I=.aeae9cf7-5126-4c25-9122-1df181925e2e@github.com> Message-ID: On Sun, 28 Mar 2021 00:21:16 GMT, Sergey Bylokhov wrote: > This test has a broken license: > /* > * To change this license header, choose License Headers in Project Properties. > * To change this template file, choose Tools | Templates > /* > * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. This pull request has now been integrated. Changeset: 6678b01c Author: Sergey Bylokhov URL: https://git.openjdk.java.net/jdk/commit/6678b01c Stats: 4 lines in 1 file changed: 0 ins; 3 del; 1 mod 8264328: Broken license in javax/swing/JComboBox/8072767/bug8072767.java Reviewed-by: kizune, trebari, pbansal ------------- PR: https://git.openjdk.java.net/jdk/pull/3230 From pbansal at openjdk.java.net Tue Mar 30 09:49:47 2021 From: pbansal at openjdk.java.net (Pankaj Bansal) Date: Tue, 30 Mar 2021 09:49:47 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: References: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> <4SZRIR695DBooSWt-1aatGx-CKPy6EwuRpXS29A8wro=.4ba37fe2-6017-482f-83c4-33d7a11fc320@github.com> <60QaQ3ISOvoR5RMWU1hTSCsiBHfy7xU2QjvLzrGaSvA=.c02ab62e-5176-4015-a16c-849a71088452@github.com> Message-ID: On Wed, 17 Mar 2021 01:48:40 GMT, Sergey Bylokhov wrote: > > It looks like the Dialog must have handled the keys as there are no special keys mentioned for JAWS to interact with the component like the VO > > Did you check this list of hotkeys? > https://www.freedomscientific.com/training/jaws/hotkeys > https://freedomscientific.github.io/VFO-standards-support/aria.html > Something like: > RIGHT ARROW and UP ARROW increase the value of the slider. > LEFT ARROW and DOWN ARROW decrease the value of the slider. > HOME and END move to the minimum and maximum values of the slider. > PAGE UP and PAGE DOWN increment or decrement the slider by a given amount. > > ======================= > My main point is that if we will change some shared code we should care about both supported platforms. I tried the hot keys with the both native dialog ("Display Settings" with a "Brightness" Slider ) and java applications. Both Java and native dialog are themselves handling the RIGHT ARROW, UP ARROW, LEFT ARROW, DOWN ARROW, HOME and END buttons for JSlider and user can change slider value using these keys without JAWS also. but they are not handling the PAGE UP and PAGE DOWN button. PAGE UP and PAGE DOWN button don't work with JAWS either, meaning JAWS is not able to handle the keys and is not able to change component values for both native dialogs and Java application. Also, I am not able to find any component in Swing, where JAWS can change the component values using any hot key. Please correct me if I am wrong in this and JAWS can actually manipulate some component. Also, in the old implementation for MacOS , the VO can not change the Spinner/Slider values and we are adding this functionality now only. In addition to this, the functionality we are adding in slider can be used with JAWS also if we decide to provide the support for the same later. Currently, I do not see JAWS being able to change any component value in swing, so it will not be able to change Slider value too. ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From shade at openjdk.java.net Tue Mar 30 13:02:33 2021 From: shade at openjdk.java.net (Aleksey Shipilev) Date: Tue, 30 Mar 2021 13:02:33 GMT Subject: RFR: 8264428: Replace uses of StringBuffer with StringBuilder in java.desktop In-Reply-To: <2y9jvm8hnBRZQIO4qwAY-C07aSQM1QIzIT6SWAj7c70=.bda3ef0d-a445-40b0-b155-3920d072cb89@github.com> References: <2y9jvm8hnBRZQIO4qwAY-C07aSQM1QIzIT6SWAj7c70=.bda3ef0d-a445-40b0-b155-3920d072cb89@github.com> Message-ID: On Mon, 29 Mar 2021 20:50:14 GMT, Andrey Turbanov wrote: > Found by IntelliJ IDEA inspection `Java | Java language level migration aids | Java 5 | 'StringBuffer' may be 'StringBuilder'` > As suggested in https://github.com/openjdk/jdk/pull/1507#issuecomment-757369003 I've created separate PR for module `java.desktop` > Similar cleanups in the past: https://bugs.openjdk.java.net/browse/JDK-8041679 https://bugs.openjdk.java.net/browse/JDK-8264029 Submitted: https://bugs.openjdk.java.net/browse/JDK-8264428, please rename PR to "8264428: Replace uses of StringBuffer with StringBuilder in java.desktop". ------------- PR: https://git.openjdk.java.net/jdk/pull/3251 From github.com+741251+turbanoff at openjdk.java.net Tue Mar 30 13:02:32 2021 From: github.com+741251+turbanoff at openjdk.java.net (Andrey Turbanov) Date: Tue, 30 Mar 2021 13:02:32 GMT Subject: RFR: 8264428: Replace uses of StringBuffer with StringBuilder in java.desktop Message-ID: <2y9jvm8hnBRZQIO4qwAY-C07aSQM1QIzIT6SWAj7c70=.bda3ef0d-a445-40b0-b155-3920d072cb89@github.com> Found by IntelliJ IDEA inspection `Java | Java language level migration aids | Java 5 | 'StringBuffer' may be 'StringBuilder'` As suggested in https://github.com/openjdk/jdk/pull/1507#issuecomment-757369003 I've created separate PR for module `java.desktop` Similar cleanups in the past: https://bugs.openjdk.java.net/browse/JDK-8041679 https://bugs.openjdk.java.net/browse/JDK-8264029 ------------- Commit messages: - [PATCH] Replace uses of StringBuffer with StringBuilder in java.desktop Changes: https://git.openjdk.java.net/jdk/pull/3251/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3251&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8264428 Stats: 44 lines in 11 files changed: 0 ins; 8 del; 36 mod Patch: https://git.openjdk.java.net/jdk/pull/3251.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3251/head:pull/3251 PR: https://git.openjdk.java.net/jdk/pull/3251 From github.com+741251+turbanoff at openjdk.java.net Tue Mar 30 18:34:08 2021 From: github.com+741251+turbanoff at openjdk.java.net (Andrey Turbanov) Date: Tue, 30 Mar 2021 18:34:08 GMT Subject: RFR: 8264428: Replace uses of StringBuffer with StringBuilder in java.desktop In-Reply-To: <2y9jvm8hnBRZQIO4qwAY-C07aSQM1QIzIT6SWAj7c70=.bda3ef0d-a445-40b0-b155-3920d072cb89@github.com> References: <2y9jvm8hnBRZQIO4qwAY-C07aSQM1QIzIT6SWAj7c70=.bda3ef0d-a445-40b0-b155-3920d072cb89@github.com> Message-ID: On Mon, 29 Mar 2021 20:50:14 GMT, Andrey Turbanov wrote: > Found by IntelliJ IDEA inspection `Java | Java language level migration aids | Java 5 | 'StringBuffer' may be 'StringBuilder'` > As suggested in https://github.com/openjdk/jdk/pull/1507#issuecomment-757369003 I've created separate PR for module `java.desktop` > Similar cleanups in the past: https://bugs.openjdk.java.net/browse/JDK-8041679 https://bugs.openjdk.java.net/browse/JDK-8264029 src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFFieldNode.java line 127: > 125: StringBuilder sb = new StringBuilder(); > 126: for (int i = 0; i < count; i++) { > 127: sb.append((data[i] & 0xff)); Remove redundant parentheses ------------- PR: https://git.openjdk.java.net/jdk/pull/3251 From github.com+741251+turbanoff at openjdk.java.net Tue Mar 30 19:05:38 2021 From: github.com+741251+turbanoff at openjdk.java.net (Andrey Turbanov) Date: Tue, 30 Mar 2021 19:05:38 GMT Subject: RFR: 8264428: Replace uses of StringBuffer with StringBuilder in java.desktop [v2] In-Reply-To: References: <2y9jvm8hnBRZQIO4qwAY-C07aSQM1QIzIT6SWAj7c70=.bda3ef0d-a445-40b0-b155-3920d072cb89@github.com> Message-ID: On Tue, 30 Mar 2021 18:31:34 GMT, Andrey Turbanov wrote: >> Andrey Turbanov has updated the pull request incrementally with one additional commit since the last revision: >> >> [PATCH] Replace uses of StringBuffer with StringBuilder in java.desktop > > src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFFieldNode.java line 127: > >> 125: StringBuilder sb = new StringBuilder(); >> 126: for (int i = 0; i < count; i++) { >> 127: sb.append((data[i] & 0xff)); > > Remove redundant parentheses fixed. It's suspicious that IDEA wasn't able to remove them by itself. Reported https://youtrack.jetbrains.com/issue/IDEA-265548 ------------- PR: https://git.openjdk.java.net/jdk/pull/3251 From github.com+741251+turbanoff at openjdk.java.net Tue Mar 30 19:05:37 2021 From: github.com+741251+turbanoff at openjdk.java.net (Andrey Turbanov) Date: Tue, 30 Mar 2021 19:05:37 GMT Subject: RFR: 8264428: Replace uses of StringBuffer with StringBuilder in java.desktop [v2] In-Reply-To: <2y9jvm8hnBRZQIO4qwAY-C07aSQM1QIzIT6SWAj7c70=.bda3ef0d-a445-40b0-b155-3920d072cb89@github.com> References: <2y9jvm8hnBRZQIO4qwAY-C07aSQM1QIzIT6SWAj7c70=.bda3ef0d-a445-40b0-b155-3920d072cb89@github.com> Message-ID: > Found by IntelliJ IDEA inspection `Java | Java language level migration aids | Java 5 | 'StringBuffer' may be 'StringBuilder'` > As suggested in https://github.com/openjdk/jdk/pull/1507#issuecomment-757369003 I've created separate PR for module `java.desktop` > Similar cleanups in the past: https://bugs.openjdk.java.net/browse/JDK-8041679 https://bugs.openjdk.java.net/browse/JDK-8264029 Andrey Turbanov has updated the pull request incrementally with one additional commit since the last revision: [PATCH] Replace uses of StringBuffer with StringBuilder in java.desktop ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/3251/files - new: https://git.openjdk.java.net/jdk/pull/3251/files/9bd4e523..80bff1db Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3251&range=01 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3251&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.java.net/jdk/pull/3251.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3251/head:pull/3251 PR: https://git.openjdk.java.net/jdk/pull/3251 From trebari at openjdk.java.net Wed Mar 31 05:22:20 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Wed, 31 Mar 2021 05:22:20 GMT Subject: RFR: 8253266 : JList and JTable constructors should clear OPAQUE_SET before calling updateUI [v2] In-Reply-To: References: <0xQaEjHSESc7X1yaj1XWaOXBSyQDQgD1Jd6bkJbBGGw=.30558ebd-a585-4204-a501-b23d41249573@github.com> Message-ID: On Wed, 24 Mar 2021 08:27:40 GMT, Prasanta Sadhukhan wrote: >> Tejpal Rebari has updated the pull request incrementally with one additional commit since the last revision: >> >> Added default value check for opaque property > > I am not sure if this is the correct fix, as then we would have to remove setOpaque call for JTree, JToolTip, JRootPane etc where we might face same installProperty issue. > Also, if we have to change this, we then need to change "autoScrolls" property too which is set in this 2 component and setUIProperty() can change those too. > Probably, we need to check if the value to be set is different in setUIProperty and then set it > or > override setUIProperty per component basis (as it is done for JTable) and then not check for OPAQUE_SET flag for opaque property accordingly. @prsadhuk @mrserb is there any more comments on this. ------------- PR: https://git.openjdk.java.net/jdk/pull/3167 From trebari at openjdk.java.net Wed Mar 31 05:25:21 2021 From: trebari at openjdk.java.net (Tejpal Rebari) Date: Wed, 31 Mar 2021 05:25:21 GMT Subject: RFR: 8049700: Deprecate obsolete classes and methods in javax/swing/plaf/basic [v6] In-Reply-To: References: Message-ID: On Wed, 10 Feb 2021 18:04:16 GMT, Phil Race wrote: >> Tejpal Rebari has updated the pull request incrementally with one additional commit since the last revision: >> >> removed deprecation from methods of class which is also getting deprecated > > Are these methods all expected to be used only by a L&F rather than an application ? > If by an application, then forRemoval seems too strong to me. > If by a L&F then I think you need to go research what open source L&Fs there are out there and see how many of them are affected. Then we can decide about forRemoval. @prrace any more comments on this ? ------------- PR: https://git.openjdk.java.net/jdk/pull/1958 From jiefu at openjdk.java.net Wed Mar 31 16:38:24 2021 From: jiefu at openjdk.java.net (Jie Fu) Date: Wed, 31 Mar 2021 16:38:24 GMT Subject: RFR: 8264526: javax/swing/text/html/parser/Parser/8078268/bug8078268.java timeout Message-ID: Hi all, I'd like to fix the timeout of javax/swing/text/html/parser/Parser/8078268/bug8078268.java. It seems to take about 6~7 seconds to run on some of our testing platforms. But the timeout of the test is hard-coded as 5 seconds. The fix just increases the timeout from 5 seconds to 10 seconds. Thanks. Best regards, Jie ------------- Commit messages: - Update the copyright year - 8264526: javax/swing/text/html/parser/Parser/8078268/bug8078268.java timeout Changes: https://git.openjdk.java.net/jdk/pull/3287/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3287&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8264526 Stats: 4 lines in 1 file changed: 1 ins; 0 del; 3 mod Patch: https://git.openjdk.java.net/jdk/pull/3287.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/3287/head:pull/3287 PR: https://git.openjdk.java.net/jdk/pull/3287 From azvegint at openjdk.java.net Wed Mar 31 19:01:26 2021 From: azvegint at openjdk.java.net (Alexander Zvegintsev) Date: Wed, 31 Mar 2021 19:01:26 GMT Subject: RFR: 8264526: javax/swing/text/html/parser/Parser/8078268/bug8078268.java timeout In-Reply-To: References: Message-ID: On Wed, 31 Mar 2021 16:23:23 GMT, Jie Fu wrote: > Hi all, > > I'd like to fix the timeout of javax/swing/text/html/parser/Parser/8078268/bug8078268.java. > It seems to take about 6~7 seconds to run on some of our testing platforms. > But the timeout of the test is hard-coded as 5 seconds. > > The fix just increases the timeout from 5 seconds to 10 seconds. > > Thanks. > Best regards, > Jie [JDK-8078268](https://bugs.openjdk.java.net/browse/JDK-8078268) description says that it takes minutes to parse to complete before the fix. So 10 seconds is not a big deal comparing to minutes. However it might indicate a slight drop in performance. > It seems to take about 6~7 seconds to run on some of our testing platforms. Did it fail on these platforms from the beginning of your testing with `bug8078268`? ------------- PR: https://git.openjdk.java.net/jdk/pull/3287 From serb at openjdk.java.net Wed Mar 31 19:59:25 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 31 Mar 2021 19:59:25 GMT Subject: RFR: 8262981: Create implementation for NSAccessibilitySlider protocol In-Reply-To: References: <3kHCT6j_xnm9mbA2jeP35p9rY4nxOD61PInSB9mglT8=.71c3b9df-0cc3-40f7-b339-15b382e36b6f@github.com> <4SZRIR695DBooSWt-1aatGx-CKPy6EwuRpXS29A8wro=.4ba37fe2-6017-482f-83c4-33d7a11fc320@github.com> <60QaQ3ISOvoR5RMWU1hTSCsiBHfy7xU2QjvLzrGaSvA=.c02ab62e-5176-4015-a16c-849a71088452@github.com> Message-ID: On Tue, 30 Mar 2021 09:46:45 GMT, Pankaj Bansal wrote: >>> It looks like the Dialog must have handled the keys as there are no special keys mentioned for JAWS to interact with the component like the VO >> >> Did you check this list of hotkeys? >> https://www.freedomscientific.com/training/jaws/hotkeys >> https://freedomscientific.github.io/VFO-standards-support/aria.html >> Something like: >> RIGHT ARROW and UP ARROW increase the value of the slider. >> LEFT ARROW and DOWN ARROW decrease the value of the slider. >> HOME and END move to the minimum and maximum values of the slider. >> PAGE UP and PAGE DOWN increment or decrement the slider by a given amount. >> >> ======================= >> My main point is that if we will change some shared code we should care about both supported platforms. > >> > It looks like the Dialog must have handled the keys as there are no special keys mentioned for JAWS to interact with the component like the VO >> >> Did you check this list of hotkeys? >> https://www.freedomscientific.com/training/jaws/hotkeys >> https://freedomscientific.github.io/VFO-standards-support/aria.html >> Something like: >> RIGHT ARROW and UP ARROW increase the value of the slider. >> LEFT ARROW and DOWN ARROW decrease the value of the slider. >> HOME and END move to the minimum and maximum values of the slider. >> PAGE UP and PAGE DOWN increment or decrement the slider by a given amount. >> >> ======================= >> My main point is that if we will change some shared code we should care about both supported platforms. > > I tried the hot keys with the both native dialog ("Display Settings" with a "Brightness" Slider ) and java applications. > Both Java and native dialog are themselves handling the RIGHT ARROW, UP ARROW, LEFT ARROW, DOWN ARROW, HOME and END buttons for JSlider and user can change slider value using these keys without JAWS also. but they are not handling the PAGE UP and PAGE DOWN button. > PAGE UP and PAGE DOWN button don't work with JAWS either, meaning JAWS is not able to handle the keys and is not able to change component values for both native dialogs and Java application. Also, I am not able to find any component in Swing, where JAWS can change the component values using any hot key. Please correct me if I am wrong in this and JAWS can actually manipulate some component. Also, in the old implementation for MacOS , the VO can not change the Spinner/Slider values and we are adding this functionality now only. > In addition to this, the functionality we are adding in slider can be used with JAWS also if we decide to provide the support for the same later. Currently, I do not see JAWS being able to change any component value in swing, so it will not be able to change Slider value too. Ok, please file a similar bug for the windows platform. ------------- PR: https://git.openjdk.java.net/jdk/pull/2874 From serb at openjdk.java.net Wed Mar 31 20:33:27 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 31 Mar 2021 20:33:27 GMT Subject: RFR: JDK-8263235 : sanity/client/SwingSet/src/ColorChooserDemoTest.java failed throwing java.lang.NoClassDefFoundError [v2] In-Reply-To: References: <7wHhDXuqX0oZMwq82WEmTlzRxsHYy7IBhsehPKFwtIo=.7565e4dc-175a-46b4-9cc7-dc3d4b23f240@github.com> Message-ID: On Fri, 12 Mar 2021 14:39:23 GMT, Amresh Sahu wrote: >> Added @build org.jemmy2ext.JemmyExt. > > Amresh Sahu has updated the pull request incrementally with one additional commit since the last revision: > > JDK-8263235:Added @build org.jemmy2ext.JemmyExt Marked as reviewed by serb (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2958 From github.com+72060147+amresh-sahu at openjdk.java.net Wed Mar 31 20:36:25 2021 From: github.com+72060147+amresh-sahu at openjdk.java.net (Amresh Sahu) Date: Wed, 31 Mar 2021 20:36:25 GMT Subject: Integrated: JDK-8263235 : sanity/client/SwingSet/src/ColorChooserDemoTest.java failed throwing java.lang.NoClassDefFoundError In-Reply-To: <7wHhDXuqX0oZMwq82WEmTlzRxsHYy7IBhsehPKFwtIo=.7565e4dc-175a-46b4-9cc7-dc3d4b23f240@github.com> References: <7wHhDXuqX0oZMwq82WEmTlzRxsHYy7IBhsehPKFwtIo=.7565e4dc-175a-46b4-9cc7-dc3d4b23f240@github.com> Message-ID: On Fri, 12 Mar 2021 05:29:01 GMT, Amresh Sahu wrote: > Added @build org.jemmy2ext.JemmyExt. This pull request has now been integrated. Changeset: cb70ab0c Author: Your Name Committer: Sergey Bylokhov URL: https://git.openjdk.java.net/jdk/commit/cb70ab0c Stats: 2 lines in 2 files changed: 2 ins; 0 del; 0 mod 8263235: sanity/client/SwingSet/src/ColorChooserDemoTest.java failed throwing java.lang.NoClassDefFoundError Reviewed-by: psadhukhan, serb ------------- PR: https://git.openjdk.java.net/jdk/pull/2958 From serb at openjdk.java.net Wed Mar 31 20:38:22 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 31 Mar 2021 20:38:22 GMT Subject: RFR: 8253266 : JList and JTable constructors should clear OPAQUE_SET before calling updateUI [v2] In-Reply-To: References: <0xQaEjHSESc7X1yaj1XWaOXBSyQDQgD1Jd6bkJbBGGw=.30558ebd-a585-4204-a501-b23d41249573@github.com> Message-ID: On Thu, 25 Mar 2021 08:03:21 GMT, Tejpal Rebari wrote: >> Hi All, >> Please review the following fix for jdk17. >> >> Issue : LookAndFeel.installProperty(list, "opaque", false) is not able to set the opaque property for JList and JTable. >> LookAndFeel.installProperty calls the setUIProperty, and setUIProperty checks for OPAQUE_SET to change the opaque property as requested by the client. >> OPAQUE_SET is always set to true when there is call to setOpaque(boolean).So when the constructor calls setOpaque(true) OPAQUE_SET is set to true and wont allow the setUIProperty to change the opaque property. >> installProperty should work as the opaque property is not set by the client. >> >> Fix. Fix is to remove the call to the setOpaque() from the constructor of JList and JTable. This will allow the client to change the opaque property calling LookAndFeel.installProperty() when the property is already not set. >> >> Test : Added a test to check the same. Also tested internal tests which all are passing. >> Link is in JBS. > > Tejpal Rebari has updated the pull request incrementally with one additional commit since the last revision: > > Added default value check for opaque property Please wait for the @prsadhuk approval as well. ------------- Marked as reviewed by serb (Reviewer). PR: https://git.openjdk.java.net/jdk/pull/3167 From serb at openjdk.java.net Wed Mar 31 21:15:30 2021 From: serb at openjdk.java.net (Sergey Bylokhov) Date: Wed, 31 Mar 2021 21:15:30 GMT Subject: RFR: 8264428: Replace uses of StringBuffer with StringBuilder in java.desktop In-Reply-To: References: <2y9jvm8hnBRZQIO4qwAY-C07aSQM1QIzIT6SWAj7c70=.bda3ef0d-a445-40b0-b155-3920d072cb89@github.com> Message-ID: <27yKI-MoNpdtE7_qYEHLNj-tmphsEvwwT7NunRjEY5c=.d585ed9c-b74c-4b82-8c24-fca05d944f58@github.com> On Tue, 30 Mar 2021 12:39:15 GMT, Aleksey Shipilev wrote: >> Found by IntelliJ IDEA inspection `Java | Java language level migration aids | Java 5 | 'StringBuffer' may be 'StringBuilder'` >> As suggested in https://github.com/openjdk/jdk/pull/1507#issuecomment-757369003 I've created separate PR for module `java.desktop` >> Similar cleanups in the past: https://bugs.openjdk.java.net/browse/JDK-8041679 https://bugs.openjdk.java.net/browse/JDK-8264029 > > Submitted: https://bugs.openjdk.java.net/browse/JDK-8264428, please rename PR to "8264428: Replace uses of StringBuffer with StringBuilder in java.desktop". Looks like this change goes beyond of simple replacement of StringBuffer with StringBuilder. Please update the description of the bug and PR description. ------------- PR: https://git.openjdk.java.net/jdk/pull/3251 From jiefu at openjdk.java.net Wed Mar 31 23:32:07 2021 From: jiefu at openjdk.java.net (Jie Fu) Date: Wed, 31 Mar 2021 23:32:07 GMT Subject: RFR: 8264526: javax/swing/text/html/parser/Parser/8078268/bug8078268.java timeout In-Reply-To: References: Message-ID: On Wed, 31 Mar 2021 18:57:50 GMT, Alexander Zvegintsev wrote: > Did it fail on these platforms from the beginning of your testing with `bug8078268`? No. This week I add some testing infrastructure on dockers. The timeout seems only to be observed on these dockers intermittently. Thanks. ------------- PR: https://git.openjdk.java.net/jdk/pull/3287