From jwaters at openjdk.org Sun Sep 1 16:33:24 2024 From: jwaters at openjdk.org (Julian Waters) Date: Sun, 1 Sep 2024 16:33:24 GMT Subject: RFR: 8338768: Introduce runtime lookup to check for static builds [v2] In-Reply-To: <56GIZnufresPSrWCWHPkbY9-qCGlm20L-nbXUi5DFv8=.445586cf-37dc-45ce-9b91-9d0a6c85e5ca@github.com> References: <56GIZnufresPSrWCWHPkbY9-qCGlm20L-nbXUi5DFv8=.445586cf-37dc-45ce-9b91-9d0a6c85e5ca@github.com> Message-ID: On Wed, 21 Aug 2024 22:14:40 GMT, Magnus Ihse Bursie wrote: >> As a preparation for Hermetic Java, we need to have a way to look up during runtime if we are using a statically linked library or not. >> >> This change will be the first step needed towards compiling the object files only once, and then link them into either dynamic or static libraries. (The only exception will be the linktype.c[pp] files, which needs to be compiled twice, once for the dynamic libraries and once for the static libraries.) Getting there will require further work though. >> >> This is part of the changes that make up the draft PR https://github.com/openjdk/jdk/pull/19478, which I have broken out. > > Magnus Ihse Bursie has updated the pull request incrementally with one additional commit since the last revision: > > Also update build to link properly This does make me wonder: What if the new method for checking if the VM was statically linked was inlined? Then the problem comes back yet again as the object files need to be recompiled once more. This is possible if Link Time Optimization is switched on, and I don't like the implication that LTO might be removed as a result just to make this work ------------- PR Comment: https://git.openjdk.org/jdk/pull/20666#issuecomment-2323416932 From dholmes at openjdk.org Mon Sep 2 04:12:26 2024 From: dholmes at openjdk.org (David Holmes) Date: Mon, 2 Sep 2024 04:12:26 GMT Subject: RFR: 8338768: Introduce runtime lookup to check for static builds [v2] In-Reply-To: References: <56GIZnufresPSrWCWHPkbY9-qCGlm20L-nbXUi5DFv8=.445586cf-37dc-45ce-9b91-9d0a6c85e5ca@github.com> Message-ID: On Sun, 1 Sep 2024 16:30:33 GMT, Julian Waters wrote: > This does make me wonder: What if the new method for checking if the VM was statically linked was inlined? Then the problem comes back yet again as the object files need to be recompiled once more. This is possible if Link Time Optimization is switched on, and I don't like the implication that LTO might be removed as a result just to make this work Wouldn't such link-time "inlining" only appear in the object code stored within the library, not in the original object file? ------------- PR Comment: https://git.openjdk.org/jdk/pull/20666#issuecomment-2323775705 From jwaters at openjdk.org Mon Sep 2 04:15:21 2024 From: jwaters at openjdk.org (Julian Waters) Date: Mon, 2 Sep 2024 04:15:21 GMT Subject: RFR: 8338768: Introduce runtime lookup to check for static builds [v2] In-Reply-To: References: <56GIZnufresPSrWCWHPkbY9-qCGlm20L-nbXUi5DFv8=.445586cf-37dc-45ce-9b91-9d0a6c85e5ca@github.com> Message-ID: On Mon, 2 Sep 2024 04:09:19 GMT, David Holmes wrote: > > This does make me wonder: What if the new method for checking if the VM was statically linked was inlined? Then the problem comes back yet again as the object files need to be recompiled once more. This is possible if Link Time Optimization is switched on, and I don't like the implication that LTO might be removed as a result just to make this work > > Wouldn't such link-time "inlining" only appear in the object code stored within the library, not in the original object file? Ah, you're right, good catch. I got mixed up with the implementation details of different compilers there, sorry ------------- PR Comment: https://git.openjdk.org/jdk/pull/20666#issuecomment-2323778397 From abhiscxk at openjdk.org Mon Sep 2 04:35:19 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Mon, 2 Sep 2024 04:35:19 GMT Subject: RFR: 8308588: Unnecessary synchronized on GTKStyle#ICONS_MAP can be removed [v2] In-Reply-To: References: <6x-ET9JwHAubdYGbHnoAVp5FEc2VYJM4eUN5B0ReaHM=.5a6c52d7-4769-475d-9f15-9646b7a5c794@github.com> Message-ID: On Fri, 30 Aug 2024 15:14:06 GMT, Alexey Ivanov wrote: > It's possible to use `Map.of` if you put the condition as a conditional operator to each value. Yet it would make the intention less clear. Yeah that can be done but current implementation look ok to me as well. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20741#issuecomment-2323794361 From jdv at openjdk.org Mon Sep 2 04:51:18 2024 From: jdv at openjdk.org (Jayathirth D V) Date: Mon, 2 Sep 2024 04:51:18 GMT Subject: RFR: 8326027: Comparing buffered images of white background frame fails in Mac In-Reply-To: References: Message-ID: On Thu, 29 Aug 2024 04:38:29 GMT, Tejesh R wrote: > On analysis of captured image, it is observed that there are few pixels which vary slightly w.r.t to expected color. Hence tolerance is included in color comparison. > Tested in mach5 multiple time and its green. Why are we extending this test to be run on Mac now? Looks like it was Linux specific test. Also Title "Comparing buffered images of white background frame fails in Mac" makes it looks like some product issue. But changes are related to a single test, if we are making single test related changes its better to have [Testbug] or test in the title instead of issue description. This color comparison failure is happening when we are checking boundary pixels of a window or is it happening everywhere? ------------- PR Comment: https://git.openjdk.org/jdk/pull/20760#issuecomment-2323807363 From tr at openjdk.org Mon Sep 2 04:52:19 2024 From: tr at openjdk.org (Tejesh R) Date: Mon, 2 Sep 2024 04:52:19 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine In-Reply-To: References: Message-ID: On Fri, 30 Aug 2024 17:40:01 GMT, Alisen Chung wrote: >> Tolerance is required when we are going with screen capture comparison since I see slight change in intensity of colors in captured image, not really sure of what might be the exact cause for it on some machines/some test runs. Also I've seen some tests considers this tolerance while testing. I confirmed it by decoding the pixel color of captured image (Below image). >> Coming to false positives, yes this is the trade off when the test is made automatic. I see no other way to confirm the check mark with captured image. Other option left is to make the test manual one, yet I feel this way is better than manual. I've captured several runs without the fix where the captured area will be just white background and with fix when checkmark is drawn on UI scale of 2.0 it is drawn inside the area without any other interference which might have led to false positive. >> >> image > > One more thing, how did you arrive to this number as the tolerance? I assume that maybe other tests also set tolerance as 10? Yes, referenced from other test. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20723#discussion_r1740320000 From tr at openjdk.org Mon Sep 2 04:58:19 2024 From: tr at openjdk.org (Tejesh R) Date: Mon, 2 Sep 2024 04:58:19 GMT Subject: RFR: 8326027: Comparing buffered images of white background frame fails in Mac In-Reply-To: References: Message-ID: On Mon, 2 Sep 2024 04:48:54 GMT, Jayathirth D V wrote: > Why are we extending this test to be run on Mac now? Looks like it was Linux specific test. > > Also Title "Comparing buffered images of white background frame fails in Mac" makes it looks like some product issue. But changes are related to a single test, if we are making single test related changes its better to have [Testbug] or test in the title instead of issue description. > > This color comparison failure is happening when we are checking boundary pixels of a window or is it happening everywhere? 1. The product fix was linux specific, yet I guess there were review suggestions on extending the test to other OS. Hence while testing on other platforms few issues w.r.t OS for this test was observed and JBS was raised (For Windows - [JDK-8326026](https://bugs.openjdk.org/browse/JDK-8326026) - Mouse drag for a transparent frame fails in Windows) 2. Will update the title. 3. Its not happening at borders, its at random places, u can refer to the image attached in JBS. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20760#issuecomment-2323813345 From tr at openjdk.org Mon Sep 2 05:04:18 2024 From: tr at openjdk.org (Tejesh R) Date: Mon, 2 Sep 2024 05:04:18 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine In-Reply-To: References: Message-ID: On Wed, 28 Aug 2024 04:24:56 GMT, Abhishek Kumar wrote: >> Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: >> 1. Move the frame to center of the screen rather than left top. >> 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. > > @TejeshR13 Did you check the current changes on CI system? Did you observe any failure on the particular machine where it failed in CI? > As @kumarabhi006 and @alisenchung pointed out I think there might be cases of false positives with high tolerance values. > > Following are couple of suggestions: > > * Check if a lower more optimal value of tolerance works. > * Continue pixel compare till you encounter 4-5 pixels of the expected color (with tolerance) > * Adding debug logs to see which colors pass the criteria. Checking for optimal value based on collected color samples as others mentioned might not be of much use here. But as u mentioned here we can merge both the technique along with tolerance to do that. How debug logs would help in analysis? ------------- PR Comment: https://git.openjdk.org/jdk/pull/20723#issuecomment-2323818865 From jdv at openjdk.org Mon Sep 2 05:06:18 2024 From: jdv at openjdk.org (Jayathirth D V) Date: Mon, 2 Sep 2024 05:06:18 GMT Subject: RFR: 8326027: Comparing buffered images of white background frame fails in Mac In-Reply-To: References: Message-ID: <2gNF0CA-Uc1RQnpD1zSzQ-MB_ZmeKbqQ8PXzR3j4uFI=.f32ee857-b705-4169-b3ea-d96dffbd5b28@github.com> On Mon, 2 Sep 2024 04:55:58 GMT, Tejesh R wrote: > > Why are we extending this test to be run on Mac now? Looks like it was Linux specific test. > > Also Title "Comparing buffered images of white background frame fails in Mac" makes it looks like some product issue. But changes are related to a single test, if we are making single test related changes its better to have [Testbug] or test in the title instead of issue description. > > This color comparison failure is happening when we are checking boundary pixels of a window or is it happening everywhere? > > 1. The product fix was linux specific, yet I guess there were review suggestions on extending the test to other OS. Hence while testing on other platforms few issues w.r.t OS for this test was observed and JBS was raised (For Windows - [JDK-8326026](https://bugs.openjdk.org/browse/JDK-8326026) - Mouse drag for a transparent frame fails in Windows) > > 2. Will update the title. > > 3. Its not happening at borders, its at random places, u can refer to the image attached in JBS. Please share product fix for which the original test update was done. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20760#issuecomment-2323820032 From tr at openjdk.org Mon Sep 2 05:09:18 2024 From: tr at openjdk.org (Tejesh R) Date: Mon, 2 Sep 2024 05:09:18 GMT Subject: RFR: 8326027: Comparing buffered images of white background frame fails in Mac In-Reply-To: <2gNF0CA-Uc1RQnpD1zSzQ-MB_ZmeKbqQ8PXzR3j4uFI=.f32ee857-b705-4169-b3ea-d96dffbd5b28@github.com> References: <2gNF0CA-Uc1RQnpD1zSzQ-MB_ZmeKbqQ8PXzR3j4uFI=.f32ee857-b705-4169-b3ea-d96dffbd5b28@github.com> Message-ID: On Mon, 2 Sep 2024 05:03:25 GMT, Jayathirth D V wrote: > > > Why are we extending this test to be run on Mac now? Looks like it was Linux specific test. > > > Also Title "Comparing buffered images of white background frame fails in Mac" makes it looks like some product issue. But changes are related to a single test, if we are making single test related changes its better to have [Testbug] or test in the title instead of issue description. > > > This color comparison failure is happening when we are checking boundary pixels of a window or is it happening everywhere? > > > > > > ``` > > 1. The product fix was linux specific, yet I guess there were review suggestions on extending the test to other OS. Hence while testing on other platforms few issues w.r.t OS for this test was observed and JBS was raised (For Windows - [JDK-8326026](https://bugs.openjdk.org/browse/JDK-8326026) - Mouse drag for a transparent frame fails in Windows) > > > > 2. Will update the title. > > > > 3. Its not happening at borders, its at random places, u can refer to the image attached in JBS. > > ``` > > Please share product fix for which the original test update was done. JBS - [JDK-8187759](https://bugs.openjdk.org/browse/JDK-8187759): Background not refreshed when painting over a transparent JFrame PR - https://github.com/openjdk/jdk/pull/17081 ------------- PR Comment: https://git.openjdk.org/jdk/pull/20760#issuecomment-2323822709 From tr at openjdk.org Mon Sep 2 05:17:26 2024 From: tr at openjdk.org (Tejesh R) Date: Mon, 2 Sep 2024 05:17:26 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine In-Reply-To: References: Message-ID: On Fri, 30 Aug 2024 18:22:56 GMT, Harshitha Onkar wrote: >> Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: >> 1. Move the frame to center of the screen rather than left top. >> 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. > > test/jdk/java/awt/Checkbox/CheckboxCheckerScalingTest.java line 80: > >> 78: if (compareColor(pixelColor)) { >> 79: checkmarkFound = true; >> 80: break check; > > @TejeshR13 Logging the pixelColor inside the if block can be useful for debugging purpose. > You could add a counter variable here and continue until 4-5 pixels match the criteria. On failure we are saving the image, I don't think logging pixelColor would add any additional help in debugging here. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20723#discussion_r1740333346 From aturbanov at openjdk.org Mon Sep 2 07:49:21 2024 From: aturbanov at openjdk.org (Andrey Turbanov) Date: Mon, 2 Sep 2024 07:49:21 GMT Subject: RFR: 8308588: Unnecessary synchronized on GTKStyle#ICONS_MAP can be removed [v2] In-Reply-To: References: Message-ID: <3l4aLrCERUAi4fhjnWZoHLazyjJYdv5kPRasZICI2AU=.fc5b9938-006a-4873-9875-2df0ae8f2bd5@github.com> On Fri, 30 Aug 2024 04:57:56 GMT, Abhishek Kumar wrote: >> `static final Map ICONS_MAP` is modified only in `static` block. Then [com.sun.java.swing.plaf.gtk.GTKStyle#get](https://github.com/kumarabhi006/jdk/blob/73f7a5f15dbba54a98f3916ff1190520ac07874d/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKStyle.java#L892) method read from it within `synchronized (ICONS_MAP)` block. As this map is read-only and all its content is initialized in static block we can safely remove synchronized from get call. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Use Collections.unmodifiableMap and remove blank line Marked as reviewed by aturbanov (Committer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20741#pullrequestreview-2274913088 From ihse at openjdk.org Mon Sep 2 09:17:28 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Mon, 2 Sep 2024 09:17:28 GMT Subject: Integrated: 8338768: Introduce runtime lookup to check for static builds In-Reply-To: References: Message-ID: <7ZCNx3fBoTkmUDxGYAcN6eqygCSF-kxH3vBPSczQqaA=.85487425-1e4f-4496-92f7-92d7a6d69156@github.com> On Wed, 21 Aug 2024 21:53:39 GMT, Magnus Ihse Bursie wrote: > As a preparation for Hermetic Java, we need to have a way to look up during runtime if we are using a statically linked library or not. > > This change will be the first step needed towards compiling the object files only once, and then link them into either dynamic or static libraries. (The only exception will be the linktype.c[pp] files, which needs to be compiled twice, once for the dynamic libraries and once for the static libraries.) Getting there will require further work though. > > This is part of the changes that make up the draft PR https://github.com/openjdk/jdk/pull/19478, which I have broken out. This pull request has now been integrated. Changeset: a136a85b Author: Magnus Ihse Bursie URL: https://git.openjdk.org/jdk/commit/a136a85b6f5bbc92727883693c1ce31c37a82fd5 Stats: 205 lines in 12 files changed: 109 ins; 21 del; 75 mod 8338768: Introduce runtime lookup to check for static builds Co-authored-by: Magnus Ihse Bursie Co-authored-by: Jiangli Zhou Reviewed-by: prr, jiangli, alanb ------------- PR: https://git.openjdk.org/jdk/pull/20666 From aivanov at openjdk.org Mon Sep 2 11:45:20 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 2 Sep 2024 11:45:20 GMT Subject: RFR: 8326027: Comparing buffered images of white background frame fails in Mac In-Reply-To: <2gNF0CA-Uc1RQnpD1zSzQ-MB_ZmeKbqQ8PXzR3j4uFI=.f32ee857-b705-4169-b3ea-d96dffbd5b28@github.com> References: <2gNF0CA-Uc1RQnpD1zSzQ-MB_ZmeKbqQ8PXzR3j4uFI=.f32ee857-b705-4169-b3ea-d96dffbd5b28@github.com> Message-ID: On Mon, 2 Sep 2024 05:03:25 GMT, Jayathirth D V wrote: >>> Why are we extending this test to be run on Mac now? Looks like it was Linux specific test. >>> >>> Also Title "Comparing buffered images of white background frame fails in Mac" makes it looks like some product issue. But changes are related to a single test, if we are making single test related changes its better to have [Testbug] or test in the title instead of issue description. >>> >>> This color comparison failure is happening when we are checking boundary pixels of a window or is it happening everywhere? >> >> 1. The product fix was linux specific, yet I guess there were review suggestions on extending the test to other OS. Hence while testing on other platforms few issues w.r.t OS for this test was observed and JBS was raised (For Windows - [JDK-8326026](https://bugs.openjdk.org/browse/JDK-8326026) - Mouse drag for a transparent frame fails in Windows) >> 2. Will update the title. >> 3. Its not happening at borders, its at random places, u can refer to the image attached in JBS. > >> > Why are we extending this test to be run on Mac now? Looks like it was Linux specific test. >> > Also Title "Comparing buffered images of white background frame fails in Mac" makes it looks like some product issue. But changes are related to a single test, if we are making single test related changes its better to have [Testbug] or test in the title instead of issue description. >> > This color comparison failure is happening when we are checking boundary pixels of a window or is it happening everywhere? >> >> 1. The product fix was linux specific, yet I guess there were review suggestions on extending the test to other OS. Hence while testing on other platforms few issues w.r.t OS for this test was observed and JBS was raised (For Windows - [JDK-8326026](https://bugs.openjdk.org/browse/JDK-8326026) - Mouse drag for a transparent frame fails in Windows) >> >> 2. Will update the title. >> >> 3. Its not happening at borders, its at random places, u can refer to the image attached in JBS. > > Please share product fix for which the original test update was done. @jayathirthrao It looks as if image comparison is a common issue on macOS, tolerance is usually added for macOS. Sometimes colour difference is because of a color profile used; that's why the guidelines recommend setting the same common profile on all the test systems. I suspect the other reason is because of High DPI (Retina) displays on Macs. Yet it has never been confirmed or disconfirmed. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20760#issuecomment-2324545326 From mbaesken at openjdk.org Mon Sep 2 11:48:48 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Mon, 2 Sep 2024 11:48:48 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings Message-ID: We get a couple of warnings as errors on AIX because of unused variables or functions , for example : /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:665:10: error: unused variable 'exePath' [-Werror,-Wunused-variable] char exePath[PATH_MAX]; ^ /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:668:9: error: unused variable 'ret' [-Werror,-Wunused-variable] int ret; ^ /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:664:10: error: unused variable 'fn' [-Werror,-Wunused-variable] char fn[32]; ^ This seems to be related to the recent make changes 8339156: Use more fine-granular clang unused warnings https://bugs.openjdk.org/browse/JDK-8339156 (we use clang too on AIX) ------------- Commit messages: - JDK-8339364 Changes: https://git.openjdk.org/jdk/pull/20812/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20812&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339364 Stats: 61 lines in 14 files changed: 9 ins; 36 del; 16 mod Patch: https://git.openjdk.org/jdk/pull/20812.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20812/head:pull/20812 PR: https://git.openjdk.org/jdk/pull/20812 From aivanov at openjdk.org Mon Sep 2 11:50:19 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 2 Sep 2024 11:50:19 GMT Subject: RFR: 8326027: Comparing buffered images of white background frame fails in Mac In-Reply-To: References: Message-ID: On Thu, 29 Aug 2024 04:38:29 GMT, Tejesh R wrote: > On analysis of captured image, it is observed that there are few pixels which vary slightly w.r.t to expected color. Hence tolerance is included in color comparison. > Tested in mach5 multiple time and its green. > JBS - [JDK-8187759](https://bugs.openjdk.org/browse/JDK-8187759): Background not refreshed when painting over a transparent JFrame > PR - #17081 I linked the bugs in JBS and added a comment to JDK-8187759. You could've and should've added these additional details to the bug description. I mean that it was discovered while you were working on another issue. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20760#issuecomment-2324556367 From clanger at openjdk.org Mon Sep 2 12:20:20 2024 From: clanger at openjdk.org (Christoph Langer) Date: Mon, 2 Sep 2024 12:20:20 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings In-Reply-To: References: Message-ID: <21Qc2WxZ7rcyk2WSogCUe3L2ZMbctnz7QF7XdorWFn0=.6b90a395-9f9b-4408-a05f-abb0e5008b72@github.com> On Mon, 2 Sep 2024 11:43:20 GMT, Matthias Baesken wrote: > We get a couple of warnings as errors on AIX because of unused variables or functions , for example : > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:665:10: error: unused variable 'exePath' [-Werror,-Wunused-variable] > char exePath[PATH_MAX]; > ^ > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:668:9: error: unused variable 'ret' [-Werror,-Wunused-variable] > int ret; > ^ > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:664:10: error: unused variable 'fn' [-Werror,-Wunused-variable] > char fn[32]; > ^ > > This seems to be related to the recent make changes > 8339156: Use more fine-granular clang unused warnings > https://bugs.openjdk.org/browse/JDK-8339156 > (we use clang too on AIX) Looks good and seems like the warning helped to clean out coding in a few places. src/java.desktop/unix/native/common/awt/X11Color.c line 1236: > 1234: for (int i = 0; i < num_colors; i++) > 1235: alloc_col (awt_display, awtData->awt_cmap, red (rgbColors [i]), > 1236: green (rgbColors [i]), blue (rgbColors [i]), -1, Seems like indentation here could be improved a bit. ------------- Marked as reviewed by clanger (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20812#pullrequestreview-2275486151 PR Review Comment: https://git.openjdk.org/jdk/pull/20812#discussion_r1740824222 From jwaters at openjdk.org Mon Sep 2 12:36:20 2024 From: jwaters at openjdk.org (Julian Waters) Date: Mon, 2 Sep 2024 12:36:20 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings In-Reply-To: References: Message-ID: <3fqsUh2hpNUSuZdV5ABE_B39ETgruLRO5jnEYzWAN18=.b8d42416-3e95-46ff-beac-545bad8207ef@github.com> On Mon, 2 Sep 2024 11:43:20 GMT, Matthias Baesken wrote: > We get a couple of warnings as errors on AIX because of unused variables or functions , for example : > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:665:10: error: unused variable 'exePath' [-Werror,-Wunused-variable] > char exePath[PATH_MAX]; > ^ > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:668:9: error: unused variable 'ret' [-Werror,-Wunused-variable] > int ret; > ^ > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:664:10: error: unused variable 'fn' [-Werror,-Wunused-variable] > char fn[32]; > ^ > > This seems to be related to the recent make changes > 8339156: Use more fine-granular clang unused warnings > https://bugs.openjdk.org/browse/JDK-8339156 > (we use clang too on AIX) Ah, the joys of supporting a platform that isn't covered by the Actions compile and test safety net :) Looks Good, with that aside ------------- Marked as reviewed by jwaters (Committer). PR Review: https://git.openjdk.org/jdk/pull/20812#pullrequestreview-2275532558 From mbaesken at openjdk.org Mon Sep 2 12:36:20 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Mon, 2 Sep 2024 12:36:20 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings In-Reply-To: <3fqsUh2hpNUSuZdV5ABE_B39ETgruLRO5jnEYzWAN18=.b8d42416-3e95-46ff-beac-545bad8207ef@github.com> References: <3fqsUh2hpNUSuZdV5ABE_B39ETgruLRO5jnEYzWAN18=.b8d42416-3e95-46ff-beac-545bad8207ef@github.com> Message-ID: On Mon, 2 Sep 2024 12:30:43 GMT, Julian Waters wrote: > Ah, the joys of supporting a platform that isn't covered by the Actions compile and test safety net :) A Linux/clang build in the GHA would have probably shown at least a part of those errors. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20812#issuecomment-2324651948 From mbaesken at openjdk.org Mon Sep 2 13:25:51 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Mon, 2 Sep 2024 13:25:51 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v2] In-Reply-To: References: Message-ID: > We get a couple of warnings as errors on AIX because of unused variables or functions , for example : > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:665:10: error: unused variable 'exePath' [-Werror,-Wunused-variable] > char exePath[PATH_MAX]; > ^ > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:668:9: error: unused variable 'ret' [-Werror,-Wunused-variable] > int ret; > ^ > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:664:10: error: unused variable 'fn' [-Werror,-Wunused-variable] > char fn[32]; > ^ > > This seems to be related to the recent make changes > 8339156: Use more fine-granular clang unused warnings > https://bugs.openjdk.org/browse/JDK-8339156 > (we use clang too on AIX) Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: adjust indentation in X11Color.c ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20812/files - new: https://git.openjdk.org/jdk/pull/20812/files/0fca9ee0..082e6f60 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20812&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20812&range=00-01 Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20812.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20812/head:pull/20812 PR: https://git.openjdk.org/jdk/pull/20812 From mbaesken at openjdk.org Mon Sep 2 13:25:51 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Mon, 2 Sep 2024 13:25:51 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings In-Reply-To: References: Message-ID: On Mon, 2 Sep 2024 11:43:20 GMT, Matthias Baesken wrote: > We get a couple of warnings as errors on AIX because of unused variables or functions , for example : > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:665:10: error: unused variable 'exePath' [-Werror,-Wunused-variable] > char exePath[PATH_MAX]; > ^ > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:668:9: error: unused variable 'ret' [-Werror,-Wunused-variable] > int ret; > ^ > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:664:10: error: unused variable 'fn' [-Werror,-Wunused-variable] > char fn[32]; > ^ > > This seems to be related to the recent make changes > 8339156: Use more fine-granular clang unused warnings > https://bugs.openjdk.org/browse/JDK-8339156 > (we use clang too on AIX) macos-aarch64 failure seems to be https://bugs.openjdk.org/browse/JDK-8338712 (unrelated) Hi Christoph and Julian, thanks for the reviews ! ------------- PR Comment: https://git.openjdk.org/jdk/pull/20812#issuecomment-2324745071 PR Comment: https://git.openjdk.org/jdk/pull/20812#issuecomment-2324752339 From mbaesken at openjdk.org Mon Sep 2 13:25:51 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Mon, 2 Sep 2024 13:25:51 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v2] In-Reply-To: <21Qc2WxZ7rcyk2WSogCUe3L2ZMbctnz7QF7XdorWFn0=.6b90a395-9f9b-4408-a05f-abb0e5008b72@github.com> References: <21Qc2WxZ7rcyk2WSogCUe3L2ZMbctnz7QF7XdorWFn0=.6b90a395-9f9b-4408-a05f-abb0e5008b72@github.com> Message-ID: On Mon, 2 Sep 2024 12:17:57 GMT, Christoph Langer wrote: >> Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: >> >> adjust indentation in X11Color.c > > src/java.desktop/unix/native/common/awt/X11Color.c line 1236: > >> 1234: for (int i = 0; i < num_colors; i++) >> 1235: alloc_col (awt_display, awtData->awt_cmap, red (rgbColors [i]), >> 1236: green (rgbColors [i]), blue (rgbColors [i]), -1, > > Seems like indentation here could be improved a bit. Agree, I adjust this in another commit. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20812#discussion_r1740919406 From ngubarkov at openjdk.org Mon Sep 2 18:53:54 2024 From: ngubarkov at openjdk.org (Nikita Gubarkov) Date: Mon, 2 Sep 2024 18:53:54 GMT Subject: RFR: 8339341: SurfaceManager cacheMap retains strong references Message-ID: <1ecWvJLiG54e0saEz_Jjz46gzxXnqsNDagdPQ3y_BN4=.27116e44-886b-405f-9d87-ec5e82e2fd20@github.com> I moved SurfaceDataProxy cache into a separate class. Now caching level is determined by placement of the SurfaceManager.ProxyCache object instead of a "proxy key". This cache "owns" proxies and therefore strong refs via them do not prevent the cache and GraphicsConfig from being detected as weakly reachable. ------------- Commit messages: - 8339341: Make SurfaceDataProxy cache a separate entity. Changes: https://git.openjdk.org/jdk/pull/20825/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20825&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339341 Stats: 173 lines in 17 files changed: 55 ins; 55 del; 63 mod Patch: https://git.openjdk.org/jdk/pull/20825.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20825/head:pull/20825 PR: https://git.openjdk.org/jdk/pull/20825 From mdoerr at openjdk.org Mon Sep 2 20:11:18 2024 From: mdoerr at openjdk.org (Martin Doerr) Date: Mon, 2 Sep 2024 20:11:18 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v2] In-Reply-To: References: Message-ID: On Mon, 2 Sep 2024 13:25:51 GMT, Matthias Baesken wrote: >> We get a couple of warnings as errors on AIX because of unused variables or functions , for example : >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:665:10: error: unused variable 'exePath' [-Werror,-Wunused-variable] >> char exePath[PATH_MAX]; >> ^ >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:668:9: error: unused variable 'ret' [-Werror,-Wunused-variable] >> int ret; >> ^ >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:664:10: error: unused variable 'fn' [-Werror,-Wunused-variable] >> char fn[32]; >> ^ >> >> This seems to be related to the recent make changes >> 8339156: Use more fine-granular clang unused warnings >> https://bugs.openjdk.org/browse/JDK-8339156 >> (we use clang too on AIX) > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > adjust indentation in X11Color.c LGTM. Only minor nits. src/java.base/unix/native/libjava/TimeZone_md.c line 63: > 61: static const char *ETC_ENVIRONMENT_FILE = "/etc/environment"; > 62: #else > 63: static char *isFileIdentical(char* buf, size_t size, char *pathname); I think it should better be moved below `#if defined(__linux__) || defined(MACOSX)` instead of creating an else case. src/java.desktop/unix/native/common/awt/X11Color.c line 1234: > 1232: awt_allocate_systemrgbcolors (jint *rgbColors, int num_colors, > 1233: AwtGraphicsConfigDataPtr awtData) { > 1234: for (int i = 0; i < num_colors; i++) This requires C99. Is this ok for all platforms with all supported compilers? ------------- PR Review: https://git.openjdk.org/jdk/pull/20812#pullrequestreview-2276121217 PR Review Comment: https://git.openjdk.org/jdk/pull/20812#discussion_r1741226250 PR Review Comment: https://git.openjdk.org/jdk/pull/20812#discussion_r1741228253 From ihse at openjdk.org Mon Sep 2 22:35:19 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Mon, 2 Sep 2024 22:35:19 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v2] In-Reply-To: References: Message-ID: On Mon, 2 Sep 2024 20:06:06 GMT, Martin Doerr wrote: >> Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: >> >> adjust indentation in X11Color.c > > src/java.desktop/unix/native/common/awt/X11Color.c line 1234: > >> 1232: awt_allocate_systemrgbcolors (jint *rgbColors, int num_colors, >> 1233: AwtGraphicsConfigDataPtr awtData) { >> 1234: for (int i = 0; i < num_colors; i++) > > This requires C99. Is this ok for all platforms with all supported compilers? Yes, we have C11 as minimum for the JDK. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20812#discussion_r1741270798 From ihse at openjdk.org Mon Sep 2 22:35:20 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Mon, 2 Sep 2024 22:35:20 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v2] In-Reply-To: References: Message-ID: On Mon, 2 Sep 2024 13:25:51 GMT, Matthias Baesken wrote: >> We get a couple of warnings as errors on AIX because of unused variables or functions , for example : >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:665:10: error: unused variable 'exePath' [-Werror,-Wunused-variable] >> char exePath[PATH_MAX]; >> ^ >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:668:9: error: unused variable 'ret' [-Werror,-Wunused-variable] >> int ret; >> ^ >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:664:10: error: unused variable 'fn' [-Werror,-Wunused-variable] >> char fn[32]; >> ^ >> >> This seems to be related to the recent make changes >> 8339156: Use more fine-granular clang unused warnings >> https://bugs.openjdk.org/browse/JDK-8339156 >> (we use clang too on AIX) > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > adjust indentation in X11Color.c src/java.desktop/unix/native/libsplashscreen/splashscreen_sys.c line 744: > 742: int rslt = pthread_attr_init(&attr); > 743: if (rslt != 0) return; > 744: pthread_create(&thr, &attr, SplashScreenThread, (void *) splash); You don't think it would be better to check the return code? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20812#discussion_r1741271285 From azvegint at openjdk.org Tue Sep 3 01:34:33 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Tue, 3 Sep 2024 01:34:33 GMT Subject: RFR: 8190329: [macos] Swing InterOp Platform.exit() crash [v4] In-Reply-To: References: Message-ID: <3ez6tcjKXEg8qL_WtK2PJwItVYQXGLE10BtQsCqr7h4=.ceea8f93-9273-46f2-9c18-68e013a7d714@github.com> On Fri, 30 Aug 2024 07:23:54 GMT, Prasanta Sadhukhan wrote: >> The testcase calls Platform.exit before the dialog is made visible but >> on macOS, JavaFX takes over the AppKit thread and uses that as the FX application thread. As part of the FX platform shutdown process, it detaches that thread from the JVM. This means that the AppKit thread is no longer available to Java processes >> so AWT crashes when it ties to access appkit thread. >> Fix is made to check if the thread has been detached for move-resize notification event before proceeding.. > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Use cached Env only for AWT NSApplication and not for Override-delegate Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20688#pullrequestreview-2276266985 From dholmes at openjdk.org Tue Sep 3 02:28:18 2024 From: dholmes at openjdk.org (David Holmes) Date: Tue, 3 Sep 2024 02:28:18 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v2] In-Reply-To: References: Message-ID: On Mon, 2 Sep 2024 22:32:34 GMT, Magnus Ihse Bursie wrote: >> Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: >> >> adjust indentation in X11Color.c > > src/java.desktop/unix/native/libsplashscreen/splashscreen_sys.c line 744: > >> 742: int rslt = pthread_attr_init(&attr); >> 743: if (rslt != 0) return; >> 744: pthread_create(&thr, &attr, SplashScreenThread, (void *) splash); > > You don't think it would be better to check the return code? This code is devoid of pretty much all error handling and logging, but I agree that a simple fprintf on error would be useful. Also doesn't a call like this trigger the warning about ignoring a function result, or have we disabled that one? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20812#discussion_r1741354811 From abhiscxk at openjdk.org Tue Sep 3 05:50:00 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Tue, 3 Sep 2024 05:50:00 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v2] In-Reply-To: References: Message-ID: > Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. > Test removed from `Problem-list` file as well. > > CI testing link is posted in JBS. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Remove secondaryloop code ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20791/files - new: https://git.openjdk.org/jdk/pull/20791/files/797c8868..e1f9c9c5 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20791&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20791&range=00-01 Stats: 143 lines in 1 file changed: 53 ins; 59 del; 31 mod Patch: https://git.openjdk.org/jdk/pull/20791.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20791/head:pull/20791 PR: https://git.openjdk.org/jdk/pull/20791 From abhiscxk at openjdk.org Tue Sep 3 05:50:00 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Tue, 3 Sep 2024 05:50:00 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v2] In-Reply-To: References: Message-ID: On Sat, 31 Aug 2024 00:48:12 GMT, Harshitha Onkar wrote: > I'm not sure if the SecondaryLoop code is required for this test or it can be simplified? I have tried simplifying the test code and removed SecondaryLoop code. Tested the current changes in CI across all platforms and no failure observed. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2325651191 From abhiscxk at openjdk.org Tue Sep 3 05:53:19 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Tue, 3 Sep 2024 05:53:19 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v2] In-Reply-To: References: Message-ID: On Tue, 3 Sep 2024 05:50:00 GMT, Abhishek Kumar wrote: >> Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. >> Test removed from `Problem-list` file as well. >> >> CI testing link is posted in JBS. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Remove secondaryloop code @prsadhuk As we were discussing about the test change and removal of SecondaryLoop change, I tested the current changes without the fix proposed in [JDK-8007563](https://bugs.openjdk.org/browse/JDK-8007563) and test failed which is correct. After applying the fix, test is able to pass. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2325654807 From ihse at openjdk.org Tue Sep 3 05:55:18 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Tue, 3 Sep 2024 05:55:18 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v2] In-Reply-To: References: Message-ID: <1YazhBzFJBBSy6KnqHuWOBFYfBQgx2ObU5WNlgb97J8=.8015a1da-4780-4738-88fd-886b75bee195@github.com> On Tue, 3 Sep 2024 02:25:16 GMT, David Holmes wrote: > Also doesn't a call like this trigger the warning about ignoring a function result, or have we disabled that one? Such a warning would be horrible to have enable. Then you would have to read the value of every function that thought it should return a value, even if it was just intended as some additional information that perhaps not everyone wanted to use. (And then you could not just store it into a variable and ignore it, since that would trigger the "unused variable" warning! ;-)) I know IntelliJ can provide warnings when ignoring the return value of a few select JDK methods that are often used incorrectly, but then they had to annotate these specially. I don't know if there is any similar kind of annotation for clang/gcc that can warn about ignoring return values that really, really shouldn't be ignored, but I'd guess not. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20812#discussion_r1741464573 From abhiscxk at openjdk.org Tue Sep 3 06:11:19 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Tue, 3 Sep 2024 06:11:19 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v2] In-Reply-To: References: Message-ID: On Tue, 3 Sep 2024 05:50:00 GMT, Abhishek Kumar wrote: >> Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. >> Test removed from `Problem-list` file as well. >> >> CI testing link is posted in JBS. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Remove secondaryloop code @prsadhuk Ran the test with uiscale of 2 and test passed across all platforms. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2325673178 From psadhukhan at openjdk.org Tue Sep 3 06:11:20 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Tue, 3 Sep 2024 06:11:20 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v2] In-Reply-To: References: Message-ID: On Tue, 3 Sep 2024 05:50:43 GMT, Abhishek Kumar wrote: > @prsadhuk As we were discussing about the test change and removal of SecondaryLoop change, I tested the current changes without the fix proposed in [JDK-8007563](https://bugs.openjdk.org/browse/JDK-8007563) and test failed which is correct. After applying the fix, test is able to pass. Secondary loop was added for JDK-8078269 not for JDK-8007563 so you need to check if test fail without Secondary loop without that fix and passes with the fix.. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2325676196 From dholmes at openjdk.org Tue Sep 3 06:18:18 2024 From: dholmes at openjdk.org (David Holmes) Date: Tue, 3 Sep 2024 06:18:18 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v2] In-Reply-To: <1YazhBzFJBBSy6KnqHuWOBFYfBQgx2ObU5WNlgb97J8=.8015a1da-4780-4738-88fd-886b75bee195@github.com> References: <1YazhBzFJBBSy6KnqHuWOBFYfBQgx2ObU5WNlgb97J8=.8015a1da-4780-4738-88fd-886b75bee195@github.com> Message-ID: On Tue, 3 Sep 2024 05:52:31 GMT, Magnus Ihse Bursie wrote: >> This code is devoid of pretty much all error handling and logging, but I agree that a simple fprintf on error would be useful. >> Also doesn't a call like this trigger the warning about ignoring a function result, or have we disabled that one? > >> Also doesn't a call like this trigger the warning about ignoring a function result, or have we disabled that one? > > Such a warning would be horrible to have enable. Then you would have to read the value of every function that thought it should return a value, even if it was just intended as some additional information that perhaps not everyone wanted to use. (And then you could not just store it into a variable and ignore it, since that would trigger the "unused variable" warning! ;-)) > > I know IntelliJ can provide warnings when ignoring the return value of a few select JDK methods that are often used incorrectly, but then they had to annotate these specially. I don't know if there is any similar kind of annotation for clang/gcc that can warn about ignoring return values that really, really shouldn't be ignored, but I'd guess not. At one stage we started using the idiom: (void) someFunc(); to tell the compiler to not warn about the unused result. IIRC that stopped working. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20812#discussion_r1741484485 From jwaters at openjdk.org Tue Sep 3 06:45:18 2024 From: jwaters at openjdk.org (Julian Waters) Date: Tue, 3 Sep 2024 06:45:18 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v2] In-Reply-To: References: <1YazhBzFJBBSy6KnqHuWOBFYfBQgx2ObU5WNlgb97J8=.8015a1da-4780-4738-88fd-886b75bee195@github.com> Message-ID: On Tue, 3 Sep 2024 06:16:06 GMT, David Holmes wrote: >>> Also doesn't a call like this trigger the warning about ignoring a function result, or have we disabled that one? >> >> Such a warning would be horrible to have enable. Then you would have to read the value of every function that thought it should return a value, even if it was just intended as some additional information that perhaps not everyone wanted to use. (And then you could not just store it into a variable and ignore it, since that would trigger the "unused variable" warning! ;-)) >> >> I know IntelliJ can provide warnings when ignoring the return value of a few select JDK methods that are often used incorrectly, but then they had to annotate these specially. I don't know if there is any similar kind of annotation for clang/gcc that can warn about ignoring return values that really, really shouldn't be ignored, but I'd guess not. > > At one stage we started using the idiom: > > (void) someFunc(); > > to tell the compiler to not warn about the unused result. IIRC that stopped working. Not entirely sure about clang, but casting to void to silence warnings should still work for gcc ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20812#discussion_r1741510831 From mbaesken at openjdk.org Tue Sep 3 07:13:19 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Tue, 3 Sep 2024 07:13:19 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v2] In-Reply-To: References: <1YazhBzFJBBSy6KnqHuWOBFYfBQgx2ObU5WNlgb97J8=.8015a1da-4780-4738-88fd-886b75bee195@github.com> Message-ID: On Tue, 3 Sep 2024 06:42:42 GMT, Julian Waters wrote: >> At one stage we started using the idiom: >> >> (void) someFunc(); >> >> to tell the compiler to not warn about the unused result. IIRC that stopped working. > > Not entirely sure about clang, but casting to void to silence warnings should still work for gcc > You don't think it would be better to check the return code? Hi , maybe we could check it ; in HS code we mostly do (but there we have UL). But would be a separate PR I guess (splashscreen_sys.m on macOS has the same issue) . ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20812#discussion_r1741542559 From tr at openjdk.org Tue Sep 3 07:26:21 2024 From: tr at openjdk.org (Tejesh R) Date: Tue, 3 Sep 2024 07:26:21 GMT Subject: RFR: 8308588: Unnecessary synchronized on GTKStyle#ICONS_MAP can be removed [v2] In-Reply-To: References: Message-ID: <4VUMKIE-_v9i5OD7bCDaAQEFUDPRDreE-L6ulHxSNSc=.03f889aa-601b-4bd7-9e4f-2d0b1ea97b2a@github.com> On Fri, 30 Aug 2024 04:57:56 GMT, Abhishek Kumar wrote: >> `static final Map ICONS_MAP` is modified only in `static` block. Then [com.sun.java.swing.plaf.gtk.GTKStyle#get](https://github.com/kumarabhi006/jdk/blob/73f7a5f15dbba54a98f3916ff1190520ac07874d/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKStyle.java#L892) method read from it within `synchronized (ICONS_MAP)` block. As this map is read-only and all its content is initialized in static block we can safely remove synchronized from get call. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Use Collections.unmodifiableMap and remove blank line Looks good to me. ------------- Marked as reviewed by tr (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20741#pullrequestreview-2276611822 From mbaesken at openjdk.org Tue Sep 3 07:26:53 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Tue, 3 Sep 2024 07:26:53 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v3] In-Reply-To: References: Message-ID: > We get a couple of warnings as errors on AIX because of unused variables or functions , for example : > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:665:10: error: unused variable 'exePath' [-Werror,-Wunused-variable] > char exePath[PATH_MAX]; > ^ > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:668:9: error: unused variable 'ret' [-Werror,-Wunused-variable] > int ret; > ^ > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:664:10: error: unused variable 'fn' [-Werror,-Wunused-variable] > char fn[32]; > ^ > > This seems to be related to the recent make changes > 8339156: Use more fine-granular clang unused warnings > https://bugs.openjdk.org/browse/JDK-8339156 > (we use clang too on AIX) Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: TimeZone_md move platform stuff ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20812/files - new: https://git.openjdk.org/jdk/pull/20812/files/082e6f60..e20948ca Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20812&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20812&range=01-02 Stats: 8 lines in 1 file changed: 2 ins; 6 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20812.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20812/head:pull/20812 PR: https://git.openjdk.org/jdk/pull/20812 From mbaesken at openjdk.org Tue Sep 3 07:26:53 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Tue, 3 Sep 2024 07:26:53 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v2] In-Reply-To: References: Message-ID: <0_Av5QvMB9nUSbRIN-x2Z6OhkN__s0pzRSKw-8kEGLg=.7e4115e6-2f3a-4270-8fd7-f85ea8b2c137@github.com> On Mon, 2 Sep 2024 13:25:51 GMT, Matthias Baesken wrote: >> We get a couple of warnings as errors on AIX because of unused variables or functions , for example : >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:665:10: error: unused variable 'exePath' [-Werror,-Wunused-variable] >> char exePath[PATH_MAX]; >> ^ >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:668:9: error: unused variable 'ret' [-Werror,-Wunused-variable] >> int ret; >> ^ >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:664:10: error: unused variable 'fn' [-Werror,-Wunused-variable] >> char fn[32]; >> ^ >> >> This seems to be related to the recent make changes >> 8339156: Use more fine-granular clang unused warnings >> https://bugs.openjdk.org/browse/JDK-8339156 >> (we use clang too on AIX) > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > adjust indentation in X11Color.c I would suggest creating a JBS issue and later PR for the pthread_create return code checking (both unix and macos). ------------- PR Comment: https://git.openjdk.org/jdk/pull/20812#issuecomment-2325785214 From abhiscxk at openjdk.org Tue Sep 3 07:58:20 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Tue, 3 Sep 2024 07:58:20 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v2] In-Reply-To: References: Message-ID: On Tue, 3 Sep 2024 06:08:34 GMT, Prasanta Sadhukhan wrote: > Secondary loop was added for JDK-8078269 not for JDK-8007563 so you need to check if test fail without Secondary loop without that fix and passes with the fix.. I tested without the fix for JDK-8078269 for different scenarion: 1. Old test i.e. with SecondaryLoop with Thread.sleep(200) **Test Failed for Windows platform** 2. Old test i.e. with SecondaryLoop with Thread.sleep(500) **Test Passed** 3. Changed test i.e without SecondaryLoop with added robot.delay(200) **Test Failed for Windows platform** 4. Changed test i.e. without SecondaryLoop with added robot.delay(500) **Test Passed** Since the old test with longer delay (500 ms) and changed test with delay of 500 ms passed without the fix of JDK-8078269, looks like the reason for failure could be less delay. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2325841922 From psadhukhan at openjdk.org Tue Sep 3 08:44:22 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Tue, 3 Sep 2024 08:44:22 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v2] In-Reply-To: References: Message-ID: <4-qerxAYf6Y4GFXtFei387XBRBTzCvwK8WfXXXE_Rrc=.c1abe092-ba3f-4c0b-b9ec-ed42cc95833a@github.com> On Tue, 3 Sep 2024 05:50:00 GMT, Abhishek Kumar wrote: >> Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. >> Test removed from `Problem-list` file as well. >> >> CI testing link is posted in JBS. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Remove secondaryloop code I am not sure why secondary loop was added in the testcase for JDK-8078269.. JDK-8078269 issue was `TabbedPane.tabAreaBackground` should have precedence over `setBackground` but it was not working after JDK-8007563.. The 8007563 tests for non-opaque case whereas 8078269 issue was for opaque. It seems if we put `UIManager.put("TabbedPane.tabAreaBackground", Color.GREEN); ` then the tabbedpane areas where there are no tabs are not GREEN but RED... Seems like we need a new testcase for JDK-8078269 and do away with secondary loop in 8007563 testcase.. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2325936371 From tr at openjdk.org Tue Sep 3 09:20:36 2024 From: tr at openjdk.org (Tejesh R) Date: Tue, 3 Sep 2024 09:20:36 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v2] In-Reply-To: References: Message-ID: <4j7l91NuGvEVoon6bXXiMJmdZybXIu4jOLDZVJ0G36E=.350fad58-1fe6-47a1-a6cd-ce50f1aab539@github.com> > Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: > 1. Move the frame to center of the screen rather than left top. > 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. Tejesh R has updated the pull request incrementally with one additional commit since the last revision: Checker pattern comparison ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20723/files - new: https://git.openjdk.org/jdk/pull/20723/files/cfd2da7b..4c33680d Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20723&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20723&range=00-01 Stats: 25 lines in 1 file changed: 15 ins; 3 del; 7 mod Patch: https://git.openjdk.org/jdk/pull/20723.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20723/head:pull/20723 PR: https://git.openjdk.org/jdk/pull/20723 From mdoerr at openjdk.org Tue Sep 3 09:33:20 2024 From: mdoerr at openjdk.org (Martin Doerr) Date: Tue, 3 Sep 2024 09:33:20 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v3] In-Reply-To: References: Message-ID: On Tue, 3 Sep 2024 07:26:53 GMT, Matthias Baesken wrote: >> We get a couple of warnings as errors on AIX because of unused variables or functions , for example : >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:665:10: error: unused variable 'exePath' [-Werror,-Wunused-variable] >> char exePath[PATH_MAX]; >> ^ >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:668:9: error: unused variable 'ret' [-Werror,-Wunused-variable] >> int ret; >> ^ >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:664:10: error: unused variable 'fn' [-Werror,-Wunused-variable] >> char fn[32]; >> ^ >> >> This seems to be related to the recent make changes >> 8339156: Use more fine-granular clang unused warnings >> https://bugs.openjdk.org/browse/JDK-8339156 >> (we use clang too on AIX) > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > TimeZone_md move platform stuff Thanks for the update! I also think that adding result checks is better in a separate RFE. This build fix is good to go IMHO. ------------- Marked as reviewed by mdoerr (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20812#pullrequestreview-2276906529 From tr at openjdk.org Tue Sep 3 09:40:22 2024 From: tr at openjdk.org (Tejesh R) Date: Tue, 3 Sep 2024 09:40:22 GMT Subject: RFR: 8326027: Comparing buffered images of white background frame fails in Mac In-Reply-To: References: <0FKvhBMfDuyvzus_Q_sjhmFB02FPipKX9p54KNy6w0k=.cf25ba18-9c25-4079-aeae-c2ffeaf0eafe@github.com> Message-ID: <9EEL4ctBHQI73B_nmGvnucR4LMefzbGCpSUd1URgr8o=.cc576bd9-025a-4aec-83e1-f66388de3629@github.com> On Fri, 30 Aug 2024 07:20:47 GMT, Tejesh R wrote: > > > Have you checked what is the root cause? Are the pixels drawn incorrectly in the frame, or is the robot distorting the colors when it grabs the pixels? > > > > > > The issue occurs intermittently/might be even host specific. It occurs when Robot.createMultiResolutionScreenCapture is used to capture HiDPI image and comparing them. I believe it's related to Robot capture, rather than pixel drawn incorrectly since we haven't observed such case in headless test which actually compares colors using Graphics paint to buffered image. > > I assume it's the opposite: if `Robot.createMultiResolutionScreenCapture` was used, the colours would be accurate (as displayed); whereas `Robot.createScreenCapture` scales down the screenshot which may introduce colour inaccuracy. > > > > I wonder whether the tolerance wouldn't be required if `Robot.createMultiResolutionScreenCapture` was used to create the screenshot and then analysing the original image which didn't go through down-scaling in High DPI environment. > > > > > > Yes, I have observed that some of the HiDPI image capture have this shades of pixels from expected which would require tolerance to be considered while comparing. > > This is why I asked the question: does the comparison remain accurate without the need for tolerance if you use `Robot.createMultiResolutionScreenCapture` and use the highest resolution from the returned multi-resolution image? I couldn't reproduce the issue neither with `Robot.createMultiResolutionScreenCapture` nor with `Robot.createScreenCapture` since the failure occurs intermittently, not able to say anything about using `Robot.createMultiResolutionScreenCapture` instead of `Robot.createScreenCapture` . ------------- PR Comment: https://git.openjdk.org/jdk/pull/20760#issuecomment-2326063167 From abhiscxk at openjdk.org Tue Sep 3 10:40:19 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Tue, 3 Sep 2024 10:40:19 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v2] In-Reply-To: <4-qerxAYf6Y4GFXtFei387XBRBTzCvwK8WfXXXE_Rrc=.c1abe092-ba3f-4c0b-b9ec-ed42cc95833a@github.com> References: <4-qerxAYf6Y4GFXtFei387XBRBTzCvwK8WfXXXE_Rrc=.c1abe092-ba3f-4c0b-b9ec-ed42cc95833a@github.com> Message-ID: On Tue, 3 Sep 2024 08:42:03 GMT, Prasanta Sadhukhan wrote: > I am not sure why secondary loop was added in the testcase for JDK-8078269.. That is unclear to me as well. > JDK-8078269 issue was `TabbedPane.tabAreaBackground` should have precedence over `setBackground` but it was not working after JDK-8007563.. The 8007563 tests for non-opaque case whereas 8078269 issue was for opaque. It seems if we put `UIManager.put("TabbedPane.tabAreaBackground", Color.GREEN); ` then the tabbedpane areas where there are no tabs are not GREEN but RED... Seems like we need a new testcase for JDK-8078269 and do away with secondary loop in 8007563 testcase.. This issue still exists with the existing implementation in MetalTabbedPaneUI. If we add `UIManager.put("TabbedPane.tabAreaBackground", Color.GREEN); ` to the existing test then the expected output is that `the tabbedpane areas where there are no tabs should be GREEN` but it is `RED` and the reason is the **background color instance check of UIResource** at [L905](https://github.com/kumarabhi006/jdk/blob/73f7a5f15dbba54a98f3916ff1190520ac07874d/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalTabbedPaneUI.java#L905). Since `background is an instance of Color object` the condition evaluates to **false** and the graphic's object color is set to the background of component which is RED. I think removal of SecondaryLoop should be ok for this PR. And for JDK-8078269 as you suggested we may need a new test case which checks for the `UIManager.put("TabbedPane.tabAreaBackground", Color.GREEN);` as the property is not tested here. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2326188554 From mbaesken at openjdk.org Tue Sep 3 12:05:25 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Tue, 3 Sep 2024 12:05:25 GMT Subject: Integrated: 8339364: AIX build fails: various unused variable and function warnings In-Reply-To: References: Message-ID: On Mon, 2 Sep 2024 11:43:20 GMT, Matthias Baesken wrote: > We get a couple of warnings as errors on AIX because of unused variables or functions , for example : > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:665:10: error: unused variable 'exePath' [-Werror,-Wunused-variable] > char exePath[PATH_MAX]; > ^ > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:668:9: error: unused variable 'ret' [-Werror,-Wunused-variable] > int ret; > ^ > /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:664:10: error: unused variable 'fn' [-Werror,-Wunused-variable] > char fn[32]; > ^ > > This seems to be related to the recent make changes > 8339156: Use more fine-granular clang unused warnings > https://bugs.openjdk.org/browse/JDK-8339156 > (we use clang too on AIX) This pull request has now been integrated. Changeset: 8ea6adc6 Author: Matthias Baesken URL: https://git.openjdk.org/jdk/commit/8ea6adc623ca2183046d794eba806065deea916e Stats: 65 lines in 14 files changed: 9 ins; 40 del; 16 mod 8339364: AIX build fails: various unused variable and function warnings Reviewed-by: mdoerr, clanger, jwaters ------------- PR: https://git.openjdk.org/jdk/pull/20812 From mbaesken at openjdk.org Tue Sep 3 12:09:23 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Tue, 3 Sep 2024 12:09:23 GMT Subject: RFR: 8339364: AIX build fails: various unused variable and function warnings [v3] In-Reply-To: References: Message-ID: On Tue, 3 Sep 2024 07:26:53 GMT, Matthias Baesken wrote: >> We get a couple of warnings as errors on AIX because of unused variables or functions , for example : >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:665:10: error: unused variable 'exePath' [-Werror,-Wunused-variable] >> char exePath[PATH_MAX]; >> ^ >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:668:9: error: unused variable 'ret' [-Werror,-Wunused-variable] >> int ret; >> ^ >> /priv/jenkins/client-home/workspace/openjdk-jdk-dev-aix_ppc64-opt/jdk/src/java.base/unix/native/libjava/ProcessHandleImpl_unix.c:664:10: error: unused variable 'fn' [-Werror,-Wunused-variable] >> char fn[32]; >> ^ >> >> This seems to be related to the recent make changes >> 8339156: Use more fine-granular clang unused warnings >> https://bugs.openjdk.org/browse/JDK-8339156 >> (we use clang too on AIX) > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > TimeZone_md move platform stuff I created https://bugs.openjdk.org/browse/JDK-8339475 for the pthread_create return code checking. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20812#issuecomment-2326356942 From ihse at openjdk.org Tue Sep 3 13:02:55 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Tue, 3 Sep 2024 13:02:55 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher Message-ID: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). ------------- Commit messages: - Makefile changes needed for static-launcher and static-jdk-image targets - Incorporate changes from leyden/hermetic-java-runtime that allows running a static launcher Changes: https://git.openjdk.org/jdk/pull/20837/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20837&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339480 Stats: 429 lines in 22 files changed: 351 ins; 5 del; 73 mod Patch: https://git.openjdk.org/jdk/pull/20837.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20837/head:pull/20837 PR: https://git.openjdk.org/jdk/pull/20837 From ihse at openjdk.org Tue Sep 3 13:02:55 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Tue, 3 Sep 2024 13:02:55 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> Message-ID: On Tue, 3 Sep 2024 12:50:01 GMT, Magnus Ihse Bursie wrote: > As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. > > This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. > > All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). @jianglizhou Can you please check if there are any other contributors that should be acknowledged? The `static-jdk` image is enough to run a simple HelloWorld java program; however it cannot yet run JTReg tests. The reason for this is, afaict, that the javac launcher is missing. I am planning to examine if it is possible to add a small shim `javac` launcher that calls the static `java` with the proper main class. (And similarly for the other launchers.) The goal here must, after all, be that we should be able to run the normal jtreg tests on the `static-jdk` image. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20837#issuecomment-2326445877 PR Comment: https://git.openjdk.org/jdk/pull/20837#issuecomment-2326452510 From psadhukhan at openjdk.org Tue Sep 3 13:46:23 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Tue, 3 Sep 2024 13:46:23 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v2] In-Reply-To: References: <4-qerxAYf6Y4GFXtFei387XBRBTzCvwK8WfXXXE_Rrc=.c1abe092-ba3f-4c0b-b9ec-ed42cc95833a@github.com> Message-ID: On Tue, 3 Sep 2024 10:37:20 GMT, Abhishek Kumar wrote: > > I am not sure why secondary loop was added in the testcase for JDK-8078269.. > > That is unclear to me as well. > > > JDK-8078269 issue was `TabbedPane.tabAreaBackground` should have precedence over `setBackground` but it was not working after JDK-8007563.. The 8007563 tests for non-opaque case whereas 8078269 issue was for opaque. It seems if we put `UIManager.put("TabbedPane.tabAreaBackground", Color.GREEN); ` then the tabbedpane areas where there are no tabs are not GREEN but RED... Seems like we need a new testcase for JDK-8078269 and do away with secondary loop in 8007563 testcase.. > > This issue still exists with the existing implementation in MetalTabbedPaneUI. If we add `UIManager.put("TabbedPane.tabAreaBackground", Color.GREEN); ` to the existing test then the expected output is that `the tabbedpane areas where there are no tabs should be GREEN` but it is `RED` and the reason is the **background color instance check of UIResource** at [L905](https://github.com/kumarabhi006/jdk/blob/73f7a5f15dbba54a98f3916ff1190520ac07874d/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalTabbedPaneUI.java#L905). Since `background is an instance of Color object` the condition evaluates to **false** and the graphic's object color is set to the background of component which is RED. > > I think removal of SecondaryLoop should be ok for this PR. And for JDK-8078269 as you suggested we may need a new test case which checks for the `UIManager.put("TabbedPane.tabAreaBackground", Color.GREEN);` as the property is not tested here. As per https://mail.openjdk.org/pipermail/swing-dev/2015-May/004521.html secondary loop was added for > Also inappropriate design chosen for the 8007563 reg test code affected test results stability. It also has been fixed. I guess because pre-2018 our tests was run in samevm mode so there might be some stability issue and since it has been changed to othervm mode by default since '18, I guess this loop is not needed. Also, as per the discussion for the webrev, it seems the "background" color, if set, was given precedence over property or in other words if `background color instance check of UIResource` means if background color is not set by user and is set by L&F which in case of MetalL&F is `"TabbedPane.background", controlShadow,` which is UIResource and in this case if `TabbedPane.tabAreaBackground` is set, TabbedPane.tabAreaBackground will take precedence but if background Color set by user as is in this case in the testcase, it will not be instance of UIResource but Color so background color will take precedence ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2326565674 From honkar at openjdk.org Tue Sep 3 16:44:19 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 3 Sep 2024 16:44:19 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v2] In-Reply-To: References: Message-ID: On Sat, 31 Aug 2024 09:08:59 GMT, Manukumar V S wrote: >> This is a highly intermittent failure, and it failed only once in CI on a particular windows machine and passed on all other runs. >> >> Failure reason: >> When the button was displayed for the first time, the focus rectangle drawn on the button text(Button A) was not seen(failure images attached in the bug). >> >> Fix: >> To stabilize the test, I have added a line -> button.setFocusPainted(false), so that the focus rectangle will not be painted > > Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: > > Review Comments Fixed : Further stabilized the test by increasing the delay as well as removing some unwanted lines of code frame.setExtendedState(JFrame.MAXIMIZED_BOTH); System.out.println("Frame is maximized"); robot.waitForIdle(); You missed adding delays after frame state changes, in the above case after robot.waitForIdle() adding robot.delay(100) can stabilize the test. This applies to all the places where frame.setExtendedState() is used. ------------- Changes requested by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20777#pullrequestreview-2277965584 From serb at openjdk.org Tue Sep 3 17:10:32 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Tue, 3 Sep 2024 17:10:32 GMT Subject: RFR: 8337681: PNGImageWriter uses much more memory than necessary [v2] In-Reply-To: <8ZstKFyu435jMQ9_44gJwjCtz1N1at3B_wqbsDi2msE=.aede545e-7d62-4af6-9f51-5682a5281ac3@github.com> References: <8ZstKFyu435jMQ9_44gJwjCtz1N1at3B_wqbsDi2msE=.aede545e-7d62-4af6-9f51-5682a5281ac3@github.com> Message-ID: On Thu, 1 Aug 2024 21:51:04 GMT, Daniel Gredler wrote: >> At some point the `JPEGImageWriter` was optimized to reduce duplication / copying of rasters and data buffers (see `JDK-6266748`). However, `PNGImageWriter` never received a similar optimization, and is making unnecessary copies of raster and data buffers whenever PNG images are written. >> >> Measurements: In a local test, `PNGImageWriter.write( )` and callees were initially showing up as an allocation hotspot (~400k objects / ~65 MB allocated), but after these optimizations I'm seeing much better numbers (~400 objects / ~740 KB allocated). > > Daniel Gredler has updated the pull request incrementally with two additional commits since the last revision: > > - JDK-8337681: add tests for TYPE_4BYTE_ABGR > - JDK-8337681: add tests for TYPE_INT_RGB src/java.desktop/share/classes/com/sun/imageio/plugins/png/PNGImageWriter.java line 924: > 922: for (int row = minY + yOffset; row < minY + height; row += ySkip) { > 923: Raster ras; > 924: if (image instanceof BufferedImage bi) { Do we really need to run these two blocks in the loop for each iteration? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20432#discussion_r1742404140 From mvs at openjdk.org Tue Sep 3 17:46:34 2024 From: mvs at openjdk.org (Manukumar V S) Date: Tue, 3 Sep 2024 17:46:34 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v3] In-Reply-To: References: Message-ID: <6R66oJxdA9T-yG_RNvY_uKjpcn5twfYGo4pfDEwnNg8=.7b0effbd-cf33-45ed-babe-f8e08f8a74c0@github.com> > This is a highly intermittent failure, and it failed only once in CI on a particular windows machine and passed on all other runs. > > Failure reason: > When the button was displayed for the first time, the focus rectangle drawn on the button text(Button A) was not seen(failure images attached in the bug). > > Fix: > To stabilize the test, I have added a line -> button.setFocusPainted(false), so that the focus rectangle will not be painted Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: Review comments fixed : Added a delay after the frame state change ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20777/files - new: https://git.openjdk.org/jdk/pull/20777/files/3e8e35a6..866cd952 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20777&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20777&range=01-02 Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20777.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20777/head:pull/20777 PR: https://git.openjdk.org/jdk/pull/20777 From mvs at openjdk.org Tue Sep 3 17:49:17 2024 From: mvs at openjdk.org (Manukumar V S) Date: Tue, 3 Sep 2024 17:49:17 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v2] In-Reply-To: References: Message-ID: <0Vl3HPfpZNgmfvfU06ZedENBeUj4RLxrjUVR9VuRCoI=.bcb0a236-d5e1-40ef-9a50-164d435a17b9@github.com> On Tue, 3 Sep 2024 16:41:26 GMT, Harshitha Onkar wrote: > ``` > frame.setExtendedState(JFrame.MAXIMIZED_BOTH); > System.out.println("Frame is maximized"); > robot.waitForIdle(); > ``` > > You missed adding delays after frame state changes, in the above case after robot.waitForIdle() adding robot.delay(100) can stabilize the test. This applies to all the places where frame.setExtendedState() is used. Added the delay after the frame 'Maximized' and there is already a delay in getButtonImage() just before taking a screenshot, so that will cover the 'Normal' case. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20777#issuecomment-2327094982 From honkar at openjdk.org Tue Sep 3 18:05:20 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 3 Sep 2024 18:05:20 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v3] In-Reply-To: References: Message-ID: <3yEPG2oqnrzRqCVmUvnAduZjnad0vxgMUgHEUWY742w=.d15011b3-50cc-4641-9902-9333dbf31fd6@github.com> On Sat, 31 Aug 2024 09:09:22 GMT, Manukumar V S wrote: > Individual robot.delay() can be added after UI creation and when frame state is changed to stabilize the test. You are still missing some delays. @@ -124,16 +125,15 @@ public void runTest() throws Exception { try { robot = new Robot(); + robot.waitForIdle(); + robot.delay(1000); // delay after UI creation if (focusGainedLatch.await(3, TimeUnit.SECONDS)) { System.out.println("Button focus gained..."); } else { System.out.println("Button focus not gained..."); throw new RuntimeException( "Can't gain focus on button even after waiting " + "too long.."); } System.out.println("Getting initial button image..image1"); @@ -142,16 +142,18 @@ public void runTest() throws Exception { // some platforms may not support maximize frame if (frame.getToolkit().isFrameStateSupported( JFrame.MAXIMIZED_BOTH)) { - robot.waitForIdle(); // unnecessary waitForIdle can be removed // maximize frame from normal size frame.setExtendedState(JFrame.MAXIMIZED_BOTH); System.out.println("Frame is maximized"); robot.waitForIdle(); robot.delay(100); if (frame.getToolkit().isFrameStateSupported(JFrame.NORMAL)) { System.out.println("Frame is back to normal"); // resize from maximum size to normal frame.setExtendedState(JFrame.NORMAL); + robot.waitForIdle(); + robot.delay(100); // please add these two lines after frame state is changed again. @@ -192,7 +194,7 @@ public void runTest() throws Exception { private BufferedImage getButtonImage() { try { robot.waitForIdle(); - robot.delay(1000); + robot.delay(300); this can be reduced from 1000 to ~300-500ms based on testing. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20777#issuecomment-2327119894 From erikj at openjdk.org Tue Sep 3 18:12:22 2024 From: erikj at openjdk.org (Erik Joelsson) Date: Tue, 3 Sep 2024 18:12:22 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> Message-ID: On Tue, 3 Sep 2024 12:50:01 GMT, Magnus Ihse Bursie wrote: > As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. > > This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. > > All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). I tried to take this for a spin on my m1 mac laptop. I ran configure and then `make static-jdk-image`. The build failed with the following: chmod: /Users/erik/dev/jdk/build/macosx-aarch64/jdk/lib/server/libjsig.dylib: No such file or directory ModuleWrapper.gmk:81: recipe for target '/Users/erik/dev/jdk/build/macosx-aarch64/jdk/lib/server/libjsig.dylib' failed make[3]: *** [/Users/erik/dev/jdk/build/macosx-aarch64/jdk/lib/server/libjsig.dylib] Error 1 make[3]: *** Waiting for unfinished jobs.... make/Main.gmk:191: recipe for target 'java.base-libs' failed make[2]: *** [java.base-libs] Error 2 I'm guessing this would work if I built the regular image first, or at least at the same time. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20837#issuecomment-2327132241 From mvs at openjdk.org Tue Sep 3 18:17:33 2024 From: mvs at openjdk.org (Manukumar V S) Date: Tue, 3 Sep 2024 18:17:33 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: References: Message-ID: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> > This is a highly intermittent failure, and it failed only once in CI on a particular windows machine and passed on all other runs. > > Failure reason: > When the button was displayed for the first time, the focus rectangle drawn on the button text(Button A) was not seen(failure images attached in the bug). > > Fix: > To stabilize the test, I have added a line -> button.setFocusPainted(false), so that the focus rectangle will not be painted Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: Review comments fixed : Added some more delays ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20777/files - new: https://git.openjdk.org/jdk/pull/20777/files/866cd952..353b304f Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20777&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20777&range=02-03 Stats: 6 lines in 1 file changed: 3 ins; 1 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20777.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20777/head:pull/20777 PR: https://git.openjdk.org/jdk/pull/20777 From honkar at openjdk.org Tue Sep 3 18:17:33 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 3 Sep 2024 18:17:33 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> References: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> Message-ID: On Tue, 3 Sep 2024 18:14:44 GMT, Manukumar V S wrote: >> This is a highly intermittent failure, and it failed only once in CI on a particular windows machine and passed on all other runs. >> >> Failure reason: >> When the button was displayed for the first time, the focus rectangle drawn on the button text(Button A) was not seen(failure images attached in the bug). >> >> Fix: >> To stabilize the test, I have added a line -> button.setFocusPainted(false), so that the focus rectangle will not be painted > > Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: > > Review comments fixed : Added some more delays LGTM now. Does CI testing look good with the updated changes? Since this is an intermittent test failure it is good to check if the added delays are working as expected. ------------- PR Review: https://git.openjdk.org/jdk/pull/20777#pullrequestreview-2278139908 From mvs at openjdk.org Tue Sep 3 18:17:33 2024 From: mvs at openjdk.org (Manukumar V S) Date: Tue, 3 Sep 2024 18:17:33 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: <3yEPG2oqnrzRqCVmUvnAduZjnad0vxgMUgHEUWY742w=.d15011b3-50cc-4641-9902-9333dbf31fd6@github.com> References: <3yEPG2oqnrzRqCVmUvnAduZjnad0vxgMUgHEUWY742w=.d15011b3-50cc-4641-9902-9333dbf31fd6@github.com> Message-ID: <_rl2IYLbIbKZdNYygbxCthaGtg5_ioa3wYOPwyuanRk=.0adbab8f-fb49-48a3-a309-c636da9d2f7a@github.com> On Tue, 3 Sep 2024 18:02:33 GMT, Harshitha Onkar wrote: > > Individual robot.delay() can be added after UI creation and when frame state is changed to stabilize the test. > > You are still missing some delays. Please check the diff lines in the following code snippet. > > ``` > @@ -124,16 +125,15 @@ public void runTest() throws Exception { > > try { > robot = new Robot(); > + robot.waitForIdle(); > + robot.delay(1000); // delay after UI creation > > if (focusGainedLatch.await(3, TimeUnit.SECONDS)) { > System.out.println("Button focus gained..."); > } else { > System.out.println("Button focus not gained..."); > throw new RuntimeException( > "Can't gain focus on button even after waiting " + > "too long.."); > } > > System.out.println("Getting initial button image..image1"); > @@ -142,16 +142,18 @@ public void runTest() throws Exception { > // some platforms may not support maximize frame > if (frame.getToolkit().isFrameStateSupported( > JFrame.MAXIMIZED_BOTH)) { > - robot.waitForIdle(); // unnecessary waitForIdle can be removed > // maximize frame from normal size > frame.setExtendedState(JFrame.MAXIMIZED_BOTH); > System.out.println("Frame is maximized"); > robot.waitForIdle(); > robot.delay(100); > > if (frame.getToolkit().isFrameStateSupported(JFrame.NORMAL)) { > System.out.println("Frame is back to normal"); > // resize from maximum size to normal > frame.setExtendedState(JFrame.NORMAL); > + robot.waitForIdle(); > + robot.delay(100); // please add these two lines after frame state is changed again. > > @@ -192,7 +194,7 @@ public void runTest() throws Exception { > private BufferedImage getButtonImage() { > try { > robot.waitForIdle(); > - robot.delay(1000); > + robot.delay(300); this can be reduced from 1000 to ~300-500ms based on testing. > ``` Done. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20777#issuecomment-2327134209 From mvs at openjdk.org Tue Sep 3 18:17:33 2024 From: mvs at openjdk.org (Manukumar V S) Date: Tue, 3 Sep 2024 18:17:33 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: References: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> Message-ID: On Tue, 3 Sep 2024 18:13:13 GMT, Harshitha Onkar wrote: > LGTM now. Does CI testing look good with the updated changes? Yes, I have attached the results in the bug comment. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20777#issuecomment-2327139798 From honkar at openjdk.org Tue Sep 3 18:23:23 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 3 Sep 2024 18:23:23 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> References: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> Message-ID: On Tue, 3 Sep 2024 18:17:33 GMT, Manukumar V S wrote: >> This is a highly intermittent failure, and it failed only once in CI on a particular windows machine and passed on all other runs. >> >> Failure reason: >> When the button was displayed for the first time, the focus rectangle drawn on the button text(Button A) was not seen(failure images attached in the bug). >> >> Fix: >> To stabilize the test, I have added a line -> button.setFocusPainted(false), so that the focus rectangle will not be painted > > Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: > > Review comments fixed : Added some more delays Marked as reviewed by honkar (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20777#pullrequestreview-2278150451 From duke at openjdk.org Tue Sep 3 18:23:23 2024 From: duke at openjdk.org (duke) Date: Tue, 3 Sep 2024 18:23:23 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> References: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> Message-ID: <0RbhwPQniaQnlY24XLypsZtDq7dFNqbPqf7me1czbkc=.52e37820-0883-451c-a543-bd49c186dc15@github.com> On Tue, 3 Sep 2024 18:17:33 GMT, Manukumar V S wrote: >> This is a highly intermittent failure, and it failed only once in CI on a particular windows machine and passed on all other runs. >> >> Failure reason: >> When the button was displayed for the first time, the focus rectangle drawn on the button text(Button A) was not seen(failure images attached in the bug). >> >> Fix: >> To stabilize the test, I have added a line -> button.setFocusPainted(false), so that the focus rectangle will not be painted > > Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: > > Review comments fixed : Added some more delays @openjdk[bot] Your change (at version 353b304f075713d6ea264b350b1b81473776975a) is now ready to be sponsored by a Committer. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20777#issuecomment-2327148806 From ihse at openjdk.org Tue Sep 3 19:53:18 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Tue, 3 Sep 2024 19:53:18 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> Message-ID: <1nXZ6wL05zwQD3alCwKAo7P0XbkXkJbX_p5TFTXobvI=.d119ebf5-f5b0-495b-a16b-259110b13357@github.com> On Tue, 3 Sep 2024 18:10:06 GMT, Erik Joelsson wrote: > I'm guessing this would work if I built the regular image first, or at least at the same time. No, I don't think that should matter. `static-jdk-image` depends on `exploded-image`, and the files in your error message resides in `jdk`, not `images/jdk`. I have never seen this problem before. I'm not even sure why or when we try to chmod libjsig? ------------- PR Comment: https://git.openjdk.org/jdk/pull/20837#issuecomment-2327308045 From ihse at openjdk.org Tue Sep 3 19:53:19 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Tue, 3 Sep 2024 19:53:19 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> Message-ID: On Tue, 3 Sep 2024 12:50:01 GMT, Magnus Ihse Bursie wrote: > As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. > > This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. > > All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). I wonder if it is related to JDK-8336498? ------------- PR Comment: https://git.openjdk.org/jdk/pull/20837#issuecomment-2327311982 From erikj at openjdk.org Tue Sep 3 20:01:21 2024 From: erikj at openjdk.org (Erik Joelsson) Date: Tue, 3 Sep 2024 20:01:21 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> Message-ID: On Tue, 3 Sep 2024 12:50:01 GMT, Magnus Ihse Bursie wrote: > As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. > > This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. > > All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). make/ModuleWrapper.gmk line 59: > 57: endif > 58: endif > 59: This part looks a bit convoluted. It would be nice with a comment explaining what it does, where `$($(MODULE)_JDK_LIBS)` is coming from and what consumes the module-libs.txt. make/StaticLibs.gmk line 171: > 169: > 170: $(eval $(call SetupCopyFiles, copy-static-launcher, \ > 171: SRC := $(dir $(JAVA_LAUNCHER)), \ If only copying a single file, this becomes the default value for SRC, so no need to specify it. make/common/JdkNativeCompilation.gmk line 310: > 308: $$(MODULE)_JDK_LIBS += $$($1_NAME) > 309: endif > 310: endif Same, here as in ModuleWrapper.gmk, I think we need a comment explaining how this is consumed. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1742601500 PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1742500522 PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1742605313 From honkar at openjdk.org Wed Sep 4 00:07:19 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 4 Sep 2024 00:07:19 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v2] In-Reply-To: <4j7l91NuGvEVoon6bXXiMJmdZybXIu4jOLDZVJ0G36E=.350fad58-1fe6-47a1-a6cd-ce50f1aab539@github.com> References: <4j7l91NuGvEVoon6bXXiMJmdZybXIu4jOLDZVJ0G36E=.350fad58-1fe6-47a1-a6cd-ce50f1aab539@github.com> Message-ID: On Tue, 3 Sep 2024 09:20:36 GMT, Tejesh R wrote: >> Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: >> 1. Move the frame to center of the screen rather than left top. >> 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. > > Tejesh R has updated the pull request incrementally with one additional commit since the last revision: > > Checker pattern comparison With the updated checker pattern - The test condition is changed to `checkmarkFound = true` which may not be ideal condition to start with. - Are specific pixels being compared? I think it is easier to loop through the entire image and keep track of number of pixels matching the condition compareColor(pixelColor). I was suggesting something like the following. A counter var - `pixelCounter` to keep track of no. of pixels and when 5-6 pixels matches the criteria exit out of the loop. --- a/test/jdk/java/awt/Checkbox/CheckboxCheckerScalingTest.java +++ b/test/jdk/java/awt/Checkbox/CheckboxCheckerScalingTest.java @@ -48,6 +48,8 @@ public class CheckboxCheckerScalingTest { private static Checkbox checkbox; private static BufferedImage imageAfterChecked; private static volatile boolean checkmarkFound = false; + private static final int TOLERANCE = 5; + private static int pixelCounter = 0; public static void main(String[] args) throws Exception { System.setProperty("sun.java2d.uiScale", "2"); @@ -58,6 +60,7 @@ public static void main(String[] args) throws Exception { checkbox = new Checkbox("one"); checkbox.setState(true); frame.add(checkbox); frame.setLocationRelativeTo(null); frame.pack(); frame.setVisible(true); }); @@ -72,9 +75,14 @@ public static void main(String[] args) throws Exception { check: { for (int i = 0; i < imageAfterChecked.getHeight(); i++) { for (int j = 0; j < imageAfterChecked.getWidth(); j++) { - if (Color.black.getRGB() == imageAfterChecked.getRGB(i, j)) { - checkmarkFound = true; - break check; + Color pixelColor = new Color(imageAfterChecked.getRGB(i, j)); + if (compareColor(pixelColor)) { + System.out.println(pixelColor); + pixelCounter++; + if (pixelCounter >= 5) { + checkmarkFound = true; + break check; + } } } } ------------- PR Comment: https://git.openjdk.org/jdk/pull/20723#issuecomment-2327652353 From dnguyen at openjdk.org Wed Sep 4 01:00:39 2024 From: dnguyen at openjdk.org (Damon Nguyen) Date: Wed, 4 Sep 2024 01:00:39 GMT Subject: RFR: 6672644: JComboBox still scrolling if switch to another window and return back. Message-ID: In a JComboBox, if the user opens the dropdown list and clicks and holds the down-button, then ALT-TABs to switch focus, when the user re-focuses the frame with the JComboBox and opens the dropdown list again, the list will still be scrolling even though the down-button isn't pressed. This isn't OS or L&F specific, although Aqua L&F does not have any directional arrows in the dropdown list (and is thus exempt). This led me to believe it could be handled in BasicComboBoxUI where focusLost and focusGain are used or isPopupVisible but the scroll behavior cannot be altered here. Likewise for BasicComboPopup where `autoscroll` is used. However, this behavior isn't related to autoscroll and is actually found in the JScrollbar of the JScrollpane inside of the JComboBox. The timer for the scroll action starts but is never stopped if focus is lost, so a new listener is created and used. The proposed solution uses `KeyboardFocusManager` to track the focus owner. The listener stops the `scrollTimer` when the `focusOwner` property is changed. With this change, the list no longer automatically scrolls when re-focused and instead opens normally. The included test is manual due to the need to confirm that the list still scrolls after ALT-TABing. The L&F is set to Metal since it is the cross-platform lookandfeel and has directional buttons for the JScrollPane list. ------------- Commit messages: - Initial commit Changes: https://git.openjdk.org/jdk/pull/20845/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20845&range=00 Issue: https://bugs.openjdk.org/browse/JDK-6672644 Stats: 126 lines in 2 files changed: 125 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/20845.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20845/head:pull/20845 PR: https://git.openjdk.org/jdk/pull/20845 From dnguyen at openjdk.org Wed Sep 4 01:13:25 2024 From: dnguyen at openjdk.org (Damon Nguyen) Date: Wed, 4 Sep 2024 01:13:25 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v2] In-Reply-To: References: Message-ID: <3BgWw-SKgjezBt481wMJnq8Mpn6rb6wkIj8hBnvzzW0=.b3b0a6f8-57b7-427e-819a-489f0ac53752@github.com> On Tue, 3 Sep 2024 05:50:00 GMT, Abhishek Kumar wrote: >> Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. >> Test removed from `Problem-list` file as well. >> >> CI testing link is posted in JBS. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Remove secondaryloop code I tested this myself and it does seem to be stable and pass consistently. Looks like the extra delay works. Following the logic regarding the precedence of the different sources of background color, it does seem like Prasanta is correct when glancing over the different sources of colors. Worth noting, I think it'd be good to rename the test since we're removing it from the problemlist and moving the test to a new location anyway. Maybe rename it to `JTabbedPaneBackgroundColorTest` or something similar to be more descriptive. ------------- Changes requested by dnguyen (Committer). PR Review: https://git.openjdk.org/jdk/pull/20791#pullrequestreview-2278752187 From abhiscxk at openjdk.org Wed Sep 4 04:21:00 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 4 Sep 2024 04:21:00 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v3] In-Reply-To: References: Message-ID: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> > Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. > Test removed from `Problem-list` file as well. > > CI testing link is posted in JBS. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Test name renamed ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20791/files - new: https://git.openjdk.org/jdk/pull/20791/files/e1f9c9c5..1ff306c4 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20791&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20791&range=01-02 Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20791.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20791/head:pull/20791 PR: https://git.openjdk.org/jdk/pull/20791 From abhiscxk at openjdk.org Wed Sep 4 04:25:22 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 4 Sep 2024 04:25:22 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v2] In-Reply-To: <3BgWw-SKgjezBt481wMJnq8Mpn6rb6wkIj8hBnvzzW0=.b3b0a6f8-57b7-427e-819a-489f0ac53752@github.com> References: <3BgWw-SKgjezBt481wMJnq8Mpn6rb6wkIj8hBnvzzW0=.b3b0a6f8-57b7-427e-819a-489f0ac53752@github.com> Message-ID: On Wed, 4 Sep 2024 01:10:16 GMT, Damon Nguyen wrote: > Worth noting, I think it'd be good to rename the test since we're removing it from the problemlist and moving the test to a new location anyway. Maybe rename it to `JTabbedPaneBackgroundColorTest` or something similar to be more descriptive. I didn't pay attention that the file is recognized as a new file when it has moved to new location. This may be due to the recent changes in test where it has been almost changed except few lines and is recognized as new file. Renamed the test now. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2327884410 From abhiscxk at openjdk.org Wed Sep 4 04:29:21 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 4 Sep 2024 04:29:21 GMT Subject: Integrated: 8308588: Unnecessary synchronized on GTKStyle#ICONS_MAP can be removed In-Reply-To: References: Message-ID: On Wed, 28 Aug 2024 08:54:39 GMT, Abhishek Kumar wrote: > `static final Map ICONS_MAP` is modified only in `static` block. Then [com.sun.java.swing.plaf.gtk.GTKStyle#get](https://github.com/kumarabhi006/jdk/blob/73f7a5f15dbba54a98f3916ff1190520ac07874d/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKStyle.java#L892) method read from it within `synchronized (ICONS_MAP)` block. As this map is read-only and all its content is initialized in static block we can safely remove synchronized from get call. This pull request has now been integrated. Changeset: 5998f4b6 Author: Abhishek Kumar URL: https://git.openjdk.org/jdk/commit/5998f4b6f53769f98188ae8c23ea49cc1f7aa802 Stats: 21 lines in 1 file changed: 1 ins; 4 del; 16 mod 8308588: Unnecessary synchronized on GTKStyle#ICONS_MAP can be removed Reviewed-by: tr, aivanov, aturbanov ------------- PR: https://git.openjdk.org/jdk/pull/20741 From tr at openjdk.org Wed Sep 4 04:54:22 2024 From: tr at openjdk.org (Tejesh R) Date: Wed, 4 Sep 2024 04:54:22 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v2] In-Reply-To: References: <4j7l91NuGvEVoon6bXXiMJmdZybXIu4jOLDZVJ0G36E=.350fad58-1fe6-47a1-a6cd-ce50f1aab539@github.com> Message-ID: On Wed, 4 Sep 2024 00:04:19 GMT, Harshitha Onkar wrote: > break check; Yeah starting with `checkmarkFound = true` might not be right condition to start with. I selected these specific pixels index pattern based on checkmarker considering color gradient. Pixel counter would also be fine I guess, but pattern matching would be restricted check and Pixel counter is more of relaxed check. Will update as per your suggestions because I think here such restrictions might cause intermittent failures too, if image capture varies by even one pixel pixel `y` position. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20723#issuecomment-2327916347 From rgupta at openjdk.org Wed Sep 4 05:00:22 2024 From: rgupta at openjdk.org (Ravi Gupta) Date: Wed, 4 Sep 2024 05:00:22 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v7] In-Reply-To: References: Message-ID: On Mon, 5 Aug 2024 04:46:47 GMT, Ravi Gupta wrote: >> This testcase checks for the following assertions for Component events: >> >> 1. When components are resized, moved, hidden and shown the respective events are triggered. >> 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. >> 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. >> 4. When a window is minimized/restored then hidden and shown component events should be triggered. >> >> Testing: >> Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. > > Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: > > 8333403: Review comments fixed any volunteer for review? ------------- PR Comment: https://git.openjdk.org/jdk/pull/19521#issuecomment-2327921623 From psadhukhan at openjdk.org Wed Sep 4 05:05:26 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 4 Sep 2024 05:05:26 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v3] In-Reply-To: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> References: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> Message-ID: <1RbhpSaHnU9A5ZT2hCAA4GTHz3cbcdePFRCXdUcVLZI=.df120e89-a1ab-4383-b1f9-4701d7dffdfb@github.com> On Wed, 4 Sep 2024 04:21:00 GMT, Abhishek Kumar wrote: >> Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. >> Test removed from `Problem-list` file as well. >> >> CI testing link is posted in JBS. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Test name renamed Seems like closed test 4690946 where the UI property "TabbedPane.tabAreaBackground" was added in webrev.0 is moved to open and renamed as javax/swing/JTabbedPane/TestJTabbedPaneOpaqueColor.java..Any idea why the test is only for windows and linux? Can it be extended for macos too? Is [JDK-7148101](https://bugs.openjdk.org/browse/JDK-7148101) still valid? ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2327925931 From psadhukhan at openjdk.org Wed Sep 4 05:08:24 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 4 Sep 2024 05:08:24 GMT Subject: Integrated: 8190329: [macos] Swing InterOp Platform.exit() crash In-Reply-To: References: Message-ID: <29ipW1pcFLaihtrTD9opzusSOGaog4kezfzQ6fldDFo=.81ad6a38-3654-4f1b-8183-f4a31ff10c2f@github.com> On Fri, 23 Aug 2024 09:17:43 GMT, Prasanta Sadhukhan wrote: > The testcase calls Platform.exit before the dialog is made visible but > on macOS, JavaFX takes over the AppKit thread and uses that as the FX application thread. As part of the FX platform shutdown process, it detaches that thread from the JVM. This means that the AppKit thread is no longer available to Java processes > so AWT crashes when it ties to access appkit thread. > Fix is made to check if the thread has been detached for move-resize notification event before proceeding.. This pull request has now been integrated. Changeset: 9a1024de Author: Prasanta Sadhukhan URL: https://git.openjdk.org/jdk/commit/9a1024dec68057c7c581ac0a38fc7f96489a0a76 Stats: 27 lines in 3 files changed: 19 ins; 1 del; 7 mod 8190329: [macos] Swing InterOp Platform.exit() crash Co-authored-by: Kevin Rushforth Reviewed-by: kcr, azvegint ------------- PR: https://git.openjdk.org/jdk/pull/20688 From abhiscxk at openjdk.org Wed Sep 4 05:33:19 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 4 Sep 2024 05:33:19 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v3] In-Reply-To: <1RbhpSaHnU9A5ZT2hCAA4GTHz3cbcdePFRCXdUcVLZI=.df120e89-a1ab-4383-b1f9-4701d7dffdfb@github.com> References: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> <1RbhpSaHnU9A5ZT2hCAA4GTHz3cbcdePFRCXdUcVLZI=.df120e89-a1ab-4383-b1f9-4701d7dffdfb@github.com> Message-ID: On Wed, 4 Sep 2024 05:02:24 GMT, Prasanta Sadhukhan wrote: > Seems like closed test 4690946 where the UI property "TabbedPane.tabAreaBackground" was added in webrev.0 is moved to open and renamed as javax/swing/JTabbedPane/TestJTabbedPaneOpaqueColor.java..Any idea why the test is only for windows and linux? Can it be extended for macos too? Is [JDK-7148101](https://bugs.openjdk.org/browse/JDK-7148101) still valid? closed test 4690946 was moved to open for the issue [JDK-8226990](https://bugs.openjdk.org/browse/JDK-8226990) and was tested against the windows and linux platform only because the issue was reported for Nimbus and GTK L&F. [See the discussion here](https://github.com/openjdk/jdk/pull/17720#discussion_r1584537667). For Aqua separate bug was filed [JDK-8331619](https://bugs.openjdk.org/browse/JDK-8331619) and [PR raised](https://github.com/openjdk/jdk/pull/19170). But this bug was closed as were unable to verify the native behavior for TabbedPane. > Can it be extended for macos too? Do you mean TestJTabbedPaneOpaqueColor Test ? I guess it can be extended for Mac but we need to restrict the testing only for Metal and Nimbus L&F on Mac machine. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2327954489 From abhiscxk at openjdk.org Wed Sep 4 05:38:19 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 4 Sep 2024 05:38:19 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v3] In-Reply-To: References: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> <1RbhpSaHnU9A5ZT2hCAA4GTHz3cbcdePFRCXdUcVLZI=.df120e89-a1ab-4383-b1f9-4701d7dffdfb@github.com> Message-ID: On Wed, 4 Sep 2024 05:30:48 GMT, Abhishek Kumar wrote: > Is [JDK-7148101](https://bugs.openjdk.org/browse/JDK-7148101) still valid? Yes, issue still exists for mac machine. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2327960292 From psadhukhan at openjdk.org Wed Sep 4 05:43:22 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 4 Sep 2024 05:43:22 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v3] In-Reply-To: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> References: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> Message-ID: On Wed, 4 Sep 2024 04:21:00 GMT, Abhishek Kumar wrote: >> Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. >> Test removed from `Problem-list` file as well. >> >> CI testing link is posted in JBS. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Test name renamed Marked as reviewed by psadhukhan (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20791#pullrequestreview-2279041927 From psadhukhan at openjdk.org Wed Sep 4 05:43:22 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 4 Sep 2024 05:43:22 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v3] In-Reply-To: References: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> <1RbhpSaHnU9A5ZT2hCAA4GTHz3cbcdePFRCXdUcVLZI=.df120e89-a1ab-4383-b1f9-4701d7dffdfb@github.com> Message-ID: On Wed, 4 Sep 2024 05:36:00 GMT, Abhishek Kumar wrote: > > Is [JDK-7148101](https://bugs.openjdk.org/browse/JDK-7148101) still valid? > > Yes, issue still exists for mac machine. Issue is for AquaL&F which as per your verification in [JDK-8331619](https://bugs.openjdk.org/browse/JDK-8331619) and https://github.com/openjdk/jdk/pull/19170 is not an issue it seems.. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2327965002 From tr at openjdk.org Wed Sep 4 05:48:53 2024 From: tr at openjdk.org (Tejesh R) Date: Wed, 4 Sep 2024 05:48:53 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v3] In-Reply-To: References: Message-ID: > Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: > 1. Move the frame to center of the screen rather than left top. > 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. Tejesh R has updated the pull request incrementally with one additional commit since the last revision: Updated based on review comments ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20723/files - new: https://git.openjdk.org/jdk/pull/20723/files/4c33680d..9a562914 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20723&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20723&range=01-02 Stats: 35 lines in 1 file changed: 14 ins; 19 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20723.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20723/head:pull/20723 PR: https://git.openjdk.org/jdk/pull/20723 From abhiscxk at openjdk.org Wed Sep 4 05:59:21 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 4 Sep 2024 05:59:21 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v3] In-Reply-To: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> References: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> Message-ID: On Wed, 4 Sep 2024 04:21:00 GMT, Abhishek Kumar wrote: >> Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. >> Test removed from `Problem-list` file as well. >> >> CI testing link is posted in JBS. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Test name renamed > > > Is [JDK-7148101](https://bugs.openjdk.org/browse/JDK-7148101) still valid? > > > > > > Yes, issue still exists for mac machine. > > Issue is for AquaL&F which as per your verification in [JDK-8331619](https://bugs.openjdk.org/browse/JDK-8331619) and #19170 is not an issue it seems.. Yes, for Aqua L&F we were not able to verify the native behavior. I think bug4690946.java test needs to be removed from closed problemlist. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2327979341 From psadhukhan at openjdk.org Wed Sep 4 05:59:21 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 4 Sep 2024 05:59:21 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v3] In-Reply-To: References: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> Message-ID: <0aVuRMUkPDj7JN8RN8wNIRIHVb1s7rXa4Eslca4izZ4=.e544a627-9d90-4879-a35f-abf8684903a5@github.com> On Wed, 4 Sep 2024 05:54:20 GMT, Abhishek Kumar wrote: > > > > Is [JDK-7148101](https://bugs.openjdk.org/browse/JDK-7148101) still valid? > > > > > > > > > Yes, issue still exists for mac machine. > > > > > > Issue is for AquaL&F which as per your verification in [JDK-8331619](https://bugs.openjdk.org/browse/JDK-8331619) and #19170 is not an issue it seems.. > > Yes, for Aqua L&F we were not able to verify the native behavior. I think bug4690946.java test needs to be removed from closed problemlist. Yes already raised the PR for removal.. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2327981898 From tr at openjdk.org Wed Sep 4 07:00:19 2024 From: tr at openjdk.org (Tejesh R) Date: Wed, 4 Sep 2024 07:00:19 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> References: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> Message-ID: On Tue, 3 Sep 2024 18:17:33 GMT, Manukumar V S wrote: >> This is a highly intermittent failure, and it failed only once in CI on a particular windows machine and passed on all other runs. >> >> Failure reason: >> When the button was displayed for the first time, the focus rectangle drawn on the button text(Button A) was not seen(failure images attached in the bug). >> >> Fix: >> To stabilize the test, I have added a line -> button.setFocusPainted(false), so that the focus rectangle will not be painted > > Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: > > Review comments fixed : Added some more delays test/jdk/javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java line 213: > 211: > 212: private void disposeFrame() { > 213: frame.dispose(); null check might be required here. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20777#discussion_r1743175302 From mvs at openjdk.org Wed Sep 4 07:09:22 2024 From: mvs at openjdk.org (Manukumar V S) Date: Wed, 4 Sep 2024 07:09:22 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: References: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> Message-ID: On Wed, 4 Sep 2024 06:57:56 GMT, Tejesh R wrote: > null check might be required here. But we are not setting it as null anywhere in the code. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20777#discussion_r1743182238 From tr at openjdk.org Wed Sep 4 07:09:22 2024 From: tr at openjdk.org (Tejesh R) Date: Wed, 4 Sep 2024 07:09:22 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: References: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> Message-ID: On Wed, 4 Sep 2024 07:03:54 GMT, Manukumar V S wrote: >> test/jdk/javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java line 213: >> >>> 211: >>> 212: private void disposeFrame() { >>> 213: frame.dispose(); >> >> null check might be required here. > >> null check might be required here. > > But we are not setting it as null anywhere in the code. What if its not initialized at first place? To handle this scenario most of the test has this condition. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20777#discussion_r1743184534 From mvs at openjdk.org Wed Sep 4 07:17:19 2024 From: mvs at openjdk.org (Manukumar V S) Date: Wed, 4 Sep 2024 07:17:19 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: References: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> Message-ID: On Wed, 4 Sep 2024 07:05:57 GMT, Tejesh R wrote: >>> null check might be required here. >> >> But we are not setting it as null anywhere in the code. > > What if its not initialized at first place? To handle this scenario most of the test has this condition. I don't see a chance for that as the frame is initialized in createGUI() and there are lot of code which directly access frame object there itself, so if it was null, it would have thrown the Nullpointer even before. Anyway, I had this null check before, but removed it as per @honkar-jdk 's review comment. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20777#discussion_r1743194980 From abhiscxk at openjdk.org Wed Sep 4 07:22:20 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 4 Sep 2024 07:22:20 GMT Subject: RFR: 6672644: JComboBox still scrolling if switch to another window and return back. In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 00:54:16 GMT, Damon Nguyen wrote: > In a JComboBox, if the user opens the dropdown list and clicks and holds the down-button, then ALT-TABs to switch focus, when the user re-focuses the frame with the JComboBox and opens the dropdown list again, the list will still be scrolling even though the down-button isn't pressed. > > This isn't OS or L&F specific, although Aqua L&F does not have any directional arrows in the dropdown list (and is thus exempt). This led me to believe it could be handled in BasicComboBoxUI where focusLost and focusGain are used or isPopupVisible but the scroll behavior cannot be altered here. Likewise for BasicComboPopup where `autoscroll` is used. However, this behavior isn't related to autoscroll and is actually found in the JScrollbar of the JScrollpane inside of the JComboBox. The timer for the scroll action starts but is never stopped if focus is lost, so a new listener is created and used. The proposed solution uses `KeyboardFocusManager` to track the focus owner. The listener stops the `scrollTimer` when the `focusOwner` property is changed. With this change, the list no longer automatically scrolls when re-focused and instead opens normally. > > The included test is manual due to the need to confirm that the list still scrolls after ALT-TABing. The L&F is set to Metal since it is the cross-platform lookandfeel and has directional buttons for the JScrollPane list. @DamonGuy are you able to reproduce the issue on linux machine? I tried on windows and linux, was able to reproduce it only on windows. I checked on Ubuntu-22.04 and I can see the list is not scrolling and is stopped. Could you please confirm the same? ------------- PR Comment: https://git.openjdk.org/jdk/pull/20845#issuecomment-2328102613 From tr at openjdk.org Wed Sep 4 07:28:18 2024 From: tr at openjdk.org (Tejesh R) Date: Wed, 4 Sep 2024 07:28:18 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: References: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> Message-ID: On Wed, 4 Sep 2024 07:14:14 GMT, Manukumar V S wrote: >> What if its not initialized at first place? To handle this scenario most of the test has this condition. > > I don't see a chance for that as the frame is initialized in createGUI() and there are lot of code which directly access frame object there itself, so if it was null, it would have thrown the Nullpointer even before. Anyway, I had this null check before, but removed it as per @honkar-jdk 's review comment. `Frame is assigned null after disposing which is not required and can be removed.` I hope u r referring to this comment. I hope she meant to remove null assignment after dispose is called. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20777#discussion_r1743210317 From abhiscxk at openjdk.org Wed Sep 4 07:54:18 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 4 Sep 2024 07:54:18 GMT Subject: RFR: 6672644: JComboBox still scrolling if switch to another window and return back. In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 00:54:16 GMT, Damon Nguyen wrote: > In a JComboBox, if the user opens the dropdown list and clicks and holds the down-button, then ALT-TABs to switch focus, when the user re-focuses the frame with the JComboBox and opens the dropdown list again, the list will still be scrolling even though the down-button isn't pressed. > > This isn't OS or L&F specific, although Aqua L&F does not have any directional arrows in the dropdown list (and is thus exempt). This led me to believe it could be handled in BasicComboBoxUI where focusLost and focusGain are used or isPopupVisible but the scroll behavior cannot be altered here. Likewise for BasicComboPopup where `autoscroll` is used. However, this behavior isn't related to autoscroll and is actually found in the JScrollbar of the JScrollpane inside of the JComboBox. The timer for the scroll action starts but is never stopped if focus is lost, so a new listener is created and used. The proposed solution uses `KeyboardFocusManager` to track the focus owner. The listener stops the `scrollTimer` when the `focusOwner` property is changed. With this change, the list no longer automatically scrolls when re-focused and instead opens normally. > > The included test is manual due to the need to confirm that the list still scrolls after ALT-TABing. The L&F is set to Metal since it is the cross-platform lookandfeel and has directional buttons for the JScrollPane list. I can verify on linux machine that it is suto-scrolling but it is intermittent on windows as well as on linux. Sometimes the list is scrolling and sometimes it's not. Are you facing the same? To regain focus, if click on frame title bar then the intermittent issue can be observed. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20845#issuecomment-2328163032 From duke at openjdk.org Wed Sep 4 12:10:29 2024 From: duke at openjdk.org (Daniel Gredler) Date: Wed, 4 Sep 2024 12:10:29 GMT Subject: RFR: 8337681: PNGImageWriter uses much more memory than necessary [v2] In-Reply-To: References: <8ZstKFyu435jMQ9_44gJwjCtz1N1at3B_wqbsDi2msE=.aede545e-7d62-4af6-9f51-5682a5281ac3@github.com> Message-ID: On Tue, 3 Sep 2024 17:07:46 GMT, Sergey Bylokhov wrote: >> Daniel Gredler has updated the pull request incrementally with two additional commits since the last revision: >> >> - JDK-8337681: add tests for TYPE_4BYTE_ABGR >> - JDK-8337681: add tests for TYPE_INT_RGB > > src/java.desktop/share/classes/com/sun/imageio/plugins/png/PNGImageWriter.java line 924: > >> 922: for (int row = minY + yOffset; row < minY + height; row += ySkip) { >> 923: Raster ras; >> 924: if (image instanceof BufferedImage bi) { > > Do we really need to run these two blocks in the loop for each iteration? Hi Sergey! The current logic does make it very clear where and how `ras` is initialized, which is nice. The top two initialization blocks (for `BufferedImage`s and tiled images) could in theory be hoisted outside the loop, but the third one cannot (and we might have to jump through some hoops to guarantee to the compiler that the variable is initialized if we start initializing it sometimes in one place and sometimes in another). AFAICT the `BufferedImage.getRaster()` call is not doing any work (just providing a reference to an instance variable), but the `getTile(...)` call might be doing some extra work, depending on the specific instance type (but in any event will not be copying raster data, which was by far the biggest waste here). ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20432#discussion_r1743656653 From abhiscxk at openjdk.org Wed Sep 4 12:46:21 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 4 Sep 2024 12:46:21 GMT Subject: RFR: 6672644: JComboBox still scrolling if switch to another window and return back. In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 00:54:16 GMT, Damon Nguyen wrote: > In a JComboBox, if the user opens the dropdown list and clicks and holds the down-button, then ALT-TABs to switch focus, when the user re-focuses the frame with the JComboBox and opens the dropdown list again, the list will still be scrolling even though the down-button isn't pressed. > > This isn't OS or L&F specific, although Aqua L&F does not have any directional arrows in the dropdown list (and is thus exempt). This led me to believe it could be handled in BasicComboBoxUI where focusLost and focusGain are used or isPopupVisible but the scroll behavior cannot be altered here. Likewise for BasicComboPopup where `autoscroll` is used. However, this behavior isn't related to autoscroll and is actually found in the JScrollbar of the JScrollpane inside of the JComboBox. The timer for the scroll action starts but is never stopped if focus is lost, so a new listener is created and used. The proposed solution uses `KeyboardFocusManager` to track the focus owner. The listener stops the `scrollTimer` when the `focusOwner` property is changed. With this change, the list no longer automatically scrolls when re-focused and instead opens normally. > > The included test is manual due to the need to confirm that the list still scrolls after ALT-TABing. The L&F is set to Metal since it is the cross-platform lookandfeel and has directional buttons for the JScrollPane list. src/java.desktop/share/classes/javax/swing/plaf/basic/BasicScrollBarUI.java line 371: > 369: scrollbar.addPropertyChangeListener(propertyChangeListener); > 370: scrollbar.addFocusListener(getHandler()); > 371: keyboardFocusManager.addPropertyChangeListener(keyboardFocusListener); creating `keyboardFocusManager` instance can be avoided and we can directly use `KeyboardFocusManager.getCurrentKeyboardFocusManager().addPropertyChangeListener(keyboardFocusListener);` to add the listener and similarly to remove. test/jdk/javax/swing/JComboBox/JComboBoxScrollFocusTest.java line 75: > 73: JFrame frame = new JFrame("JComboBoxScrollFocusTest Test Frame"); > 74: JComboBox combobox = new JComboBox(); > 75: for (int i = 0; i< 100; i ++) { Suggestion: for (int i = 0; i < 100; i++) { ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20845#discussion_r1743717017 PR Review Comment: https://git.openjdk.org/jdk/pull/20845#discussion_r1743692496 From aivanov at openjdk.org Wed Sep 4 16:15:28 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 4 Sep 2024 16:15:28 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v7] In-Reply-To: References: Message-ID: On Mon, 5 Aug 2024 04:46:47 GMT, Ravi Gupta wrote: >> This testcase checks for the following assertions for Component events: >> >> 1. When components are resized, moved, hidden and shown the respective events are triggered. >> 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. >> 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. >> 4. When a window is minimized/restored then hidden and shown component events should be triggered. >> >> Testing: >> Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. > > Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: > > 8333403: Review comments fixed Changes requested by aivanov (Reviewer). test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 1: > 1: /* I suggest moving the test to `java/awt/Component` ? you're testing the functionality of `Component` class and its subclasses. It looks to me all the tests under `java/awt/event` should be moved to a particular component where the event is expected or not expected to be generated. So that these tests aren't missed when that component is modified and the developer runs tests for that specific component. Yes, the developer is expected to run all the tests anyway, however, I would still expect all tests related to a component be under the component class folder. test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 67: > 65: private static volatile Dimension compSize; > 66: private static final java.util.Collection events = > 67: Collections.synchronizedList(new ArrayList()); Any reason why you use fully qualified `java.util.Collection` class name instead of importing it? test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 67: > 65: private static volatile Dimension compSize; > 66: private static final java.util.Collection events = > 67: Collections.synchronizedList(new ArrayList()); Suggestion: private static final Collection events = Collections.synchronizedList(new ArrayList<>()); test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 67: > 65: private static volatile Dimension compSize; > 66: private static final java.util.Collection events = > 67: Collections.synchronizedList(new ArrayList()); I suggest re-organising the fields in another order and putting blank lines between groups: private static final int DELAY = 500; private static Frame frame; private static Robot robot; private static Component[] components; private static volatile Point compAt; private static volatile Dimension compSize; private static volatile boolean componentHidden; private static volatile boolean componentShown; private static volatile boolean componentMoved; private static volatile boolean componentResized; private static final Collection events = Collections.synchronizedList(new ArrayList()); This way it's more readable in my opinion. The most common: `frame` and `robot`, then array of components, location to click on (see below as well), event flags and a list (collection) of generated events. test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 157: > 155: EventQueue.invokeAndWait(() -> { > 156: compAt = components[9].getLocationOnScreen(); > 157: compSize = components[9].getSize(); Why did you change it from 0 to 9? The number 9 looks like a magic number, it may change if anything changes in the `components` array. test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 161: > 159: > 160: robot.mouseMove(compAt.x + compSize.width / 2, > 161: compAt.y + compSize.height / 2); Suggestion: // Add a comment why you click a component EventQueue.invokeAndWait(() -> { Point location = components[9].getLocationOnScreen(); Dimension size = components[9].getSize(); centerPoint = new Point(location.x + size.width / 2, location.y + size.height / 2); }); robot.mouseMove(centerPoint.x, centerPoint.y); You can calculate the center point where you click inside `invokeAndWait` and then assign the resulting value to `centerPoint` (rename `compAt` to `centerPoint` or another name). Remove `compSize`. test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 164: > 162: > 163: robot.mousePress(InputEvent.BUTTON1_DOWN_MASK); > 164: robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK); Why do you click a component? You didn't answer the previous question. test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 174: > 172: robot.delay(DELAY); > 173: > 174: resetValues(); Suggestion: System.out.println("Iconify frame"); resetValues(); Print a message what you're testing. test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 177: > 175: EventQueue.invokeAndWait(() -> frame.setExtendedState(Frame.ICONIFIED)); > 176: > 177: robot.delay(DELAY); Suggestion: robot.waitForIdle(); robot.delay(DELAY); Since changing the state of frame generates system events, it's better to add `waitForIdle()` to ensure all the system event are processed before you test the flags. test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 183: > 181: } > 182: > 183: resetValues(); Suggestion: System.out.println("Deiconify frame"); resetValues(); Print a message. test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 201: > 199: System.err.println(); > 200: throw new RuntimeException("FAIL: " + errorMsg); > 201: } So you're collecting a list of events to print them if iconify or deiconify generates an unexpected list of events. In all other cases `events` isn't used at all. Given that all the generated events are printed as they're come, I see no reason why `events` is needed at all. By printing messages that you're about to test iconifying frame and deiconifying frame you separate the cases, the list of events will be printed between these messages. test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 206: > 204: throws InvocationTargetException, InterruptedException { > 205: > 206: Component currentComponent = components[i]; Suggestion: private static void doTest(final Component currentComponent, boolean enable) throws InvocationTargetException, InterruptedException { You don't use the index for anything else but assigning the current component ? pass it into the method. Replace any occurrences of `components[i]` with `currentComponent`, it'll be consistent. test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 208: > 206: Component currentComponent = components[i]; > 207: System.out > 208: .println("Component " + currentComponent + "is enabled " + enable); It is so uncommon to break `System.out.println` this way, these are usually kept together. Anyway, I suggest splitting that into two lines: `toString` representation of a component is pretty long, therefore printing the `enabled` flag on its own line helps to see it. Suggestion: System.out.println("Component " + currentComponent); System.out.println(" enabled " + enable); test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 305: > 303: + "when size decreases for " + components[i].getClass()); > 304: } > 305: } Suggestion: } System.out.println("\n"); } Printing two blank lines after a component is tested will help you parse the log. You'll be able to easily find where one portion of the test finishes and another starts. ------------- PR Review: https://git.openjdk.org/jdk/pull/19521#pullrequestreview-2280441854 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1744073977 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1743933493 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1743949637 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1743980292 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1743971465 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1743997273 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1743985969 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1744051268 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1744061638 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1744051797 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1744058260 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1744028795 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1744033326 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1744036241 From aivanov at openjdk.org Wed Sep 4 16:15:29 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 4 Sep 2024 16:15:29 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v7] In-Reply-To: References: Message-ID: <-KNXygH0dh8yifIeVTz0ICWx2xev2EOVqiIx1Pr-ZdQ=.68cfe7e3-7856-4253-a418-3bed76a7e7f6@github.com> On Wed, 4 Sep 2024 15:20:46 GMT, Alexey Ivanov wrote: >> Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: >> >> 8333403: Review comments fixed > > test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 161: > >> 159: >> 160: robot.mouseMove(compAt.x + compSize.width / 2, >> 161: compAt.y + compSize.height / 2); > > Suggestion: > > // Add a comment why you click a component > EventQueue.invokeAndWait(() -> { > Point location = components[9].getLocationOnScreen(); > Dimension size = components[9].getSize(); > centerPoint = new Point(location.x + size.width / 2, > location.y + size.height / 2); > }); > robot.mouseMove(centerPoint.x, centerPoint.y); > > You can calculate the center point where you click inside `invokeAndWait` and then assign the resulting value to `centerPoint` (rename `compAt` to `centerPoint` or another name). Remove `compSize`. I also suggest removing the blank line between `mouseMove` and `mousePress` and `mouseRelease`. > test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 164: > >> 162: >> 163: robot.mousePress(InputEvent.BUTTON1_DOWN_MASK); >> 164: robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK); > > Why do you click a component? You didn't answer the previous question. If you expect anything to change in the UI state after you click, you should add `robot.waitForIdle()`. Yes, you used `robot.setAutoWaitForIdle(true)`, so robot with call `waitForIdle()` after each event generated. Alternatively, you can add `robot.delay(DELAY)` to wait a little to guarantee what you expect has happened before you continue with the test. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1744001163 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1744007695 From aivanov at openjdk.org Wed Sep 4 16:15:30 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 4 Sep 2024 16:15:30 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v6] In-Reply-To: References: Message-ID: On Wed, 24 Jul 2024 19:23:01 GMT, Alexey Ivanov wrote: >> Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: >> >> 8333403: Review commnets fixed > > test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 164: > >> 162: >> 163: robot.mousePress(InputEvent.BUTTON1_DOWN_MASK); >> 164: robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK); > > Do you click the panel to ensure the frame has focus? > > Does the test fail if the frame fails to be the active frame for whatever reason? (It should always be the active frame / window.) You didn't answer the question and marked it resolved. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1743984396 From aivanov at openjdk.org Wed Sep 4 16:15:31 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 4 Sep 2024 16:15:31 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v6] In-Reply-To: References: Message-ID: On Mon, 5 Aug 2024 11:52:45 GMT, Ravi Gupta wrote: > when form Frame.ICONIFIED to Frame.NORMAL componentMoved and componentResized events are triggered Then verify that these events are triggered: - if (componentShown || componentHidden) { + if (componentShown || componentHidden || !componentMoved + || !componentResized) { Otherwise it looks as if you forgot to test something. You may have two `if` statements to print more precise error message. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1744049100 From aivanov at openjdk.org Wed Sep 4 16:40:25 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 4 Sep 2024 16:40:25 GMT Subject: RFR: 8332901: Select{Current,New}ItemTest.java for Choice don't open popup on macOS [v4] In-Reply-To: References: Message-ID: On Tue, 20 Aug 2024 20:03:48 GMT, Alexey Ivanov wrote: > I found another test which tests the same scenario as `SelectNewItemTest`, it's `test/jdk/java/awt/event/ComponentEvent/ComponentItemEventTest.java`. It was added in #11786. I'm going to submit a bug to remove this scenario from the `ComponentItemEventTest` test. I submitted [JDK-8339338](https://bugs.openjdk.org/browse/JDK-8339338) to remove `Choice` from `ComponentItemEventTest`. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20601#issuecomment-2329525130 From aivanov at openjdk.org Wed Sep 4 16:40:26 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 4 Sep 2024 16:40:26 GMT Subject: Integrated: 8332901: Select{Current, New}ItemTest.java for Choice don't open popup on macOS In-Reply-To: References: Message-ID: On Thu, 15 Aug 2024 18:02:33 GMT, Alexey Ivanov wrote: > I looked at `java/awt/Choice/SelectCurrentItemTest/SelectCurrentItemTest.java`, ran it and noticed that the test does not open the popup of the `Choice` component on macOS 14.x. > > If the popup does not open, the test does not verify anything ? it always passes. > > I refactored the test and added a mouse listener to the `Choice` component. If mouse click isn't registered, the test fails. > > Later, I found a similar test: `test/jdk/java/awt/Choice/SelectNewItemTest/SelectNewItemTest.java`. It clicks on another item in the Choice popup and expects to receive `ItemEvent`. > > I refactored both tests and moved them into `Choice/SelectItem` folder. > > `SelectCurrentItemTest` encapsulates the common test logic and provides overridable methods to customise conditions for `SelectNewItemTest`. > > Now, `SelectNewItemTest` extends `SelectCurrentItemTest` and overrides the conditions as well as the coordinates for clicking the popup of the `Choice` component. > > ~~The updated test fails for me locally on macOS Sonoma 14.5. This is likely the result of [JDK-8322653](https://bugs.openjdk.org/browse/JDK-8322653): _[macos14] : Mouse clicks are not received within 3 pixels of the window boundary_.~~ > > To work around JDK-8322653, both tests use non-resizable frame. Both updated tests pass on CI and locally on macOS 14.5. This is why I removed `SelectNewItemTest` from problem-list. This pull request has now been integrated. Changeset: ef96a7b0 Author: Alexey Ivanov URL: https://git.openjdk.org/jdk/commit/ef96a7b014795f366af3a90ef8f474cfb621197f Stats: 593 lines in 5 files changed: 276 ins; 317 del; 0 mod 8332901: Select{Current,New}ItemTest.java for Choice don't open popup on macOS Move SelectCurrentItemTest.java to java/awt/Choice/SelectItem/. Move SelectNewItemTest.java to java/awt/Choice/SelectItem/. Use latches to control test flow instead of delays. Encapsulate the common logic in SelectCurrentItemTest. Provide overridable checkXXX() methods to modify conditions. Provide an overridable method which defines where to click in the choice popup to select an item. Reviewed-by: honkar, prr, dnguyen ------------- PR: https://git.openjdk.org/jdk/pull/20601 From honkar at openjdk.org Wed Sep 4 17:12:21 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 4 Sep 2024 17:12:21 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v3] In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 05:48:53 GMT, Tejesh R wrote: >> Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: >> 1. Move the frame to center of the screen rather than left top. >> 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. > > Tejesh R has updated the pull request incrementally with one additional commit since the last revision: > > Updated based on review comments Updated changes LGTM, I'm okay with color tolerance set to 10 but if a smaller value works for this test (in CI testing) then it might be better to be more restrictive with color tolerance. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20723#issuecomment-2329586131 From mvs at openjdk.org Wed Sep 4 17:30:59 2024 From: mvs at openjdk.org (Manukumar V S) Date: Wed, 4 Sep 2024 17:30:59 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v5] In-Reply-To: References: Message-ID: > This is a highly intermittent failure, and it failed only once in CI on a particular windows machine and passed on all other runs. > > Failure reason: > When the button was displayed for the first time, the focus rectangle drawn on the button text(Button A) was not seen(failure images attached in the bug). > > Fix: > To stabilize the test, I have added a line -> button.setFocusPainted(false), so that the focus rectangle will not be painted Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: Added null check to frame before disposing ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20777/files - new: https://git.openjdk.org/jdk/pull/20777/files/353b304f..2684224f Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20777&range=04 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20777&range=03-04 Stats: 3 lines in 1 file changed: 2 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/20777.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20777/head:pull/20777 PR: https://git.openjdk.org/jdk/pull/20777 From mvs at openjdk.org Wed Sep 4 17:31:00 2024 From: mvs at openjdk.org (Manukumar V S) Date: Wed, 4 Sep 2024 17:31:00 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: References: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> Message-ID: On Wed, 4 Sep 2024 07:25:59 GMT, Tejesh R wrote: >> I don't see a chance for that as the frame is initialized in createGUI() and there are lot of code which directly access frame object there itself, so if it was null, it would have thrown the Nullpointer even before. Anyway, I had this null check before, but removed it as per @honkar-jdk 's review comment. > > `Frame is assigned null after disposing which is not required and can be removed.` I hope u r referring to this comment. I hope she meant to remove null assignment after dispose is called. Yes, added the null check back. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20777#discussion_r1744173520 From honkar at openjdk.org Wed Sep 4 17:43:19 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 4 Sep 2024 17:43:19 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v4] In-Reply-To: References: <9p6g6LHUjWZxmEOb_-NqWp5Ee2cGGPdjVSCpRswv-U4=.611f522a-939b-49e3-b1be-001eb6951474@github.com> Message-ID: <-b6e1MVWhJHx2Lz2vNmEkdOk6pHrZrBoqEnCaq4KTD0=.c010dc70-074f-40c4-87a3-330693924b03@github.com> On Wed, 4 Sep 2024 17:26:42 GMT, Manukumar V S wrote: >> `Frame is assigned null after disposing which is not required and can be removed.` I hope u r referring to this comment. I hope she meant to remove null assignment after dispose is called. > > Yes, added the null check back. Right, I meant remove only the null assignment not the null check. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20777#discussion_r1744189358 From serb at openjdk.org Wed Sep 4 18:52:26 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Wed, 4 Sep 2024 18:52:26 GMT Subject: RFR: 8327401: Some jtreg tests fail on Wayland without any tracking bug [v3] In-Reply-To: References: Message-ID: On Wed, 22 May 2024 20:44:54 GMT, Phil Race wrote: >> test/jdk/java/awt/Paint/ListRepaint.java line 40: >> >>> 38: static Frame frame; >>> 39: >>> 40: public static void main(final String[] args) throws Exception { >> >> It is critical to call AWT code on EDT in this test, otherwise it may fail with: >> >>> java.lang.NullPointerException: Cannot read field "x" because "this.prevFocusRect" is null >> at java.desktop/sun.awt.X11.XListPeer$ListPainter.paintFocus(XListPeer.java:1976) >> at java.desktop/sun.awt.X11.XListPeer$ListPainter.paint(XListPeer.java:1830) >> at java.desktop/sun.awt.X11.XListPeer.repaint(XListPeer.java:389) >> at java.desktop/sun.awt.X11.XListPeer.repaint(XListPeer.java:364) >> at java.desktop/sun.awt.X11.XListPeer.repaint(XListPeer.java:360) >> at java.desktop/sun.awt.X11.XListPeer.select(XListPeer.java:1214) >> at java.desktop/java.awt.List.select(List.java:598) >> at ListRepaint.test(ListRepaint.java:73) >> at ListRepaint.main(ListRepaint.java:51) >> at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) >> at java.base/java.lang.reflect.Method.invoke(Method.java:580) >> at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138) >> at java.base/java.lang.Thread.run(Thread.java:1575) > > I'm not sure that this should happen, (implemenation bug?) but it is outside the scope of the test updates to fix. this looks like a product bug. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19339#discussion_r1744270136 From serb at openjdk.org Wed Sep 4 19:01:27 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Wed, 4 Sep 2024 19:01:27 GMT Subject: RFR: 8327401: Some jtreg tests fail on Wayland without any tracking bug [v3] In-Reply-To: References: Message-ID: On Wed, 29 May 2024 09:56:20 GMT, Alexander Zvegintsev wrote: >> These changes are intended to stabilize testing on Wayland in X11 compatibility mode. >> >>
>> >> Many tests may fail if there is no `robot.delay()` call after `robot.waitForIdle()` (right after displaying a window). >>
>> >> Some tests do not release previously pressed mouse button/key, this leads to other test failures later, but it is not a problem for X11 session. >> I haven't checked this, but it looks like the XWayland server does not release the key/button emulated by XTEST when the client application disconnects, while the regular X11 server does. >> >>
>> >> For some tests it is critical to call AWT code on EDT(it prevents NPE): >> java/awt/List/KeyEventsTest/KeyEventsTest.java >> java/awt/Paint/ListRepaint.java >> >>
>> >> Some other explanations can be found inline in the comments for a specific test. >>
>> >> Testing is green on all platforms. > > Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: > > spacing test/jdk/java/awt/Frame/MiscUndecorated/ActiveAWTWindowTest.java line 55: > 53: test.doTest(); > 54: } finally { > 55: EventQueue.invokeLater(() -> { Why invokeLater? it might not be completed before jtreg kills the main thread. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19339#discussion_r1744279740 From serb at openjdk.org Wed Sep 4 19:09:29 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Wed, 4 Sep 2024 19:09:29 GMT Subject: RFR: 8327401: Some jtreg tests fail on Wayland without any tracking bug [v3] In-Reply-To: References: Message-ID: <-9336-bEHvkk7xV6_Gv3RrjNnqpa-tEyBiTIunfwFT0=.86e6dbe7-e3bb-4b52-bde6-26424f65bd1a@github.com> On Wed, 22 May 2024 02:51:31 GMT, Alexander Zvegintsev wrote: >> Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: >> >> spacing > > test/jdk/java/awt/List/KeyEventsTest/KeyEventsTest.java line 53: > >> 51: import jdk.test.lib.Platform; >> 52: >> 53: public class KeyEventsTest { > > It is critical to call AWT code on EDT in this, otherwise it may fail with: > >> java.lang.NullPointerException: Cannot read field "x" because "this.prevFocusRect" is null > at java.desktop/sun.awt.X11.XListPeer$ListPainter.paintFocus(XListPeer.java:1976) > at java.desktop/sun.awt.X11.XListPeer$ListPainter.paint(XListPeer.java:1799) > at java.desktop/sun.awt.X11.XListPeer.repaint(XListPeer.java:389) > at java.desktop/sun.awt.X11.XListPeer.scrollVertical(XListPeer.java:1469) > at java.desktop/sun.awt.X11.XListPeer.makeVisible(XListPeer.java:1311) > at java.desktop/java.awt.List.makeVisible(List.java:784) > at KeyEventsTest.test(KeyEventsTest.java:235) > at KeyEventsTest.doTest(KeyEventsTest.java:292) > at KeyEventsTest.start(KeyEventsTest.java:107) > at KeyEventsTest.main(KeyEventsTest.java:56) > at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) > at java.base/java.lang.reflect.Method.invoke(Method.java:580) > at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138) > at java.base/java.lang.Thread.run(Thread.java:1575) product bug as well. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19339#discussion_r1744287938 From serb at openjdk.org Wed Sep 4 19:17:26 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Wed, 4 Sep 2024 19:17:26 GMT Subject: RFR: 8327401: Some jtreg tests fail on Wayland without any tracking bug [v3] In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 18:50:12 GMT, Sergey Bylokhov wrote: >> I'm not sure that this should happen, (implemenation bug?) but it is outside the scope of the test updates to fix. > > this looks like a product bug. see https://bugs.openjdk.org/browse/JDK-8339561 ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19339#discussion_r1744296060 From achung at openjdk.org Wed Sep 4 19:47:54 2024 From: achung at openjdk.org (Alisen Chung) Date: Wed, 4 Sep 2024 19:47:54 GMT Subject: RFR: 8339271: JDK-8328999 giflib update removed giflib VCS URL Message-ID: <9bUf9UKVavgShir_2Z2Hfjelu4gLJUxoWCel8AntU_M=.2a57b6e4-dafa-45ec-97ba-a70da712b2f9@github.com> Changing format of file paths in giflib copyright file and removing extra text from authors list ------------- Commit messages: - update md file Changes: https://git.openjdk.org/jdk/pull/20859/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20859&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339271 Stats: 16 lines in 1 file changed: 6 ins; 10 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20859.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20859/head:pull/20859 PR: https://git.openjdk.org/jdk/pull/20859 From honkar at openjdk.org Wed Sep 4 20:05:20 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 4 Sep 2024 20:05:20 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v5] In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 17:30:59 GMT, Manukumar V S wrote: >> This is a highly intermittent failure, and it failed only once in CI on a particular windows machine and passed on all other runs. >> >> Failure reason: >> When the button was displayed for the first time, the focus rectangle drawn on the button text(Button A) was not seen(failure images attached in the bug). >> >> Fix: >> To stabilize the test, I have added a line -> button.setFocusPainted(false), so that the focus rectangle will not be painted > > Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: > > Added null check to frame before disposing LGTM ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20777#pullrequestreview-2281129608 From duke at openjdk.org Wed Sep 4 20:05:20 2024 From: duke at openjdk.org (duke) Date: Wed, 4 Sep 2024 20:05:20 GMT Subject: RFR: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize [v5] In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 17:30:59 GMT, Manukumar V S wrote: >> This is a highly intermittent failure, and it failed only once in CI on a particular windows machine and passed on all other runs. >> >> Failure reason: >> When the button was displayed for the first time, the focus rectangle drawn on the button text(Button A) was not seen(failure images attached in the bug). >> >> Fix: >> To stabilize the test, I have added a line -> button.setFocusPainted(false), so that the focus rectangle will not be painted > > Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: > > Added null check to frame before disposing @openjdk[bot] Your change (at version 2684224f3d2b658cf73136688a0e2d65a7bc26a0) is now ready to be sponsored by a Committer. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20777#issuecomment-2329870448 From mvs at openjdk.org Wed Sep 4 20:08:26 2024 From: mvs at openjdk.org (Manukumar V S) Date: Wed, 4 Sep 2024 20:08:26 GMT Subject: Integrated: 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize In-Reply-To: References: Message-ID: On Thu, 29 Aug 2024 19:07:29 GMT, Manukumar V S wrote: > This is a highly intermittent failure, and it failed only once in CI on a particular windows machine and passed on all other runs. > > Failure reason: > When the button was displayed for the first time, the focus rectangle drawn on the button text(Button A) was not seen(failure images attached in the bug). > > Fix: > To stabilize the test, I have added a line -> button.setFocusPainted(false), so that the focus rectangle will not be painted This pull request has now been integrated. Changeset: b8d560b6 Author: Manukumar V S Committer: Harshitha Onkar URL: https://git.openjdk.org/jdk/commit/b8d560b6cd9ea35c747487017107a6caeacf8a98 Stats: 10 lines in 1 file changed: 3 ins; 3 del; 4 mod 8339233: Test javax/swing/JButton/SwingButtonResizeTestWithOpenGL.java#id failed: Button renderings are different after window resize Reviewed-by: honkar ------------- PR: https://git.openjdk.org/jdk/pull/20777 From duke at openjdk.org Wed Sep 4 20:10:29 2024 From: duke at openjdk.org (duke) Date: Wed, 4 Sep 2024 20:10:29 GMT Subject: Withdrawn: 8334868: Ensure CheckUninstallModalHook is called in WPageDialogPeer._show In-Reply-To: References: Message-ID: On Mon, 24 Jun 2024 20:16:30 GMT, Alexey Ivanov wrote: > This is somewhat a continuation for [JDK-8307160](https://bugs.openjdk.org/browse/JDK-8307160) and [JDK-8334509](https://bugs.openjdk.org/browse/JDK-8334509). > > The former removed the `doIt` flag in #18584, but it introduced a regression. > The regression is resolved by the latter in #19786, and it added the 'doIt' flag again. > > I think using a flag makes the code less clear. When reading the code, one has to keep track of the current value of the `doIt` flag. > > I raised my concern in [comments in PR 19786](https://github.com/openjdk/jdk/pull/19786#discussion_r1649191308): > >> I'd rather keep `JNI_FALSE` here ? it's more explicit and therefore clearer. You don't have to keep track of the value of `doIt` flag while reading the code. >> >> In fact, I'd prefer no `doIt` flag at all? yet it makes handling the code below `if (ret)` slightly harder. > > I came up with a solution which simplifies handling the clean-up. The solution relies on C++ destructors which are called when the declared objects go out of scope. > > The C++ object wraps a lambda function to clean up and invokes this function in its destructor. Such C++ class has to be a templated class because there's no defined type to represent a lambda. The class has to be declared at the top of the file because it needs C++ linkage. > > There are two `Cleaner` objects declared in the code of `Java_sun_awt_windows_WPageDialogPeer__1show`: > > **`refCleaner`** is declared right after all the references to Java objects are initialised. The corresponding `refCleanup` lambda deletes all the references and replaces the `CLEANUP_SHOW` macro. Before JDK-8307160, the code jumped to a go-to label to perform the clean-up. > > **`postCleaner`** is declared after `AwtDialog::CheckInstallModalHook` is called. Its lambda `postCleanup` uninstalls the modal hook and handles focus transfer as well as saves the updated printer parameters. > > It is `postCleaner` that resolves the bug JDK-8334868 by ensuring `CheckUninstallModalHook` and `ModalActivateNextWindow` are called if `::PageSetupDlg` is called. > > As the result of using `refCleaner`, all the `return` statements in the function use an explicit value, which makes the code cleaner. There's no need to use a `go to` statement or insert a macro to delete references to Java objects, about which one had to remember ? the destructor of the `refCleaner` handles deleting references when `refCleaner` goes out of scope, that is when the function returns. This pull request has been closed without being integrated. ------------- PR: https://git.openjdk.org/jdk/pull/19867 From serb at openjdk.org Wed Sep 4 20:50:27 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Wed, 4 Sep 2024 20:50:27 GMT Subject: RFR: 8327401: Some jtreg tests fail on Wayland without any tracking bug [v3] In-Reply-To: References: Message-ID: On Wed, 29 May 2024 09:56:20 GMT, Alexander Zvegintsev wrote: >> These changes are intended to stabilize testing on Wayland in X11 compatibility mode. >> >>
>> >> Many tests may fail if there is no `robot.delay()` call after `robot.waitForIdle()` (right after displaying a window). >>
>> >> Some tests do not release previously pressed mouse button/key, this leads to other test failures later, but it is not a problem for X11 session. >> I haven't checked this, but it looks like the XWayland server does not release the key/button emulated by XTEST when the client application disconnects, while the regular X11 server does. >> >>
>> >> For some tests it is critical to call AWT code on EDT(it prevents NPE): >> java/awt/List/KeyEventsTest/KeyEventsTest.java >> java/awt/Paint/ListRepaint.java >> >>
>> >> Some other explanations can be found inline in the comments for a specific test. >>
>> >> Testing is green on all platforms. > > Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: > > spacing I'll tweak some of these tests under https://bugs.openjdk.org/browse/JDK-8339561 ------------- PR Comment: https://git.openjdk.org/jdk/pull/19339#issuecomment-2329978844 From honkar at openjdk.org Wed Sep 4 20:52:23 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 4 Sep 2024 20:52:23 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v3] In-Reply-To: References: Message-ID: On Mon, 2 Sep 2024 05:14:23 GMT, Tejesh R wrote: > On failure we are saving the image, I don't think logging pixelColor would add any additional help in debugging here. True, this is not for the failure case but to get some idea on which pixel colors are picked up with the current color tolerance and to adjust the tolerance value accordingly after running CI tests. It is not required though. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20723#discussion_r1744425750 From honkar at openjdk.org Wed Sep 4 20:55:19 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 4 Sep 2024 20:55:19 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v3] In-Reply-To: References: Message-ID: <0vrFE1dMuk0uIFmV9L0d6H1cLEnFjZ7uB0BpXphzonk=.e20325b8-48d2-4ec1-b026-fb65c62ff93d@github.com> On Wed, 4 Sep 2024 05:48:53 GMT, Tejesh R wrote: >> Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: >> 1. Move the frame to center of the screen rather than left top. >> 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. > > Tejesh R has updated the pull request incrementally with one additional commit since the last revision: > > Updated based on review comments > I'm okay with color tolerance set to 10 but if a smaller value works for this test (in CI testing) then it might be better to be more restrictive with color tolerance. LGTM other than the color tolerance comment as mentioned above. ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20723#pullrequestreview-2281285836 From jiangli at openjdk.org Wed Sep 4 23:39:54 2024 From: jiangli at openjdk.org (Jiangli Zhou) Date: Wed, 4 Sep 2024 23:39:54 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> Message-ID: <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> On Tue, 3 Sep 2024 12:50:01 GMT, Magnus Ihse Bursie wrote: > As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. > > This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. > > All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). make/StaticLibs.gmk line 1: > 1: # Perhaps also consider adopting StaticLink.gmk file name from the https://github.com/openjdk/leyden/tree/hermetic-java-runtime/ branch, as we are mostly doing the static linking here. Creating the static libs is handled elsewhere. make/StaticLibs.gmk line 71: > 69: # libsspi_bridge has name conflicts with sunmscapi > 70: BROKEN_STATIC_LIBS += sspi_bridge > 71: # These libs define DllMain which conflict with Hotspot I'm not aware of the DllMain issue with static linking these libs. Could you please explain? The libawt.a and libdt_socket.a are statically linked with `javastatic` in https://github.com/openjdk/leyden/tree/hermetic-java-runtime/ branch. make/StaticLibs.gmk line 74: > 72: BROKEN_STATIC_LIBS += awt dt_shmem dt_socket javaaccessbridge > 73: # These libs are dependent on any of the above disabled libs > 74: BROKEN_STATIC_LIBS += fontmanager jawt lcms net nio Which specific dependent cause these libs being excluded? In https://github.com/openjdk/leyden/tree/hermetic-java-runtime/ branch, these JDK libs (except `libjawt.a`) are statically linked into `javastatic`. make/StaticLibs.gmk line 118: > 116: OPTIMIZATION := HIGH, \ > 117: STATIC_LAUNCHER := true, \ > 118: LDFLAGS := $(JAVASTATIC_LINK_LDFLAGS), \ I could be missing something, but I don't see where is $JAVASTATIC_LINK_LDFLAGS defined. On a related notes, I think we need to include $JVM_LDFLAGS when linking the static "java". See https://bugs.openjdk.org/browse/JDK-8339522?focusedId=14702923&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-14702923. make/modules/java.desktop/lib/AwtLibraries.gmk line 176: > 174: > 175: ifneq ($(ENABLE_HEADLESS_ONLY), true) > 176: # We cannot link with both awt_headless and awt_xawt at the same time Just a note on that. It's doable to link with both awt_headless and awt_xawt with some work. I did some quick experiments on that during the initial investigation for hermetic/static Java. src/java.base/unix/native/libjli/java_md.c line 300: > 298: char jvmcfg[], jint so_jvmcfg) { > 299: /* Compute/set the name of the executable. This is needed for macOS. */ > 300: SetExecname(*pargv); Why is `SetExecname()` needed for the static case? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1744614583 PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1744604685 PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1744603414 PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1744611776 PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1744616878 PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1744620611 From honkar at openjdk.org Thu Sep 5 00:00:53 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Thu, 5 Sep 2024 00:00:53 GMT Subject: RFR: 6672644: JComboBox still scrolling if switch to another window and return back. In-Reply-To: References: Message-ID: <-thiCdaj9qlQshgmU0oRqI_DIqS5FWayBL_JQPk0GSY=.5d5f0f32-5506-4bc0-b7bd-bd68e4a42e27@github.com> On Wed, 4 Sep 2024 00:54:16 GMT, Damon Nguyen wrote: > In a JComboBox, if the user opens the dropdown list and clicks and holds the down-button, then ALT-TABs to switch focus, when the user re-focuses the frame with the JComboBox and opens the dropdown list again, the list will still be scrolling even though the down-button isn't pressed. > > This isn't OS or L&F specific, although Aqua L&F does not have any directional arrows in the dropdown list (and is thus exempt). This led me to believe it could be handled in BasicComboBoxUI where focusLost and focusGain are used or isPopupVisible but the scroll behavior cannot be altered here. Likewise for BasicComboPopup where `autoscroll` is used. However, this behavior isn't related to autoscroll and is actually found in the JScrollbar of the JScrollpane inside of the JComboBox. The timer for the scroll action starts but is never stopped if focus is lost, so a new listener is created and used. The proposed solution uses `KeyboardFocusManager` to track the focus owner. The listener stops the `scrollTimer` when the `focusOwner` property is changed. With this change, the list no longer automatically scrolls when re-focused and instead opens normally. > > The included test is manual due to the need to confirm that the list still scrolls after ALT-TABing. The L&F is set to Metal since it is the cross-platform lookandfeel and has directional buttons for the JScrollPane list. src/java.desktop/share/classes/javax/swing/plaf/basic/BasicScrollBarUI.java line 1238: > 1236: // Stop scrolling if no longer focus owner > 1237: if (e.getNewValue() == null && scrollTimer.isRunning()) { > 1238: scrollTimer.stop(); In some places `scrollTimer.stop()` is followed by `scrollbar.setValueIsAdjusting(false)`. Is this applicable for KeyboardFocusListener ? For instance: https://github.com/openjdk/jdk/blob/0cc3caf2b49426bb6738a9792c88275c0cc7774a/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicScrollBarUI.java#L1608 test/jdk/javax/swing/JComboBox/JComboBoxScrollFocusTest.java line 59: > 57: UnsupportedLookAndFeelException, ClassNotFoundException, > 58: InstantiationException, IllegalAccessException, AWTException, > 59: InterruptedException, InvocationTargetException { Can this be simplified to throw generic Exception? test/jdk/javax/swing/JComboBox/JComboBoxScrollFocusTest.java line 85: > 83: return frame; > 84: } > 85: } EOF newline missing here ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20845#discussion_r1744633549 PR Review Comment: https://git.openjdk.org/jdk/pull/20845#discussion_r1744612747 PR Review Comment: https://git.openjdk.org/jdk/pull/20845#discussion_r1744613060 From jiangli at openjdk.org Thu Sep 5 00:05:50 2024 From: jiangli at openjdk.org (Jiangli Zhou) Date: Thu, 5 Sep 2024 00:05:50 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> Message-ID: On Tue, 3 Sep 2024 12:50:01 GMT, Magnus Ihse Bursie wrote: > As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. > > This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. > > All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). src/hotspot/share/classfile/classLoader.cpp line 953: > 951: assert(CanonicalizeEntry == nullptr, "should not load java library twice"); > 952: if (is_vm_statically_linked()) { > 953: CanonicalizeEntry = CAST_TO_FN_PTR(canonicalize_fn_t, os::lookup_function("JDK_Canonicalize")); Can you add an assert to make sure `CanonicalizeEntry` is not NULL? src/hotspot/share/classfile/classLoader.cpp line 969: > 967: > 968: if (is_vm_statically_linked()) { > 969: JImageOpen = CAST_TO_FN_PTR(JImageOpen_t, os::lookup_function("JIMAGE_Open")); It might be good to assert these are not NULL as well. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1744635408 PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1744635916 From jiangli at openjdk.org Thu Sep 5 00:17:51 2024 From: jiangli at openjdk.org (Jiangli Zhou) Date: Thu, 5 Sep 2024 00:17:51 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> Message-ID: On Tue, 3 Sep 2024 12:50:01 GMT, Magnus Ihse Bursie wrote: > As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. > > This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. > > All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). src/java.base/unix/native/libjli/java_md.c line 509: > 507: > 508: if (GetApplicationHome(path, pathsize)) { > 509: if (JLI_IsStaticallyLinked()) { `GetJREPath()` does not need to be called for the static case. Any reason why this path is executed for static mode? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1744642315 From jiangli at openjdk.org Thu Sep 5 00:27:50 2024 From: jiangli at openjdk.org (Jiangli Zhou) Date: Thu, 5 Sep 2024 00:27:50 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> Message-ID: <4ZyGLLJL7fVUDI0QXFBOZ1dK97dOjWKDuDCBhsPqEHs=.ac87ad4f-0839-4d5d-a59e-b273f37a6711@github.com> On Tue, 3 Sep 2024 12:51:13 GMT, Magnus Ihse Bursie wrote: > @jianglizhou Can you please check if there are any other contributors that should be acknowledged? Thanks for asking! I checked all the related changes in https://github.com/openjdk/leyden/tree/hermetic-java-runtime branch. Following are the related commits from the branch corresponding to the extracted changes included in this PR. There are no other author for those changes. However, all changes have go though prior reviews by my teammates. I didn't ask it for the earlier integration PR, is there way to mention the reviewer contributions? - https://github.com/openjdk/leyden/commit/bceb753f79b4bc767fdfb71d5f68a84430644df6 - https://github.com/openjdk/leyden/commit/a998a9d6ca44a93d4e9859a17de2dca60963de76 - https://github.com/openjdk/leyden/commit/53aa8f0cf418ab5f435a4b9996c7754fb8505d4b - https://github.com/openjdk/leyden/commit/63f84f5c0a98077c8f49a19f026f103b9e29d6e0 - https://github.com/openjdk/leyden/commit/afe9ca06dd86e8983768de80ba1a08f3c68589b4 - https://github.com/openjdk/leyden/commit/7d75a7f4d6aa020b7580fbbf660b2b3e3a41b27 ------------- PR Comment: https://git.openjdk.org/jdk/pull/20837#issuecomment-2330368791 From tr at openjdk.org Thu Sep 5 04:48:36 2024 From: tr at openjdk.org (Tejesh R) Date: Thu, 5 Sep 2024 04:48:36 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v4] In-Reply-To: References: Message-ID: > Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: > 1. Move the frame to center of the screen rather than left top. > 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. Tejesh R has updated the pull request incrementally with one additional commit since the last revision: reduce tolerance value ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20723/files - new: https://git.openjdk.org/jdk/pull/20723/files/9a562914..0f28899d Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20723&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20723&range=02-03 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/20723.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20723/head:pull/20723 PR: https://git.openjdk.org/jdk/pull/20723 From jwaters at openjdk.org Thu Sep 5 05:11:55 2024 From: jwaters at openjdk.org (Julian Waters) Date: Thu, 5 Sep 2024 05:11:55 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> Message-ID: On Wed, 4 Sep 2024 23:06:00 GMT, Jiangli Zhou wrote: >> As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. >> >> This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. >> >> All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). > > make/StaticLibs.gmk line 71: > >> 69: # libsspi_bridge has name conflicts with sunmscapi >> 70: BROKEN_STATIC_LIBS += sspi_bridge >> 71: # These libs define DllMain which conflict with Hotspot > > I'm not aware of the DllMain issue with static linking these libs. Could you please explain? The libawt.a and libdt_socket.a are statically linked with `javastatic` in https://github.com/openjdk/leyden/tree/hermetic-java-runtime/ branch. DllMain is a Windows specific initialization method that is called when a Windows dll (Dynamic library) is loaded, among other things. Since DllMain is extern "C", it is not mangled and hence likely that having multiple static libraries that each define it will cause multiple symbol definition errors during linking. It might be that the reason hermetic Java hasn't encountered this problem yet is because it mainly tests its code on Linux, while this is a Windows specific issue, since the names you mention (libawt.a and libdt_socket.a) are the names of those libraries on Linux, not Windows. However, the issue likely deeper than that. DllMain is completely wrong to define when inside a static library, and should not be compiled at all when making the static versions of these libraries. Simply localizing the DllMain symbol when creating a static library would be wrong. We'll have to find out how to run the initialization code for each of these currently dynamic libraries without DllMain when compiling them as static libraries > src/hotspot/share/classfile/classLoader.cpp line 953: > >> 951: assert(CanonicalizeEntry == nullptr, "should not load java library twice"); >> 952: if (is_vm_statically_linked()) { >> 953: CanonicalizeEntry = CAST_TO_FN_PTR(canonicalize_fn_t, os::lookup_function("JDK_Canonicalize")); > > Can you add an assert to make sure `CanonicalizeEntry` is not NULL? Also please remember to use nullptr and not NULL! @kimbarrett would appreciate it :) ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1744808169 PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1744810286 From abhiscxk at openjdk.org Thu Sep 5 09:31:51 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 5 Sep 2024 09:31:51 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v4] In-Reply-To: References: Message-ID: On Thu, 5 Sep 2024 04:48:36 GMT, Tejesh R wrote: >> Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: >> 1. Move the frame to center of the screen rather than left top. >> 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. > > Tejesh R has updated the pull request incrementally with one additional commit since the last revision: > > reduce tolerance value `private static BufferedImage imageAfterChecked;` can be move inside main method. ------------- PR Review: https://git.openjdk.org/jdk/pull/20723#pullrequestreview-2282379098 From tr at openjdk.org Thu Sep 5 09:38:51 2024 From: tr at openjdk.org (Tejesh R) Date: Thu, 5 Sep 2024 09:38:51 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v4] In-Reply-To: References: Message-ID: On Thu, 5 Sep 2024 09:29:11 GMT, Abhishek Kumar wrote: > `private static BufferedImage imageAfterChecked;` can be move inside main method. It's used inside `EventQueue`, then have to covert to atomic. Better to retain as it is. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20723#issuecomment-2331059882 From ihse at openjdk.org Thu Sep 5 09:54:52 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Thu, 5 Sep 2024 09:54:52 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> Message-ID: On Thu, 5 Sep 2024 05:06:55 GMT, Julian Waters wrote: >> make/StaticLibs.gmk line 71: >> >>> 69: # libsspi_bridge has name conflicts with sunmscapi >>> 70: BROKEN_STATIC_LIBS += sspi_bridge >>> 71: # These libs define DllMain which conflict with Hotspot >> >> I'm not aware of the DllMain issue with static linking these libs. Could you please explain? The libawt.a and libdt_socket.a are statically linked with `javastatic` in https://github.com/openjdk/leyden/tree/hermetic-java-runtime/ branch. > > DllMain is a Windows specific initialization method that is called when a Windows dll (Dynamic library) is loaded, among other things. Since DllMain is extern "C", it is not mangled and hence likely that having multiple static libraries that each define it will cause multiple symbol definition errors during linking. It might be that the reason hermetic Java hasn't encountered this problem yet is because it mainly tests its code on Linux, while this is a Windows specific issue, since the names you mention (libawt.a and libdt_socket.a) are the names of those libraries on Linux, not Windows. However, the issue likely deeper than that. DllMain is completely wrong to define when inside a static library, and should not be compiled at all when making the static versions of these libraries. Simply localizing the DllMain symbol when creating a static library would be wrong. We'll have to find out how to run the initialization code for each of these currently dynamic libraries without DllMai n when compiling them as static libraries As Julian says, this is for Windows, and you have not even tried to compile that in your prototype. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1745162496 From ihse at openjdk.org Thu Sep 5 09:54:53 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Thu, 5 Sep 2024 09:54:53 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> Message-ID: <7tmo9e9RcUi06DYLjvQEaEu_XCY4bUa4OcWByw7vCdc=.11672bb7-71ca-46f4-8ed1-48512ab59e15@github.com> On Wed, 4 Sep 2024 23:03:23 GMT, Jiangli Zhou wrote: >> As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. >> >> This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. >> >> All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). > > make/StaticLibs.gmk line 74: > >> 72: BROKEN_STATIC_LIBS += awt dt_shmem dt_socket javaaccessbridge >> 73: # These libs are dependent on any of the above disabled libs >> 74: BROKEN_STATIC_LIBS += fontmanager jawt lcms net nio > > Which specific dependent cause these libs being excluded? In https://github.com/openjdk/leyden/tree/hermetic-java-runtime/ branch, these JDK libs (except `libjawt.a`) are statically linked into `javastatic`. Well, but your proof-of-concept only supports clang on linux, where you have enabled symbol hiding. Our conclusion in the zoom talks was that we should strive for getting a static launcher build pushed into mainline before we have full and proper support for symbol hiding on all platforms. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1745161079 From ihse at openjdk.org Thu Sep 5 10:02:59 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Thu, 5 Sep 2024 10:02:59 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> Message-ID: On Wed, 4 Sep 2024 23:28:10 GMT, Jiangli Zhou wrote: >> As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. >> >> This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. >> >> All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). > > make/modules/java.desktop/lib/AwtLibraries.gmk line 176: > >> 174: >> 175: ifneq ($(ENABLE_HEADLESS_ONLY), true) >> 176: # We cannot link with both awt_headless and awt_xawt at the same time > > Just a note on that. It's doable to link with both awt_headless and awt_xawt with some work. I did some quick experiments on that during the initial investigation for hermetic/static Java. That would require quite some work then..! The two libraries are meant as exclusive complements to each other -- they both implement the same "entry points", but in different ways -- one with X11 support, and one without. For other reasons (outside of static launcher reasons) I'd like to see some refactoring in how this is implemented, but that is completely outside this discussion. For the static launcher scenario, I can't even see the point of trying to include both? What would you accomplish by that? The entire point of having two libraries is that you want to be able to have full workstation capabilities, but then be dependent on the X11 libraries, or have limited capabilities, but skip the X11 dependency. > src/java.base/unix/native/libjli/java_md.c line 300: > >> 298: char jvmcfg[], jint so_jvmcfg) { >> 299: /* Compute/set the name of the executable. This is needed for macOS. */ >> 300: SetExecname(*pargv); > > Why is `SetExecname()` needed for the static case? Because of how macOS re-exec the launcher to reserve the main thread for GUI operations. Please check the rather extensive documentation elsewhere in this file. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1745171016 PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1745172749 From ihse at openjdk.org Thu Sep 5 10:02:58 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Thu, 5 Sep 2024 10:02:58 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> Message-ID: On Tue, 3 Sep 2024 12:50:01 GMT, Magnus Ihse Bursie wrote: > As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. > > This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. > > All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). The `/contributor` is supposed to add attribution to whomever wrote the code. There is no way to document any prior reviewing for code; but they are of course welcome to review this PR, and then it will be documented. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20837#issuecomment-2331113024 From abhiscxk at openjdk.org Thu Sep 5 10:03:53 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 5 Sep 2024 10:03:53 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v4] In-Reply-To: References: Message-ID: On Thu, 5 Sep 2024 09:36:43 GMT, Tejesh R wrote: > It's used inside `EventQueue`, then have to covert to atomic. Better to retain as it is. I guess only `Point point = checkbox.getLocationOnScreen();` should be enough to access on EDT, rest of the code can be executed on main thread. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20723#issuecomment-2331114701 From ihse at openjdk.org Thu Sep 5 10:05:56 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Thu, 5 Sep 2024 10:05:56 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> Message-ID: On Wed, 4 Sep 2024 23:24:13 GMT, Jiangli Zhou wrote: >> As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. >> >> This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. >> >> All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). > > make/StaticLibs.gmk line 1: > >> 1: # > > Perhaps also consider adopting StaticLink.gmk file name from the https://github.com/openjdk/leyden/tree/hermetic-java-runtime/ branch, as we are mostly doing the static linking here. Creating the static libs is handled elsewhere. My intention is to move all relevant handling of static linking into this file. > make/StaticLibs.gmk line 118: > >> 116: OPTIMIZATION := HIGH, \ >> 117: STATIC_LAUNCHER := true, \ >> 118: LDFLAGS := $(JAVASTATIC_LINK_LDFLAGS), \ > > I could be missing something, but I don't see where is $JAVASTATIC_LINK_LDFLAGS defined. > > On a related notes, I think we need to include $JVM_LDFLAGS when linking the static "java". See https://bugs.openjdk.org/browse/JDK-8339522?focusedId=14702923&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-14702923. You are right, this is dead code. Thanks for spotting this. During my experimentation, I tried passing along LDFLAGS from the individual libraries as well, but it turned out not to be a good idea -- the way we have used them were to modify some special properties on a single dynamic library, which did not apply to the static library as a whole. However, there is a risk that we in the future need to add LDFLAGS to a library that also needs to be carried over to the static launcher. If this happens, I guess we need to separate between LDFLAGS_ONLY_FOR_THIS_DLL and LDFLAGS_ALSO_FOR_STATIC_LINKING. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1745180739 PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1745180044 From tr at openjdk.org Thu Sep 5 10:06:53 2024 From: tr at openjdk.org (Tejesh R) Date: Thu, 5 Sep 2024 10:06:53 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v4] In-Reply-To: References: Message-ID: On Thu, 5 Sep 2024 10:00:44 GMT, Abhishek Kumar wrote: > > It's used inside `EventQueue`, then have to covert to atomic. Better to retain as it is. > > I guess only `Point point = checkbox.getLocationOnScreen();` should be enough to access on EDT, rest of the code can be executed on main thread. Then have to move `point` out of EDT. Can do it. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20723#issuecomment-2331122794 From alanb at openjdk.org Thu Sep 5 10:19:51 2024 From: alanb at openjdk.org (Alan Bateman) Date: Thu, 5 Sep 2024 10:19:51 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> Message-ID: <1XTLQONTqkE6n6BTX2KzIngNeewtx5F-cHqvHw7Bk4U=.ded8a4e8-e3e4-414a-afc1-9c694bcb9182@github.com> On Tue, 3 Sep 2024 12:50:01 GMT, Magnus Ihse Bursie wrote: > As a prerequisite for Hermetic Java, we need a statically linked `java` launcher. It should behave like the normal, dynamically linked `java` launcher, except that all JDK native libraries should be statically, not dynamically, linked. > > This patch is the first step towards this goal. It will generate a `static-jdk` image with a statically linked launcher. This launcher is missing several native libs, however, and does therefore not behave like a proper dynamic java. One of the reasons for this is that local symbol hiding in static libraries are not implemented yet, which causes symbol clashes when linking all static libraries together. This will be addressed in an upcoming patch. > > All changes in the `src` directory are copied from, or inspired by, changes made in [the hermetic-java-runtime branch in Project Leyden](https://github.com/openjdk/leyden/tree/hermetic-java-runtime). src/java.base/unix/native/libjli/java_md.c line 509: > 507: > 508: if (GetApplicationHome(path, pathsize)) { > 509: if (JLI_IsStaticallyLinked()) { In passing, GetJREPath's function description includes "or registry settings" which is confusing to see now. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1745198354 From tr at openjdk.org Thu Sep 5 10:23:15 2024 From: tr at openjdk.org (Tejesh R) Date: Thu, 5 Sep 2024 10:23:15 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v5] In-Reply-To: References: Message-ID: > Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: > 1. Move the frame to center of the screen rather than left top. > 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. Tejesh R has updated the pull request incrementally with one additional commit since the last revision: Updated with review comments ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20723/files - new: https://git.openjdk.org/jdk/pull/20723/files/0f28899d..a02be6cf Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20723&range=04 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20723&range=03-04 Stats: 19 lines in 1 file changed: 1 ins; 3 del; 15 mod Patch: https://git.openjdk.org/jdk/pull/20723.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20723/head:pull/20723 PR: https://git.openjdk.org/jdk/pull/20723 From ngubarkov at openjdk.org Thu Sep 5 12:04:19 2024 From: ngubarkov at openjdk.org (Nikita Gubarkov) Date: Thu, 5 Sep 2024 12:04:19 GMT Subject: RFR: 8339341: SurfaceManager cacheMap retains strong references [v2] In-Reply-To: <1ecWvJLiG54e0saEz_Jjz46gzxXnqsNDagdPQ3y_BN4=.27116e44-886b-405f-9d87-ec5e82e2fd20@github.com> References: <1ecWvJLiG54e0saEz_Jjz46gzxXnqsNDagdPQ3y_BN4=.27116e44-886b-405f-9d87-ec5e82e2fd20@github.com> Message-ID: > I moved SurfaceDataProxy cache into a separate class. > Now caching level is determined by placement of the SurfaceManager.ProxyCache object instead of a "proxy key". This cache "owns" proxies and therefore strong refs via them do not prevent the cache and GraphicsConfig from being detected as weakly reachable. Nikita Gubarkov has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains one commit: 8339341: Make SurfaceDataProxy cache a separate entity. Now caching level is determined by placement of the SurfaceManager.ProxyCache object instead of a "proxy key". This cache "owns" proxies and therefore strong refs via them do not prevent the cache (and hence GraphicsConfig) from being detected as weakly reachable. ------------- Changes: https://git.openjdk.org/jdk/pull/20825/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20825&range=01 Stats: 173 lines in 17 files changed: 55 ins; 55 del; 63 mod Patch: https://git.openjdk.org/jdk/pull/20825.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20825/head:pull/20825 PR: https://git.openjdk.org/jdk/pull/20825 From abhiscxk at openjdk.org Thu Sep 5 12:04:53 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 5 Sep 2024 12:04:53 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v5] In-Reply-To: References: Message-ID: On Thu, 5 Sep 2024 10:23:15 GMT, Tejesh R wrote: >> Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: >> 1. Move the frame to center of the screen rather than left top. >> 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. > > Tejesh R has updated the pull request incrementally with one additional commit since the last revision: > > Updated with review comments test/jdk/java/awt/Checkbox/CheckboxCheckerScalingTest.java line 49: > 47: private static Frame frame; > 48: private static Checkbox checkbox; > 49: private static Point point; `point` is accessed across multiple threads, should be declared as `volatile`. No need to declare `checkmarkFound ` as `volatile`, it is accessed only in main thread. test/jdk/java/awt/Checkbox/CheckboxCheckerScalingTest.java line 82: > 80: if (compareColor(pixelColor)) { > 81: colorCounter++; > 82: if (colorCounter >= COLOR_CHECK_THRESHOLD) { Just a suggestion, Could be merged in one statement `if (++colorCounter >= COLOR_CHECK_THRESHOLD) {` ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20723#discussion_r1745331036 PR Review Comment: https://git.openjdk.org/jdk/pull/20723#discussion_r1745334295 From achung at openjdk.org Thu Sep 5 15:14:21 2024 From: achung at openjdk.org (Alisen Chung) Date: Thu, 5 Sep 2024 15:14:21 GMT Subject: RFR: 8339524: Clean up ExtendedRobot tests Message-ID: Cleaning up tests building ExtendedRobot that shouldn't be. ------------- Commit messages: - revert test using ExtendedRobot - reverted some tests actually using ExtendedRobot - init commit Changes: https://git.openjdk.org/jdk/pull/20846/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20846&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339524 Stats: 5 lines in 2 files changed: 0 ins; 1 del; 4 mod Patch: https://git.openjdk.org/jdk/pull/20846.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20846/head:pull/20846 PR: https://git.openjdk.org/jdk/pull/20846 From tr at openjdk.org Thu Sep 5 15:14:21 2024 From: tr at openjdk.org (Tejesh R) Date: Thu, 5 Sep 2024 15:14:21 GMT Subject: RFR: 8339524: Clean up ExtendedRobot tests In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 03:34:34 GMT, Alisen Chung wrote: > Cleaning up tests building ExtendedRobot that shouldn't be. test/jdk/java/awt/Robot/ModifierRobotKey/ModifierRobotEnhancedKeyTest.java line 158: > 156: > 157: public void doTest() throws Exception { > 158: robot = new ExtendedRobot(); `robot.click()` at line 161 is from ExtendedRobot class. Can u reconfirm that ExtendedRobot is not required here and other classes? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20846#discussion_r1743170960 From dnguyen at openjdk.org Thu Sep 5 15:48:55 2024 From: dnguyen at openjdk.org (Damon Nguyen) Date: Thu, 5 Sep 2024 15:48:55 GMT Subject: RFR: 6672644: JComboBox still scrolling if switch to another window and return back. In-Reply-To: <-thiCdaj9qlQshgmU0oRqI_DIqS5FWayBL_JQPk0GSY=.5d5f0f32-5506-4bc0-b7bd-bd68e4a42e27@github.com> References: <-thiCdaj9qlQshgmU0oRqI_DIqS5FWayBL_JQPk0GSY=.5d5f0f32-5506-4bc0-b7bd-bd68e4a42e27@github.com> Message-ID: On Wed, 4 Sep 2024 23:58:02 GMT, Harshitha Onkar wrote: >> In a JComboBox, if the user opens the dropdown list and clicks and holds the down-button, then ALT-TABs to switch focus, when the user re-focuses the frame with the JComboBox and opens the dropdown list again, the list will still be scrolling even though the down-button isn't pressed. >> >> This isn't OS or L&F specific, although Aqua L&F does not have any directional arrows in the dropdown list (and is thus exempt). This led me to believe it could be handled in BasicComboBoxUI where focusLost and focusGain are used or isPopupVisible but the scroll behavior cannot be altered here. Likewise for BasicComboPopup where `autoscroll` is used. However, this behavior isn't related to autoscroll and is actually found in the JScrollbar of the JScrollpane inside of the JComboBox. The timer for the scroll action starts but is never stopped if focus is lost, so a new listener is created and used. The proposed solution uses `KeyboardFocusManager` to track the focus owner. The listener stops the `scrollTimer` when the `focusOwner` property is changed. With this change, the list no longer automatically scrolls when re-focused and instead opens normally. >> >> The included test is manual due to the need to confirm that the list still scrolls after ALT-TABing. The L&F is set to Metal since it is the cross-platform lookandfeel and has directional buttons for the JScrollPane list. > > src/java.desktop/share/classes/javax/swing/plaf/basic/BasicScrollBarUI.java line 1238: > >> 1236: // Stop scrolling if no longer focus owner >> 1237: if (e.getNewValue() == null && scrollTimer.isRunning()) { >> 1238: scrollTimer.stop(); > > In some places `scrollTimer.stop()` is followed by `scrollbar.setValueIsAdjusting(false)`. Is this applicable for KeyboardFocusListener ? > For instance: > https://github.com/openjdk/jdk/blob/0cc3caf2b49426bb6738a9792c88275c0cc7774a/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicScrollBarUI.java#L1608 You're right. I added this to my fix, but didn't get it pushed yet. Thanks for the reminder. > test/jdk/javax/swing/JComboBox/JComboBoxScrollFocusTest.java line 59: > >> 57: UnsupportedLookAndFeelException, ClassNotFoundException, >> 58: InstantiationException, IllegalAccessException, AWTException, >> 59: InterruptedException, InvocationTargetException { > > Can this be simplified to throw generic Exception? Good point. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20845#discussion_r1745789070 PR Review Comment: https://git.openjdk.org/jdk/pull/20845#discussion_r1745789363 From dnguyen at openjdk.org Thu Sep 5 15:51:01 2024 From: dnguyen at openjdk.org (Damon Nguyen) Date: Thu, 5 Sep 2024 15:51:01 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v3] In-Reply-To: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> References: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> Message-ID: On Wed, 4 Sep 2024 04:21:00 GMT, Abhishek Kumar wrote: >> Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. >> Test removed from `Problem-list` file as well. >> >> CI testing link is posted in JBS. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Test name renamed Since the other issue in question is separate, then this fix looks good. ------------- Marked as reviewed by dnguyen (Committer). PR Review: https://git.openjdk.org/jdk/pull/20791#pullrequestreview-2283470100 From dnguyen at openjdk.org Thu Sep 5 15:53:59 2024 From: dnguyen at openjdk.org (Damon Nguyen) Date: Thu, 5 Sep 2024 15:53:59 GMT Subject: RFR: 8339271: giflib attribution correction In-Reply-To: <9bUf9UKVavgShir_2Z2Hfjelu4gLJUxoWCel8AntU_M=.2a57b6e4-dafa-45ec-97ba-a70da712b2f9@github.com> References: <9bUf9UKVavgShir_2Z2Hfjelu4gLJUxoWCel8AntU_M=.2a57b6e4-dafa-45ec-97ba-a70da712b2f9@github.com> Message-ID: On Wed, 4 Sep 2024 19:43:19 GMT, Alisen Chung wrote: > Changing format of file paths in giflib copyright file and removing extra text from authors list Marked as reviewed by dnguyen (Committer). LGTM ------------- PR Review: https://git.openjdk.org/jdk/pull/20859#pullrequestreview-2283477970 PR Comment: https://git.openjdk.org/jdk/pull/20859#issuecomment-2332092481 From djgredler at gmail.com Thu Sep 5 18:30:39 2024 From: djgredler at gmail.com (Daniel Gredler) Date: Thu, 5 Sep 2024 20:30:39 +0200 Subject: Graphics2D.drawString() fails with Font derived from rotated + scaled AffineTransform Message-ID: Hi all, I've run into a bug [1] in the drawing of strings via Graphics2D.drawString(), when used with a Font derived from a rotated + scaled AffineTransform. If the AffineTransform scaling is small, the text draws correctly. But if the scale is too large, the text does not draw. [3] It looks like it's an effect of the OutlineTextRenderer.THRESHHOLD; text larger than this threshold is sent to the OutlineTextRenderer and fails to draw. The fix [2] seems to be to apply the position translation transformation *after* the text outline shape is created, rather than passing it into TextLayout.getOutline(). However, I do not know if this is the correct fix, or if it is just a workaround to a deeper issue in TextLayout.getOutline(), which in theory might need to wait to apply the provided translation until after the layout path has had a chance to map to user space. Can someone familiar with this code comment on whether the proposed fix is the correct fix, or whether deeper surgery is needed in TextLayout.getOutline()? My other small worry with the current fix [2] is that it creates an extra copy of the Shape object, so it's going to allocate a bit more memory than the current implementation. Not sure if there's a better way to update the Shape in-place. Take care, Daniel --- [1] Oracle internal review ID 9077538, no public bug ID yet [2] https://github.com/openjdk/jdk/compare/master...gredler:jdk:draw-string-bug [3] import java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; import java.awt.geom.AffineTransform; import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; /** *

The "TEST 2" text does not draw. NOTE: Reducing the AffineTransform scale * from 12 to 10 seems to allow it to draw?!? * *

Oracle internal review ID : 9077538 */ public class DrawStringTest { public static void main(String[] args) throws Exception { AffineTransform at = AffineTransform.getRotateInstance(3 * Math.PI / 2); at.scale(12, 12); Font font1 = new Font("SansSerif", Font.PLAIN, 10); Font font2 = font1.deriveFont(at); BufferedImage image = new BufferedImage(500, 500, BufferedImage.TYPE_BYTE_GRAY); Graphics2D g2d = image.createGraphics(); g2d.setColor(Color.WHITE); g2d.fillRect(0, 0, image.getWidth(), image.getHeight()); g2d.setColor(Color.BLACK); g2d.setFont(font1); g2d.drawString("TEST 1", 200, 400); // draws text g2d.setFont(font2); g2d.drawString("TEST 2", 200, 400); // does not draw text g2d.dispose(); ImageIO.write(image, "png", new File("test.png")); } } -------------- next part -------------- An HTML attachment was scrubbed... URL: From jiangli at openjdk.org Thu Sep 5 19:21:52 2024 From: jiangli at openjdk.org (Jiangli Zhou) Date: Thu, 5 Sep 2024 19:21:52 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: <7tmo9e9RcUi06DYLjvQEaEu_XCY4bUa4OcWByw7vCdc=.11672bb7-71ca-46f4-8ed1-48512ab59e15@github.com> References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> <7tmo9e9RcUi06DYLjvQEaEu_XCY4bUa4OcWByw7vCdc=.11672bb7-71ca-46f4-8ed1-48512ab59e15@github.com> Message-ID: On Thu, 5 Sep 2024 09:50:49 GMT, Magnus Ihse Bursie wrote: > Well, but your proof-of-concept only supports clang on linux, where you have enabled symbol hiding. The hermetic-java-runtime branch doesn't have general symbol hiding enabled. That's why I'm wondering what the issues are with these libs except for `libjawt` with the current PR. (A side-note on `libjawt.a`: For static linking, we don't need `libjawt.a` and the headless or headful libs can be directly statically linked with.) > > Our conclusion in the zoom talks was that we should strive for getting a static launcher build pushed into mainline before we have full and proper support for symbol hiding on all platforms. Right, that would be a good & practical way to add the support in the mainline. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1746051842 From dnguyen at openjdk.org Thu Sep 5 20:32:07 2024 From: dnguyen at openjdk.org (Damon Nguyen) Date: Thu, 5 Sep 2024 20:32:07 GMT Subject: RFR: 6672644: JComboBox still scrolling if switch to another window and return back [v2] In-Reply-To: References: Message-ID: > In a JComboBox, if the user opens the dropdown list and clicks and holds the down-button, then ALT-TABs to switch focus, when the user re-focuses the frame with the JComboBox and opens the dropdown list again, the list will still be scrolling even though the down-button isn't pressed. > > This isn't OS or L&F specific, although Aqua L&F does not have any directional arrows in the dropdown list (and is thus exempt). This led me to believe it could be handled in BasicComboBoxUI where focusLost and focusGain are used or isPopupVisible but the scroll behavior cannot be altered here. Likewise for BasicComboPopup where `autoscroll` is used. However, this behavior isn't related to autoscroll and is actually found in the JScrollbar of the JScrollpane inside of the JComboBox. The timer for the scroll action starts but is never stopped if focus is lost, so a new listener is created and used. The proposed solution uses `KeyboardFocusManager` to track the focus owner. The listener stops the `scrollTimer` when the `focusOwner` property is changed. With this change, the list no longer automatically scrolls when re-focused and instead opens normally. > > The included test is manual due to the need to confirm that the list still scrolls after ALT-TABing. The L&F is set to Metal since it is the cross-platform lookandfeel and has directional buttons for the JScrollPane list. Damon Nguyen has updated the pull request incrementally with one additional commit since the last revision: Review comments ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20845/files - new: https://git.openjdk.org/jdk/pull/20845/files/0cc3caf2..312c484d Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20845&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20845&range=00-01 Stats: 21 lines in 2 files changed: 5 ins; 10 del; 6 mod Patch: https://git.openjdk.org/jdk/pull/20845.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20845/head:pull/20845 PR: https://git.openjdk.org/jdk/pull/20845 From jiangli at openjdk.org Thu Sep 5 20:39:51 2024 From: jiangli at openjdk.org (Jiangli Zhou) Date: Thu, 5 Sep 2024 20:39:51 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> Message-ID: On Thu, 5 Sep 2024 05:06:55 GMT, Julian Waters wrote: >> make/StaticLibs.gmk line 71: >> >>> 69: # libsspi_bridge has name conflicts with sunmscapi >>> 70: BROKEN_STATIC_LIBS += sspi_bridge >>> 71: # These libs define DllMain which conflict with Hotspot >> >> I'm not aware of the DllMain issue with static linking these libs. Could you please explain? The libawt.a and libdt_socket.a are statically linked with `javastatic` in https://github.com/openjdk/leyden/tree/hermetic-java-runtime/ branch. > > DllMain is a Windows specific initialization method that is called when a Windows dll (Dynamic library) is loaded, among other things. Since DllMain is extern "C", it is not mangled and hence likely that having multiple static libraries that each define it will cause multiple symbol definition errors during linking. It might be that the reason hermetic Java hasn't encountered this problem yet is because it mainly tests its code on Linux, while this is a Windows specific issue, since the names you mention (libawt.a and libdt_socket.a) are the names of those libraries on Linux, not Windows. However, the issue likely deeper than that. DllMain is completely wrong to define when inside a static library, and should not be compiled at all when making the static versions of these libraries. Simply localizing the DllMain symbol when creating a static library would be wrong. We'll have to find out how to run the initialization code for each of these currently dynamic libraries without DllMai n when compiling them as static libraries @TheShermanTanker thanks for the details on DllMain issue. Right, we have only tested hermetic/static Java on Linux. I agree that hiding DllMain is not the right approach. One possible solution is to put the DllMain in separate .c/.cpp files and only link with those when building the .dll. With the current PR, we mainly focuses on the Linux (or unix-like) port, e.g. `os::lookup_function()` is not supported in the Windows port yet. Any thoughts on if we only limit static linking these affected JDK libraries on Windows initially, and allow statically linking more libs on Linux? We can add those libs on Windows when we resolve the DllMain issue. For running some minimum jtreg testing initially, I think we would want to include `libnet` (and other libs) in the statically linked `java` binary. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1746129101 From jiangli at openjdk.org Thu Sep 5 20:43:52 2024 From: jiangli at openjdk.org (Jiangli Zhou) Date: Thu, 5 Sep 2024 20:43:52 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> Message-ID: On Thu, 5 Sep 2024 10:03:19 GMT, Magnus Ihse Bursie wrote: >> make/StaticLibs.gmk line 118: >> >>> 116: OPTIMIZATION := HIGH, \ >>> 117: STATIC_LAUNCHER := true, \ >>> 118: LDFLAGS := $(JAVASTATIC_LINK_LDFLAGS), \ >> >> I could be missing something, but I don't see where is $JAVASTATIC_LINK_LDFLAGS defined. >> >> On a related notes, I think we need to include $JVM_LDFLAGS when linking the static "java". See https://bugs.openjdk.org/browse/JDK-8339522?focusedId=14702923&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-14702923. > > You are right, this is dead code. Thanks for spotting this. > > During my experimentation, I tried passing along LDFLAGS from the individual libraries as well, but it turned out not to be a good idea -- the way we have used them were to modify some special properties on a single dynamic library, which did not apply to the static library as a whole. > > However, there is a risk that we in the future need to add LDFLAGS to a library that also needs to be carried over to the static launcher. If this happens, I guess we need to separate between LDFLAGS_ONLY_FOR_THIS_DLL and LDFLAGS_ALSO_FOR_STATIC_LINKING. +1 on "separate between LDFLAGS_ONLY_FOR_THIS_DLL and LDFLAGS_ALSO_FOR_STATIC_LINKING" I think we need to get the linker flags sorted out correctly in this initial PR and make sure the needed flags (most importantly the ones used in $JVM_LDFLAGS). ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1746133505 From jiangli at openjdk.org Thu Sep 5 20:47:50 2024 From: jiangli at openjdk.org (Jiangli Zhou) Date: Thu, 5 Sep 2024 20:47:50 GMT Subject: RFR: 8339480: Build static-jdk image with a statically linked launcher In-Reply-To: References: <5r5p2HyEXsEIr7wnq_5RSMfcbw-gsP4fBvTgr9P2lvY=.d3a51eae-661a-45d2-80e1-723e05e5eb32@github.com> <7MvsbWwg0NapAkQ45NF2u-KUtT7JaeyDjjPJa3bgK70=.9e181a2f-5d7d-43de-b943-cbd76de06e2f@github.com> Message-ID: On Thu, 5 Sep 2024 09:57:15 GMT, Magnus Ihse Bursie wrote: >> make/modules/java.desktop/lib/AwtLibraries.gmk line 176: >> >>> 174: >>> 175: ifneq ($(ENABLE_HEADLESS_ONLY), true) >>> 176: # We cannot link with both awt_headless and awt_xawt at the same time >> >> Just a note on that. It's doable to link with both awt_headless and awt_xawt with some work. I did some quick experiments on that during the initial investigation for hermetic/static Java. > > That would require quite some work then..! The two libraries are meant as exclusive complements to each other -- they both implement the same "entry points", but in different ways -- one with X11 support, and one without. For other reasons (outside of static launcher reasons) I'd like to see some refactoring in how this is implemented, but that is completely outside this discussion. > > For the static launcher scenario, I can't even see the point of trying to include both? What would you accomplish by that? > > The entire point of having two libraries is that you want to be able to have full workstation capabilities, but then be dependent on the X11 libraries, or have limited capabilities, but skip the X11 dependency. My initial understanding was that the libawt_headless was mostly as subset of libawt_xawt, which made it possible to statically link both the headless and headful natives. Completely agree that it's outside of the current scope. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20837#discussion_r1746136942 From kcr at openjdk.org Thu Sep 5 21:16:58 2024 From: kcr at openjdk.org (Kevin Rushforth) Date: Thu, 5 Sep 2024 21:16:58 GMT Subject: RFR: 8311530: Deprecate jdk.jsobject module for removal Message-ID: Deprecate the `jdk.jsobject` module for removal from the JDK, and ship it with JavaFX instead. See [JDK-8337280](https://bugs.openjdk.org/browse/JDK-8337280) / PR openjdk/jfx#1529 for the JavaFX PR that will include the module with JavaFX. That PR describes the needed test scenarios. This PR does two things: 1. Deprecates the `jdk.jsobject` module for removal; the javadoc indicates that the module will be delivered with JavaFX 2. Makes `jdk.jsobject` an upgradeable module, which will facilitate the transition by allowing the version of the module shipped with JavaFX to be used in favor of the deprecated module in the JDK itself. ------------- Commit messages: - Merge branch 'master' into 8311530-depr-jsobject - Merge branch 'master' into 8311530-depr-jsobject - Update javadoc - Update copyright years - Merge branch 'master' into 8311530-depr-jsobject - Add jdk.jsobject to list of UPGRADEABLE_MODULES in UpgradeableModules test - 8311530: Deprecate jdk.jsobject module for removal Changes: https://git.openjdk.org/jdk/pull/20555/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20555&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8311530 Stats: 27 lines in 7 files changed: 17 ins; 5 del; 5 mod Patch: https://git.openjdk.org/jdk/pull/20555.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20555/head:pull/20555 PR: https://git.openjdk.org/jdk/pull/20555 From kcr at openjdk.org Thu Sep 5 21:16:58 2024 From: kcr at openjdk.org (Kevin Rushforth) Date: Thu, 5 Sep 2024 21:16:58 GMT Subject: RFR: 8311530: Deprecate jdk.jsobject module for removal In-Reply-To: References: Message-ID: On Mon, 12 Aug 2024 17:22:47 GMT, Kevin Rushforth wrote: > Deprecate the `jdk.jsobject` module for removal from the JDK, and ship it with JavaFX instead. > > See [JDK-8337280](https://bugs.openjdk.org/browse/JDK-8337280) / PR openjdk/jfx#1529 for the JavaFX PR that will include the module with JavaFX. That PR describes the needed test scenarios. > > This PR does two things: > > 1. Deprecates the `jdk.jsobject` module for removal; the javadoc indicates that the module will be delivered with JavaFX > 2. Makes `jdk.jsobject` an upgradeable module, which will facilitate the transition by allowing the version of the module shipped with JavaFX to be used in favor of the deprecated module in the JDK itself. The GHA run shows a spurious failure in macOS (a network timeout cloning the repo). I'll rerun it with no changes to my branch. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20555#issuecomment-2332635931 From andrew at openjdk.org Thu Sep 5 23:36:50 2024 From: andrew at openjdk.org (Andrew John Hughes) Date: Thu, 5 Sep 2024 23:36:50 GMT Subject: RFR: 8339271: giflib attribution correction In-Reply-To: <9bUf9UKVavgShir_2Z2Hfjelu4gLJUxoWCel8AntU_M=.2a57b6e4-dafa-45ec-97ba-a70da712b2f9@github.com> References: <9bUf9UKVavgShir_2Z2Hfjelu4gLJUxoWCel8AntU_M=.2a57b6e4-dafa-45ec-97ba-a70da712b2f9@github.com> Message-ID: <6NDFsqBnv87BBpf1dKCVdsrGQPTiesfXatVV9j7_CAQ=.aec581b3-14dc-4259-ab4e-a8e45c9fa1b3@github.com> On Wed, 4 Sep 2024 19:43:19 GMT, Alisen Chung wrote: > Changing format of file paths in giflib copyright file and removing extra text from authors list This doesn't seem to make the situation any better. It merely removes the line about other contributors and pretends they don't exist. ------------- PR Review: https://git.openjdk.org/jdk/pull/20859#pullrequestreview-2284321326 From honkar at openjdk.org Fri Sep 6 00:18:52 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Fri, 6 Sep 2024 00:18:52 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v3] In-Reply-To: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> References: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> Message-ID: On Wed, 4 Sep 2024 04:21:00 GMT, Abhishek Kumar wrote: >> Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. >> Test removed from `Problem-list` file as well. >> >> CI testing link is posted in JBS. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Test name renamed LGTM other than the minor test changes mentioned below. test/jdk/javax/swing/JTabbedPane/TestJTabbedPaneBackgroundColor.java line 45: > 43: > 44: public class TestJTabbedPaneBackgroundColor { > 45: private static final ArrayList LIST = new ArrayList<>(); I think it can be changed to a non-final static var Suggestion: private static ArrayList lafList = new ArrayList<>(); test/jdk/javax/swing/JTabbedPane/TestJTabbedPaneBackgroundColor.java line 54: > 52: public static void main(String[] args) throws Exception { > 53: robot = new Robot(); > 54: robot.setAutoDelay(200); This can be removed as there no Robot mouse or key events. `robot.setAutoDelay(200);` ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20791#pullrequestreview-2284347635 PR Review Comment: https://git.openjdk.org/jdk/pull/20791#discussion_r1746331625 PR Review Comment: https://git.openjdk.org/jdk/pull/20791#discussion_r1746333137 From rriggs at openjdk.org Fri Sep 6 01:54:55 2024 From: rriggs at openjdk.org (Roger Riggs) Date: Fri, 6 Sep 2024 01:54:55 GMT Subject: RFR: 8311530: Deprecate jdk.jsobject module for removal In-Reply-To: References: Message-ID: <_MLFl-Zir7vvv44qc5hGXChNRhuiwmvTYkXLxVIUFC0=.a6fd655a-6e1a-4704-b317-5a2553a86fd3@github.com> On Mon, 12 Aug 2024 17:22:47 GMT, Kevin Rushforth wrote: > Deprecate the `jdk.jsobject` module for removal from the JDK, and ship it with JavaFX instead. > > See [JDK-8337280](https://bugs.openjdk.org/browse/JDK-8337280) / PR openjdk/jfx#1529 for the JavaFX PR that will include the module with JavaFX. That PR describes the needed test scenarios. > > This PR does two things: > > 1. Deprecates the `jdk.jsobject` module for removal; the javadoc indicates that the module will be delivered with JavaFX > 2. Makes `jdk.jsobject` an upgradeable module, which will facilitate the transition by allowing the version of the module shipped with JavaFX to be used in favor of the deprecated module in the JDK itself. Looks good. I'll review the CSR when its ready. ------------- Marked as reviewed by rriggs (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20555#pullrequestreview-2284421844 From tr at openjdk.org Fri Sep 6 05:37:09 2024 From: tr at openjdk.org (Tejesh R) Date: Fri, 6 Sep 2024 05:37:09 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v6] In-Reply-To: References: Message-ID: > Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: > 1. Move the frame to center of the screen rather than left top. > 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. Tejesh R has updated the pull request incrementally with one additional commit since the last revision: Updated with review comments ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20723/files - new: https://git.openjdk.org/jdk/pull/20723/files/a02be6cf..560862ff Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20723&range=05 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20723&range=04-05 Stats: 3 lines in 1 file changed: 0 ins; 1 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20723.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20723/head:pull/20723 PR: https://git.openjdk.org/jdk/pull/20723 From alanb at openjdk.org Fri Sep 6 05:39:55 2024 From: alanb at openjdk.org (Alan Bateman) Date: Fri, 6 Sep 2024 05:39:55 GMT Subject: RFR: 8311530: Deprecate jdk.jsobject module for removal In-Reply-To: References: Message-ID: On Mon, 12 Aug 2024 17:22:47 GMT, Kevin Rushforth wrote: > Deprecate the `jdk.jsobject` module for removal from the JDK, and ship it with JavaFX instead. > > See [JDK-8337280](https://bugs.openjdk.org/browse/JDK-8337280) / PR openjdk/jfx#1529 for the JavaFX PR that will include the module with JavaFX. That PR describes the needed test scenarios. > > This PR does two things: > > 1. Deprecates the `jdk.jsobject` module for removal; the javadoc indicates that the module will be delivered with JavaFX > 2. Makes `jdk.jsobject` an upgradeable module, which will facilitate the transition by allowing the version of the module shipped with JavaFX to be used in favor of the deprecated module in the JDK itself. The changes to make jdk.jsobject an upgradeable module looks right. I was initially surprised by the wording "will be delivered with JavaFX" but after playing with a few alternatives I concluded that what we have is okay. ------------- Marked as reviewed by alanb (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20555#pullrequestreview-2284861631 From abhiscxk at openjdk.org Fri Sep 6 05:47:31 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 05:47:31 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v4] In-Reply-To: References: Message-ID: > Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. > Test removed from `Problem-list` file as well. > > CI testing link is posted in JBS. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Remove robot autodelay, modify list variable declaration ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20791/files - new: https://git.openjdk.org/jdk/pull/20791/files/1ff306c4..52753953 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20791&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20791&range=02-03 Stats: 5 lines in 1 file changed: 0 ins; 1 del; 4 mod Patch: https://git.openjdk.org/jdk/pull/20791.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20791/head:pull/20791 PR: https://git.openjdk.org/jdk/pull/20791 From abhiscxk at openjdk.org Fri Sep 6 05:47:31 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 05:47:31 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v3] In-Reply-To: References: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> Message-ID: On Fri, 6 Sep 2024 00:13:26 GMT, Harshitha Onkar wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> Test name renamed > > test/jdk/javax/swing/JTabbedPane/TestJTabbedPaneBackgroundColor.java line 54: > >> 52: public static void main(String[] args) throws Exception { >> 53: robot = new Robot(); >> 54: robot.setAutoDelay(200); > > This can be removed as there no Robot mouse or key events. > `robot.setAutoDelay(200);` Updated. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20791#discussion_r1746538631 From abhiscxk at openjdk.org Fri Sep 6 05:55:53 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 05:55:53 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v6] In-Reply-To: References: Message-ID: On Fri, 6 Sep 2024 05:37:09 GMT, Tejesh R wrote: >> Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: >> 1. Move the frame to center of the screen rather than left top. >> 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. > > Tejesh R has updated the pull request incrementally with one additional commit since the last revision: > > Updated with review comments test/jdk/java/awt/Checkbox/CheckboxCheckerScalingTest.java line 50: > 48: private static Checkbox checkbox; > 49: private static volatile Point point; > 50: private static volatile boolean checkmarkFound = false; `checkmarkFound` need not to be `volatile`. Although declaring it as volatile won't add any overhead but it will prevent optimization. For this test, it won't have much impact though. test/jdk/java/awt/Checkbox/CheckboxCheckerScalingTest.java line 61: > 59: try { > 60: EventQueue.invokeAndWait(() -> { > 61: frame = new Frame("ComboBox checker scaling test"); I just noticed the title contains `ComboBox checker`. Should it be `CheckBox checker` ? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20723#discussion_r1746545404 PR Review Comment: https://git.openjdk.org/jdk/pull/20723#discussion_r1746543021 From abhiscxk at openjdk.org Fri Sep 6 06:01:22 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 06:01:22 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser Message-ID: There is no Swatches tab available for GTK Look and Feel due to the different ColorChooser UI design. Updated the test instructions. ------------- Commit messages: - Whitespace error fix - Test instructions change Changes: https://git.openjdk.org/jdk/pull/20867/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20867&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8226933 Stats: 4 lines in 1 file changed: 2 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20867.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20867/head:pull/20867 PR: https://git.openjdk.org/jdk/pull/20867 From tr at openjdk.org Fri Sep 6 06:09:07 2024 From: tr at openjdk.org (Tejesh R) Date: Fri, 6 Sep 2024 06:09:07 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v7] In-Reply-To: References: Message-ID: <6k6-fOAIoHsWKATPNE6osJYU2Abdp6MVfCbswAo9AxA=.734208bd-86bc-4bf6-b8cf-bc3f465db059@github.com> > Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: > 1. Move the frame to center of the screen rather than left top. > 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. Tejesh R has updated the pull request incrementally with one additional commit since the last revision: Updated with review comments ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20723/files - new: https://git.openjdk.org/jdk/pull/20723/files/560862ff..404bd11b Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20723&range=06 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20723&range=05-06 Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20723.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20723/head:pull/20723 PR: https://git.openjdk.org/jdk/pull/20723 From abhiscxk at openjdk.org Fri Sep 6 06:12:51 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 06:12:51 GMT Subject: RFR: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine [v7] In-Reply-To: <6k6-fOAIoHsWKATPNE6osJYU2Abdp6MVfCbswAo9AxA=.734208bd-86bc-4bf6-b8cf-bc3f465db059@github.com> References: <6k6-fOAIoHsWKATPNE6osJYU2Abdp6MVfCbswAo9AxA=.734208bd-86bc-4bf6-b8cf-bc3f465db059@github.com> Message-ID: On Fri, 6 Sep 2024 06:09:07 GMT, Tejesh R wrote: >> Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: >> 1. Move the frame to center of the screen rather than left top. >> 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. > > Tejesh R has updated the pull request incrementally with one additional commit since the last revision: > > Updated with review comments Look good to me now. ------------- Marked as reviewed by abhiscxk (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20723#pullrequestreview-2284950786 From psadhukhan at openjdk.org Fri Sep 6 06:14:49 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 6 Sep 2024 06:14:49 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser In-Reply-To: References: Message-ID: On Thu, 5 Sep 2024 10:34:40 GMT, Abhishek Kumar wrote: > There is no Swatches tab available for GTK Look and Feel due to the different ColorChooser UI design. Updated the test instructions. test/jdk/javax/swing/JColorChooser/Test4887836.java line 45: > 43: then test passed, otherwise it failed. > 44: > 45: NOTE: There is no Swatches tab for GTK Look and Feel, Press Pass."""; I guess better to restrict programmatically "GTK".equals(UIManager.getLookAndFeel().getName()) Also, add a comment why it is not applicable.. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20867#discussion_r1746559640 From abhiscxk at openjdk.org Fri Sep 6 06:29:49 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 06:29:49 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser In-Reply-To: References: Message-ID: On Fri, 6 Sep 2024 06:12:03 GMT, Prasanta Sadhukhan wrote: > I guess better to restrict programmatically "GTK".equals(UIManager.getLookAndFeel().getName()) Also, add a comment why it is not applicable.. For a manual test, it can be run by command line with `Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel` option. How could I restrict programmatically ? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20867#discussion_r1746572134 From psadhukhan at openjdk.org Fri Sep 6 06:46:49 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 6 Sep 2024 06:46:49 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser In-Reply-To: References: Message-ID: On Fri, 6 Sep 2024 06:26:50 GMT, Abhishek Kumar wrote: >> test/jdk/javax/swing/JColorChooser/Test4887836.java line 45: >> >>> 43: then test passed, otherwise it failed. >>> 44: >>> 45: NOTE: There is no Swatches tab for GTK Look and Feel, Press Pass."""; >> >> I guess better to restrict programmatically >> "GTK".equals(UIManager.getLookAndFeel().getName()) >> Also, add a comment why it is not applicable.. > >> I guess better to restrict programmatically "GTK".equals(UIManager.getLookAndFeel().getName()) Also, add a comment why it is not applicable.. > > For a manual test, it can be run by command line with `Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel` option. How could I restrict programmatically ? Whatever L&F you are running on irrespective of manually or automated, it should be able to find out via getLookAndFeel.. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20867#discussion_r1746588110 From abhiscxk at openjdk.org Fri Sep 6 07:09:12 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 07:09:12 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v2] In-Reply-To: References: Message-ID: > There is no Swatches tab available for GTK Look and Feel due to the different ColorChooser UI design. Updated the test instructions. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Restrict test programatically for GTK L&F ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20867/files - new: https://git.openjdk.org/jdk/pull/20867/files/e18f940f..56bb68d9 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20867&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20867&range=00-01 Stats: 14 lines in 1 file changed: 10 ins; 2 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20867.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20867/head:pull/20867 PR: https://git.openjdk.org/jdk/pull/20867 From abhiscxk at openjdk.org Fri Sep 6 07:18:49 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 07:18:49 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v2] In-Reply-To: References: Message-ID: On Fri, 6 Sep 2024 06:44:25 GMT, Prasanta Sadhukhan wrote: >>> I guess better to restrict programmatically "GTK".equals(UIManager.getLookAndFeel().getName()) Also, add a comment why it is not applicable.. >> >> For a manual test, it can be run by command line with `Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel` option. How could I restrict programmatically ? > > Whatever L&F you are running on irrespective of manually or automated, it should be able to find out via getLookAndFeel.. Yeah, you are right. Test updated to throw `jtreg.SkippedException` if it is run for GTK L&F. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20867#discussion_r1746620391 From psadhukhan at openjdk.org Fri Sep 6 07:51:49 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 6 Sep 2024 07:51:49 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v2] In-Reply-To: References: Message-ID: On Fri, 6 Sep 2024 07:09:12 GMT, Abhishek Kumar wrote: >> There is no Swatches tab available for GTK Look and Feel due to the different ColorChooser UI design. Updated the test instructions. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Restrict test programatically for GTK L&F Marked as reviewed by psadhukhan (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20867#pullrequestreview-2285260817 From abhiscxk at openjdk.org Fri Sep 6 08:03:53 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 08:03:53 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v3] In-Reply-To: <0aVuRMUkPDj7JN8RN8wNIRIHVb1s7rXa4Eslca4izZ4=.e544a627-9d90-4879-a35f-abf8684903a5@github.com> References: <5KpxRMfOtJBFrisU07Wb6SubWd15_hVhtpfcWJpnzIQ=.b0a69f2e-bf37-41d1-9386-7e8f04cf9fe7@github.com> <0aVuRMUkPDj7JN8RN8wNIRIHVb1s7rXa4Eslca4izZ4=.e544a627-9d90-4879-a35f-abf8684903a5@github.com> Message-ID: On Wed, 4 Sep 2024 05:56:41 GMT, Prasanta Sadhukhan wrote: >>> > > Is [JDK-7148101](https://bugs.openjdk.org/browse/JDK-7148101) still valid? >>> > >>> > >>> > Yes, issue still exists for mac machine. >>> >>> Issue is for AquaL&F which as per your verification in [JDK-8331619](https://bugs.openjdk.org/browse/JDK-8331619) and #19170 is not an issue it seems.. >> >> Yes, for Aqua L&F we were not able to verify the native behavior. >> I think bug4690946.java test needs to be removed from closed problemlist. > >> > > > Is [JDK-7148101](https://bugs.openjdk.org/browse/JDK-7148101) still valid? >> > > >> > > >> > > Yes, issue still exists for mac machine. >> > >> > >> > Issue is for AquaL&F which as per your verification in [JDK-8331619](https://bugs.openjdk.org/browse/JDK-8331619) and #19170 is not an issue it seems.. >> >> Yes, for Aqua L&F we were not able to verify the native behavior. I think bug4690946.java test needs to be removed from closed problemlist. > > Yes already raised the PR for removal.. @prsadhuk Minor update after you reviewed. Please re-review the PR. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20791#issuecomment-2333476754 From tr at openjdk.org Fri Sep 6 08:23:50 2024 From: tr at openjdk.org (Tejesh R) Date: Fri, 6 Sep 2024 08:23:50 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v2] In-Reply-To: References: Message-ID: On Fri, 6 Sep 2024 07:09:12 GMT, Abhishek Kumar wrote: >> There is no Swatches tab available for GTK Look and Feel due to the different ColorChooser UI design. Updated the test instructions. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Restrict test programatically for GTK L&F Looks good to me. ------------- Marked as reviewed by tr (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20867#pullrequestreview-2285370704 From abhiscxk at openjdk.org Fri Sep 6 10:34:18 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 10:34:18 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v3] In-Reply-To: References: Message-ID: > There is no Swatches tab available for GTK Look and Feel due to the different ColorChooser UI design. Updated the test instructions. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Open source test ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20867/files - new: https://git.openjdk.org/jdk/pull/20867/files/56bb68d9..7f984872 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20867&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20867&range=01-02 Stats: 69 lines in 1 file changed: 69 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20867.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20867/head:pull/20867 PR: https://git.openjdk.org/jdk/pull/20867 From abhiscxk at openjdk.org Fri Sep 6 10:34:19 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 10:34:19 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v2] In-Reply-To: References: Message-ID: <0K3OgthCNz9-WvIMKMjKeOi_hsVS414LROvs6gMX5bE=.addcf6d6-85e7-4a7e-9e6f-9f5d5887f559@github.com> On Fri, 6 Sep 2024 07:49:06 GMT, Prasanta Sadhukhan wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> Restrict test programatically for GTK L&F > > Marked as reviewed by psadhukhan (Reviewer). @prsadhuk @TejeshR13 bug4419255.java is open sourced. Fixed similar issue for ColorChooser UI in GTK L&F. Please re-review. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20867#issuecomment-2333763872 From psadhukhan at openjdk.org Fri Sep 6 11:20:51 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 6 Sep 2024 11:20:51 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v3] In-Reply-To: References: Message-ID: On Fri, 6 Sep 2024 10:34:18 GMT, Abhishek Kumar wrote: >> There is no Swatches tab available for GTK Look and Feel due to the different ColorChooser UI design. Updated the test instructions. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Open source test test/jdk/javax/swing/JColorChooser/Test4887836.java line 47: > 45: // There is no Swatches tab available for GTK L&F, skip the testing. > 46: if (UIManager.getLookAndFeel().getName().contains("GTK")) { > 47: System.out.println("Test skipped for " + UIManager.getLookAndFeel().getName()); same here test/jdk/javax/swing/plaf/basic/BasicSliderUI/bug4419255.java line 46: > 44: // There is no RGB tab available for GTK L&F, skip the testing. > 45: if (UIManager.getLookAndFeel().getName().contains("GTK")) { > 46: System.out.println("Test skipped for " + UIManager.getLookAndFeel().getName()); guess no need to enquire it again in as we know it's GTK ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20867#discussion_r1746953971 PR Review Comment: https://git.openjdk.org/jdk/pull/20867#discussion_r1746953664 From abhiscxk at openjdk.org Fri Sep 6 11:37:10 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 11:37:10 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v4] In-Reply-To: References: Message-ID: > There is no Swatches tab available for GTK Look and Feel due to the different ColorChooser UI design. Updated the test instructions. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Remove print statement ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20867/files - new: https://git.openjdk.org/jdk/pull/20867/files/7f984872..677cb0e9 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20867&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20867&range=02-03 Stats: 2 lines in 2 files changed: 0 ins; 2 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20867.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20867/head:pull/20867 PR: https://git.openjdk.org/jdk/pull/20867 From abhiscxk at openjdk.org Fri Sep 6 11:37:10 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 6 Sep 2024 11:37:10 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v3] In-Reply-To: References: Message-ID: On Fri, 6 Sep 2024 11:18:13 GMT, Prasanta Sadhukhan wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> Open source test > > test/jdk/javax/swing/JColorChooser/Test4887836.java line 47: > >> 45: // There is no Swatches tab available for GTK L&F, skip the testing. >> 46: if (UIManager.getLookAndFeel().getName().contains("GTK")) { >> 47: System.out.println("Test skipped for " + UIManager.getLookAndFeel().getName()); > > same here Removed print statement here as well. > test/jdk/javax/swing/plaf/basic/BasicSliderUI/bug4419255.java line 46: > >> 44: // There is no RGB tab available for GTK L&F, skip the testing. >> 45: if (UIManager.getLookAndFeel().getName().contains("GTK")) { >> 46: System.out.println("Test skipped for " + UIManager.getLookAndFeel().getName()); > > guess no need to enquire it again in as we know it's GTK I think print statement is not required, anyways it is captured in exception, so removed. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20867#discussion_r1746972697 PR Review Comment: https://git.openjdk.org/jdk/pull/20867#discussion_r1746972353 From psadhukhan at openjdk.org Fri Sep 6 12:23:51 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 6 Sep 2024 12:23:51 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v4] In-Reply-To: References: Message-ID: On Fri, 6 Sep 2024 11:37:10 GMT, Abhishek Kumar wrote: >> There is no Swatches tab available for GTK Look and Feel due to the different ColorChooser UI design. Updated the test instructions. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Remove print statement Marked as reviewed by psadhukhan (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20867#pullrequestreview-2286138561 From kcr at openjdk.org Fri Sep 6 13:18:49 2024 From: kcr at openjdk.org (Kevin Rushforth) Date: Fri, 6 Sep 2024 13:18:49 GMT Subject: RFR: 8311530: Deprecate jdk.jsobject module for removal In-Reply-To: <_MLFl-Zir7vvv44qc5hGXChNRhuiwmvTYkXLxVIUFC0=.a6fd655a-6e1a-4704-b317-5a2553a86fd3@github.com> References: <_MLFl-Zir7vvv44qc5hGXChNRhuiwmvTYkXLxVIUFC0=.a6fd655a-6e1a-4704-b317-5a2553a86fd3@github.com> Message-ID: On Fri, 6 Sep 2024 01:52:10 GMT, Roger Riggs wrote: > Looks good. I'll review the CSR when its ready. Thanks. > The changes to make jdk.jsobject an upgradeable module looks right. Thanks for checking. My testing primarily focused on this aspect of the change, so it's pretty well tested. > I was initially surprised by the wording "will be delivered with JavaFX" but after playing with a few alternatives I concluded that what we have is okay. Yeah, I tried a few variants and couldn't come up with anything better. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20555#issuecomment-2334035899 From serb at openjdk.org Fri Sep 6 16:16:07 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Fri, 6 Sep 2024 16:16:07 GMT Subject: RFR: 8339341: SurfaceManager cacheMap retains strong references [v2] In-Reply-To: References: <1ecWvJLiG54e0saEz_Jjz46gzxXnqsNDagdPQ3y_BN4=.27116e44-886b-405f-9d87-ec5e82e2fd20@github.com> Message-ID: On Thu, 5 Sep 2024 12:04:19 GMT, Nikita Gubarkov wrote: >> I moved SurfaceDataProxy cache into a separate class. >> Now caching level is determined by placement of the SurfaceManager.ProxyCache object instead of a "proxy key". This cache "owns" proxies and therefore strong refs via them do not prevent the cache and GraphicsConfig from being detected as weakly reachable. > > Nikita Gubarkov has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains one commit: > > 8339341: Make SurfaceDataProxy cache a separate entity. > > Now caching level is determined by placement of the SurfaceManager.ProxyCache object instead of a "proxy key". This cache "owns" proxies and therefore strong refs via them do not prevent the cache (and hence GraphicsConfig) from being detected as weakly reachable. If possible please add the "steps to reproduce" to the JBS issue. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20825#issuecomment-2334393018 From achung at openjdk.org Fri Sep 6 17:23:05 2024 From: achung at openjdk.org (Alisen Chung) Date: Fri, 6 Sep 2024 17:23:05 GMT Subject: RFR: 8339271: giflib attribution correction In-Reply-To: <6NDFsqBnv87BBpf1dKCVdsrGQPTiesfXatVV9j7_CAQ=.aec581b3-14dc-4259-ab4e-a8e45c9fa1b3@github.com> References: <9bUf9UKVavgShir_2Z2Hfjelu4gLJUxoWCel8AntU_M=.2a57b6e4-dafa-45ec-97ba-a70da712b2f9@github.com> <6NDFsqBnv87BBpf1dKCVdsrGQPTiesfXatVV9j7_CAQ=.aec581b3-14dc-4259-ab4e-a8e45c9fa1b3@github.com> Message-ID: On Thu, 5 Sep 2024 23:34:23 GMT, Andrew John Hughes wrote: > This doesn't seem to make the situation any better. It merely removes the line about other contributors and pretends they don't exist. That line was mistakenly added in the previous giflib update and is copied directly from the giflib 5.2.2 README file. The line mentions other authors but if those authors aren?t explicitly stated there?s nothing we can do. The line itself should be removed because it isn?t precise and shouldn?t be part of the list of authors section of the attribution. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20859#issuecomment-2334502763 From achung at openjdk.org Fri Sep 6 22:07:15 2024 From: achung at openjdk.org (Alisen Chung) Date: Fri, 6 Sep 2024 22:07:15 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v4] In-Reply-To: References: Message-ID: On Fri, 6 Sep 2024 11:37:10 GMT, Abhishek Kumar wrote: >> There is no Swatches tab available for GTK Look and Feel due to the different ColorChooser UI design. Updated the test instructions. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Remove print statement Since these two tests are the same test would it be better to merge them into 1 test with the test instructions combined for both tests? ------------- PR Review: https://git.openjdk.org/jdk/pull/20867#pullrequestreview-2287215158 From honkar at openjdk.org Sat Sep 7 00:10:05 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Sat, 7 Sep 2024 00:10:05 GMT Subject: RFR: 8339524: Clean up ExtendedRobot tests In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 03:34:34 GMT, Alisen Chung wrote: > Cleaning up tests building ExtendedRobot that shouldn't be. Are these the only two tests being changed as part of this PR? Please update copyright years and expand import statements. ------------- PR Review: https://git.openjdk.org/jdk/pull/20846#pullrequestreview-2287285431 From honkar at openjdk.org Sat Sep 7 00:28:08 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Sat, 7 Sep 2024 00:28:08 GMT Subject: RFR: 8051591: Test javax/swing/JTabbedPane/8007563/Test8007563.java fails [v4] In-Reply-To: References: Message-ID: <81Qem1iRTyv7J-ndZ0S3MGHRzyaVdbKlGrVczwQx2CE=.0c3cc953-4780-4ffb-be85-e368169f924d@github.com> On Fri, 6 Sep 2024 05:47:31 GMT, Abhishek Kumar wrote: >> Test was failing on multiple platforms mainly windows and linux and was problemlisted for all platforms. Increased the delay from 200ms to 500 ms to fetch the correct background color using robot. Now test passed for multiple iteration (~50 times) in CI pipeline for all platforms. Wild imports are expanded and test is pulled out of an extra level of folder. >> Test removed from `Problem-list` file as well. >> >> CI testing link is posted in JBS. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Remove robot autodelay, modify list variable declaration LGTM. Adding a consolidated note listing the JBS ids & corresponding tests related to JTabbedPane background issue in this PR or JBS might be helpful for future reference (avoids scrolling through PR comments). 1. [JDK-8051591](https://bugs.openjdk.org/browse/JDK-8051591) - Test javax/swing/JTabbedPane/8007563/Test8007563.java => test/jdk/javax/swing/JTabbedPane/TestJTabbedPaneBackgroundColor.java ... so on. ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20791#pullrequestreview-2287290618 From tr at openjdk.org Mon Sep 9 05:17:06 2024 From: tr at openjdk.org (Tejesh R) Date: Mon, 9 Sep 2024 05:17:06 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v4] In-Reply-To: References: Message-ID: On Fri, 6 Sep 2024 11:37:10 GMT, Abhishek Kumar wrote: >> There is no Swatches tab available for GTK Look and Feel due to the different ColorChooser UI design. Updated the test instructions. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Remove print statement test/jdk/javax/swing/plaf/basic/BasicSliderUI/bug4419255.java line 66: > 64: private static JColorChooser createColorChooser() { > 65: JColorChooser chooser = new JColorChooser(Color.BLUE); > 66: return chooser; Suggestion: return new JColorChooser(Color.BLUE);; ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20867#discussion_r1749572412 From tr at openjdk.org Mon Sep 9 05:20:11 2024 From: tr at openjdk.org (Tejesh R) Date: Mon, 9 Sep 2024 05:20:11 GMT Subject: Integrated: 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine In-Reply-To: References: Message-ID: On Tue, 27 Aug 2024 06:04:47 GMT, Tejesh R wrote: > Test failed intermittently on particular host. Though analysis pointed out to a test frame at left top on that host, I've updated the test for further stabilizing it. Two things done here: > 1. Move the frame to center of the screen rather than left top. > 2. Added tolerance checks for color comparison - this is based on analysis reports where the image didn't had exact black color which is supposed to be. So like other test cases, providing some tolerance for comparison. This pull request has now been integrated. Changeset: 79d76135 Author: Tejesh R URL: https://git.openjdk.org/jdk/commit/79d761358c5ee19b9028ad89d7c6a33dff6aa64a Stats: 26 lines in 1 file changed: 13 ins; 0 del; 13 mod 8338153: java/awt/Checkbox/CheckboxCheckerScalingTest.java test failed on linux machine Reviewed-by: abhiscxk, honkar ------------- PR: https://git.openjdk.org/jdk/pull/20723 From serb at openjdk.org Mon Sep 9 07:28:12 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Mon, 9 Sep 2024 07:28:12 GMT Subject: RFR: 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 Message-ID: Several tests modified by https://github.com/openjdk/jdk/pull/19339 have been tweaked, see inline comments. Notes: * We have a few XXXRepaint.java tests and in this patch, I updated all of them to follow the change added to the ListRepaint.java @azvegint @aivanov-jdk please take a look. ------------- Commit messages: - Update ProblemList.txt - add try/finally - 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 Changes: https://git.openjdk.org/jdk/pull/20861/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20861&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339561 Stats: 171 lines in 9 files changed: 51 ins; 40 del; 80 mod Patch: https://git.openjdk.org/jdk/pull/20861.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20861/head:pull/20861 PR: https://git.openjdk.org/jdk/pull/20861 From serb at openjdk.org Mon Sep 9 07:28:14 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Mon, 9 Sep 2024 07:28:14 GMT Subject: RFR: 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 20:50:38 GMT, Sergey Bylokhov wrote: > Several tests modified by https://github.com/openjdk/jdk/pull/19339 have been tweaked, see inline comments. > > Notes: > * We have a few XXXRepaint.java tests and in this patch, I updated all of them to follow the change added to the ListRepaint.java > > @azvegint @aivanov-jdk please take a look. test/jdk/java/awt/Frame/MiscUndecorated/ActiveAWTWindowTest.java line 42: > 40: private volatile Frame frame, frame2; > 41: private volatile Button button, button2; > 42: private volatile TextField textField, textField2; probably unnecessary but some of these fields might be used on different threads, so just in case. test/jdk/java/awt/Frame/MiscUndecorated/ActiveAWTWindowTest.java line 55: > 53: test.doTest(); > 54: } finally { > 55: EventQueue.invokeAndWait(() -> { The test should wait until the frame will be disposed. "invokeLater" was added [here](https://github.com/openjdk/jdk/pull/19339/files#diff-6141b9cfb077259bad37ff9fd15782c5bb31d9c52aadc81a177d9057e177d415R55), test/jdk/java/awt/List/KeyEventsTest/KeyEventsTest.java line 68: > 66: KeyEventsTest app = new KeyEventsTest(); > 67: try { > 68: app.initAndShowGui(); The test was changed [here](https://github.com/openjdk/jdk/pull/19339/files#diff-054074499ab6611e764a315fb13c51af4ad063b07f481e775a2262196077d285R69), the root cause of the failure discussed in https://github.com/openjdk/jdk/pull/19339/files#r1609189736 is a product bug: https://bugs.openjdk.org/browse/JDK-8201307. test/jdk/java/awt/Paint/ListRepaint.java line 43: > 41: for (int i = 0; i < 10; ++i) { > 42: try { > 43: EventQueue.invokeLater(ListRepaint::createAndShowGUI); The purpose of the test is to run some methods of the AWT component on the main thread and check if it will be refreshed on the EDT. It was changed [here](https://github.com/openjdk/jdk/pull/19339/files#r1609190355). It is a product bug: https://bugs.openjdk.org/browse/JDK-8201307. test/jdk/javax/swing/JButton/bug4490179.java line 85: > 83: robot.mousePress(InputEvent.BUTTON3_DOWN_MASK); > 84: robot.mouseRelease(InputEvent.BUTTON3_DOWN_MASK); > 85: robot.delay(3000); The test was discussed [here](https://github.com/openjdk/jdk/pull/19339/files#r1609201116). It seems that the purpose of the test is to check that no events will be generated while the left button is pressed, so we should check that "ActionListener" is not triggered and then release the mouse button. Thoughts? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1749635644 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1749633385 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1749639085 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1749645263 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1749647438 From mbaesken at openjdk.org Mon Sep 9 13:35:35 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Mon, 9 Sep 2024 13:35:35 GMT Subject: RFR: 8339731: java.desktop/share/classes/javax/swing/text/html/default.css typo in margin settings Message-ID: java.desktop/share/classes/javax/swing/text/html/default.css:105: margin-rigth: 0; seems to be a typo (must be right). ------------- Commit messages: - JDK-8339731 Changes: https://git.openjdk.org/jdk/pull/20915/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20915&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339731 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/20915.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20915/head:pull/20915 PR: https://git.openjdk.org/jdk/pull/20915 From aivanov at openjdk.org Mon Sep 9 18:48:04 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 9 Sep 2024 18:48:04 GMT Subject: RFR: 8326027: [TEST_BUG]Comparing buffered images of white background frame fails in Mac In-Reply-To: <9EEL4ctBHQI73B_nmGvnucR4LMefzbGCpSUd1URgr8o=.cc576bd9-025a-4aec-83e1-f66388de3629@github.com> References: <0FKvhBMfDuyvzus_Q_sjhmFB02FPipKX9p54KNy6w0k=.cf25ba18-9c25-4079-aeae-c2ffeaf0eafe@github.com> <9EEL4ctBHQI73B_nmGvnucR4LMefzbGCpSUd1URgr8o=.cc576bd9-025a-4aec-83e1-f66388de3629@github.com> Message-ID: On Tue, 3 Sep 2024 09:37:50 GMT, Tejesh R wrote: > > This is why I asked the question: does the comparison remain accurate without the need for tolerance if you use `Robot.createMultiResolutionScreenCapture` and use the highest resolution from the returned multi-resolution image? > > I couldn't reproduce the issue neither with `Robot.createMultiResolutionScreenCapture` nor with `Robot.createScreenCapture` since the failure occurs intermittently, not able to say anything about using `Robot.createMultiResolutionScreenCapture` instead of `Robot.createScreenCapture` . According to your report in JBS, the white color is not exactly white: `0xFFEE'EEEE`. White color has value of `0xFFFF'FFFF`. However, it's also common on Macs (because of color profile applied?), I mean that the captured color value is the same as the value used for filling. At the same time, I expect the color is the same across the entire frame surface. What we see is that there are variations. I wonder how many pixels on the image have different color, other than the first pixel. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20760#issuecomment-2338839726 From aivanov at openjdk.org Mon Sep 9 20:25:12 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 9 Sep 2024 20:25:12 GMT Subject: RFR: 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 20:50:38 GMT, Sergey Bylokhov wrote: > Several tests modified by https://github.com/openjdk/jdk/pull/19339 have been tweaked, see inline comments. > > Notes: > * We have a few XXXRepaint.java tests and in this patch, I updated all of them to follow the change added to the ListRepaint.java > > @azvegint @aivanov-jdk please take a look. Changes requested by aivanov (Reviewer). test/jdk/java/awt/List/KeyEventsTest/KeyEventsTest.java line 53: > 51: > 52: public class KeyEventsTest { > 53: private volatile TestState currentState; I'd rather not declare it a `volatile`. It could give a false impression of being thread-safe but it is not. The `volatile` modifier has a meaning only when it's written and read subsequently. If the reference doesn't change, it has no effect on the visibility of the internal object state. The value is assigned to `currentState` while holding a lock `LOCK`. At the same time, `currentState.setAction(true)` is called without any synchronisation and adding `volatile` won't make the change of the state thread-safe. test/jdk/java/awt/Paint/ButtonRepaint.java line 35: > 33: public final class ButtonRepaint extends Button { > 34: > 35: public static void main(final String[] args) { Could expand imports, remove `@author` tag and the second `*` from `/**`? test/jdk/java/awt/Paint/CheckboxRepaint.java line 34: > 32: public final class CheckboxRepaint extends Checkbox { > 33: > 34: public static void main(final String[] args) { Could expand imports, remove `@author` tag and the second `*` from `/**`? test/jdk/java/awt/Paint/LabelRepaint.java line 37: > 35: public final class LabelRepaint extends Label { > 36: > 37: public static void main(final String[] args) { Could you remove `@author` tag, update copyright year? test/jdk/java/awt/Paint/ListRepaint.java line 35: > 33: * @author Sergey Bylokhov > 34: */ > 35: public final class ListRepaint extends List { Could you remove `@author` tag and the second `*` from `/**`? test/jdk/javax/swing/JButton/bug4490179.java line 56: > 54: try { > 55: SwingUtilities.invokeAndWait(() -> { > 56: frame = new JFrame("bug4490179"); Instead of three volatile fields ? `pt`, `buttonW`, `buttonH` ? there could be only one: SwingUtilities.invokeAndWait(() -> { Point loc = button.getLocationOnScreen(); Dimension size = button.getSize(); pt = new Point(loc.x + size.width / 2, loc.y + size.height / 2); }); I think this better conveys the idea, less variables / fields to track in your mind. test/jdk/javax/swing/JButton/bug4490179.java line 61: > 59: button.addActionListener(new ActionListener() { > 60: public void actionPerformed(ActionEvent e) { > 61: passed = false; Maybe use two `CountDownLatch`es: if ((e.getModifiers() & InputEvent.BUTTON1_MASK) != InputEvent.BUTTON1_MASK) { wrongMouseButton.countDown(); } else { mouseButton1.countDown(); } Then in main: robot.mouseRelease(InputEvent.BUTTON3_DOWN_MASK); // robot.delay(3000); if (wrongMouseButton.await(2, TimeUnit.SECONDS)) { // Restore robot state robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK); throw new RuntimeException("ActionEvent delivered from mouse button 3"); } robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK); if (mouseButton1.await(2, TimeUnit.SECONDS)) { throw new RuntimeException("ActionEvent not delivered from mouse button 1"); } test/jdk/javax/swing/JButton/bug4490179.java line 62: > 60: public void actionPerformed(ActionEvent e) { > 61: passed = false; > 62: } The updated code here is correct; Alexander has restored the condition that was present in the original test which was closed-source and manual. However, it may be not necessary. Instead, the test should fail immediately if `ActionEvent` contains anything but `BUTTON1_DOWN_MASK`. (Well, cleaning up robot state to release mouse buttons is a good thing to do.) test/jdk/javax/swing/JButton/bug4490179.java line 89: > 87: robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK); > 88: > 89: if (!result) { Perhaps, we should ensure that an `ActionEvent` gets delivered at this point. Is it expected or not? test/jdk/javax/swing/plaf/basic/BasicMenuUI/4983388/bug4983388.java line 97: > 95: }); > 96: > 97: if (!bMenuSelected) { Could you also expand imports and remove `@author` tag? ------------- PR Review: https://git.openjdk.org/jdk/pull/20861#pullrequestreview-2290709302 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750819337 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750830425 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750831557 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750833000 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750842554 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750877763 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750872680 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750863160 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750857895 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750879942 From aivanov at openjdk.org Mon Sep 9 20:25:13 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 9 Sep 2024 20:25:13 GMT Subject: RFR: 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 In-Reply-To: References: Message-ID: On Mon, 9 Sep 2024 06:27:26 GMT, Sergey Bylokhov wrote: >> Several tests modified by https://github.com/openjdk/jdk/pull/19339 have been tweaked, see inline comments. >> >> Notes: >> * We have a few XXXRepaint.java tests and in this patch, I updated all of them to follow the change added to the ListRepaint.java >> >> @azvegint @aivanov-jdk please take a look. > > test/jdk/java/awt/Frame/MiscUndecorated/ActiveAWTWindowTest.java line 42: > >> 40: private volatile Frame frame, frame2; >> 41: private volatile Button button, button2; >> 42: private volatile TextField textField, textField2; > > probably unnecessary but some of these fields might be used on different threads, so just in case. Likely, it's unnecessary. I don't mind though. I'd rather refactor the test to simplify it. Using `CountDownLatch` or other synchronisation primitives instead of wait/notify. I submitted [JDK-8339791](https://bugs.openjdk.org/browse/JDK-8339791). Feel free to re-assign if you like. > test/jdk/java/awt/List/KeyEventsTest/KeyEventsTest.java line 68: > >> 66: KeyEventsTest app = new KeyEventsTest(); >> 67: try { >> 68: app.initAndShowGui(); > > The test was changed [here](https://github.com/openjdk/jdk/pull/19339/files#diff-054074499ab6611e764a315fb13c51af4ad063b07f481e775a2262196077d285R69), the root cause of the failure discussed in https://github.com/openjdk/jdk/pull/19339/files#r1609189736 is a product bug: https://bugs.openjdk.org/browse/JDK-8201307. Not sure if it's a product bug? AWT components do not explicitly state whether they're thread-safe or not. It's more or less assumed they should be. At the same time, I don't see code which ensures all the cases are thread-safe. As far as I know, clientlibs group has been treating AWT components just like Swing ones: for safety create, access and destroy AWT components on EDT only. I haven't looked at the test code thoroughly. It looks it still needs more investigation. At the same time, I find it weird that `repaint` paints directly in its code and then posts paint event. https://github.com/openjdk/jdk/blob/77468c284c068f921da543edd28333911e915b61/src/java.desktop/unix/classes/sun/awt/X11/XListPeer.java#L389-L390 Overall, it needs more investigation. It could be that the fix for [JDK-6471693](https://bugs.openjdk.org/browse/JDK-6471693) needs revising. > test/jdk/java/awt/Paint/ListRepaint.java line 43: > >> 41: for (int i = 0; i < 10; ++i) { >> 42: try { >> 43: EventQueue.invokeLater(ListRepaint::createAndShowGUI); > > The purpose of the test is to run some methods of the AWT component on the main thread and check if it will be refreshed on the EDT. It was changed [here](https://github.com/openjdk/jdk/pull/19339/files#r1609190355). It is a product bug: https://bugs.openjdk.org/browse/JDK-8201307. Yep, the previous update has changed the logic of the test so that it no longer reproduces the original problem for which it was written, namely [JDK-7090424](https://bugs.openjdk.org/browse/JDK-7090424). ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750768459 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750821284 PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750839501 From serb at openjdk.org Mon Sep 9 20:37:04 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Mon, 9 Sep 2024 20:37:04 GMT Subject: RFR: 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 In-Reply-To: References: Message-ID: On Mon, 9 Sep 2024 19:32:04 GMT, Alexey Ivanov wrote: >At the same time, I find it weird that repaint paints directly in its code and then posts paint event. This is one of the implementation details of the AWT, the "native" component should be painted before the paint event will proceed on EDT, and even if EDT is blocked the "native" part should be painted. Since the XAWT is implemented via Swing which is not thread-safe we should use some additional synchronization. On macOS we have a special lock for that https://github.com/openjdk/jdk/blob/559fc711e03cf0086bea399ffb40cf294cbbb6e1/src/java.desktop/macosx/classes/sun/lwawt/LWListPeer.java#L87 and https://github.com/openjdk/jdk/blob/559fc711e03cf0086bea399ffb40cf294cbbb6e1/src/java.desktop/macosx/classes/sun/lwawt/LWComponentPeer.java#L361 but on XAWT it is quite "cumbersome" since it was implemented a long time ago. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750898850 From serb at openjdk.org Mon Sep 9 22:03:06 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Mon, 9 Sep 2024 22:03:06 GMT Subject: RFR: 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 In-Reply-To: References: Message-ID: On Mon, 9 Sep 2024 20:34:30 GMT, Sergey Bylokhov wrote: >> Not sure if it's a product bug? >> >> AWT components do not explicitly state whether they're thread-safe or not. It's more or less assumed they should be. At the same time, I don't see code which ensures all the cases are thread-safe. >> >> As far as I know, clientlibs group has been treating AWT components just like Swing ones: for safety create, access and destroy AWT components on EDT only. >> >> I haven't looked at the test code thoroughly. It looks it still needs more investigation. >> >> At the same time, I find it weird that `repaint` paints directly in its code and then posts paint event. >> >> https://github.com/openjdk/jdk/blob/77468c284c068f921da543edd28333911e915b61/src/java.desktop/unix/classes/sun/awt/X11/XListPeer.java#L389-L390 >> >> Overall, it needs more investigation. It could be that the fix for [JDK-6471693](https://bugs.openjdk.org/browse/JDK-6471693) needs revising. > >>At the same time, I find it weird that repaint paints directly in its code and then posts paint event. > > This is one of the implementation details of the AWT, the "native" component should be painted before the paint event will proceed on EDT, and even if EDT is blocked the "native" part should be painted. Since the XAWT is implemented via Swing(or some custom "java peers") which are not thread-safe we should use some additional synchronization. On macOS we have a special lock for that https://github.com/openjdk/jdk/blob/559fc711e03cf0086bea399ffb40cf294cbbb6e1/src/java.desktop/macosx/classes/sun/lwawt/LWListPeer.java#L87 and https://github.com/openjdk/jdk/blob/559fc711e03cf0086bea399ffb40cf294cbbb6e1/src/java.desktop/macosx/classes/sun/lwawt/LWComponentPeer.java#L361 but on XAWT it is quite "cumbersome" since it was implemented a long time ago. And the NPE is triggered for List.select only because it is one method in the test that uses peer w/o synchronization. https://github.com/openjdk/jdk/blob/77468c284c068f921da543edd28333911e915b61/src/java.desktop/share/classes/java/awt/List.java#L588 ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1750991107 From djgredler at gmail.com Mon Sep 9 23:56:52 2024 From: djgredler at gmail.com (Daniel Gredler) Date: Tue, 10 Sep 2024 01:56:52 +0200 Subject: Graphics2D.drawString() fails with Font derived from rotated + scaled AffineTransform In-Reply-To: References: Message-ID: Hi all, I've done a little more digging, and there is indeed a deeper bug in TextLayout.getOutline(AffineTransform), where the transformation is applied too early (before the layout path applies its mapping). There are two uses of TextLayout.getOutline(AffineTransform): the first one, triggered via a simple Graphics2D.drawString( ) was the one I ran into; the second one requires the use of a transformed font with a PSPrinterJob. Both are broken, so it doesn't really make sense to work around the TextLayout issue for the first scenario, but leave the second scenario broken. The deeper fix, including two test classes verifying that both scenarios were broken and now work correctly, is available on GitHub [1]. I plan to submit a PR as soon as I have a final bug ID from my web bug submission. Two points I'd like some feedback on: 1. I've changed the signature of method TextLine.getOutline(AffineTransform), to just TextLine.getOutline( ); I'm assuming this is OK since TextLine is a package-private class? 2. I've added a fast path in TextLayout.getOutline(AffineTransform) to transform the shape in place if it is a GeneralPath (it should usually be, and avoids an extra Shape copy vs. the current code); does this look OK? Or should the code be kept completely generic and a copy always made? I had a look at just changing the variable type from Shape to GeneralPath, but the change started to cascade into a few other classes and I pulled the plug. Take care, Daniel [1] https://github.com/openjdk/jdk/compare/master...gredler:jdk:draw-string-bug-2 On Thu, Sep 5, 2024 at 8:30?PM Daniel Gredler wrote: > Hi all, > > I've run into a bug [1] in the drawing of strings via > Graphics2D.drawString(), when used with a Font derived from a rotated + > scaled AffineTransform. If the AffineTransform scaling is small, the text > draws correctly. But if the scale is too large, the text does not draw. [3] > > It looks like it's an effect of the OutlineTextRenderer.THRESHHOLD; text > larger than this threshold is sent to the OutlineTextRenderer and fails to > draw. The fix [2] seems to be to apply the position translation > transformation *after* the text outline shape is created, rather than > passing it into TextLayout.getOutline(). However, I do not know if this is > the correct fix, or if it is just a workaround to a deeper issue in > TextLayout.getOutline(), which in theory might need to wait to apply the > provided translation until after the layout path has had a chance to map to > user space. > > Can someone familiar with this code comment on whether the proposed fix is > the correct fix, or whether deeper surgery is needed in > TextLayout.getOutline()? > > My other small worry with the current fix [2] is that it creates an extra > copy of the Shape object, so it's going to allocate a bit more memory than > the current implementation. Not sure if there's a better way to update the > Shape in-place. > > Take care, > > Daniel > > --- > > [1] Oracle internal review ID 9077538, no public bug ID yet > [2] > https://github.com/openjdk/jdk/compare/master...gredler:jdk:draw-string-bug > [3] > import java.awt.Color; > import java.awt.Font; > import java.awt.Graphics2D; > import java.awt.geom.AffineTransform; > import java.awt.image.BufferedImage; > import java.io.File; > > import javax.imageio.ImageIO; > > /** > *

The "TEST 2" text does not draw. NOTE: Reducing the AffineTransform > scale > * from 12 to 10 seems to allow it to draw?!? > * > *

Oracle internal review ID : 9077538 > */ > public class DrawStringTest { > > public static void main(String[] args) throws Exception { > > AffineTransform at = AffineTransform.getRotateInstance(3 * Math.PI > / 2); > at.scale(12, 12); > > Font font1 = new Font("SansSerif", Font.PLAIN, 10); > Font font2 = font1.deriveFont(at); > > BufferedImage image = new BufferedImage(500, 500, > BufferedImage.TYPE_BYTE_GRAY); > Graphics2D g2d = image.createGraphics(); > g2d.setColor(Color.WHITE); > g2d.fillRect(0, 0, image.getWidth(), image.getHeight()); > g2d.setColor(Color.BLACK); > g2d.setFont(font1); > g2d.drawString("TEST 1", 200, 400); // draws text > g2d.setFont(font2); > g2d.drawString("TEST 2", 200, 400); // does not draw text > g2d.dispose(); > > ImageIO.write(image, "png", new File("test.png")); > } > > } > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From serb at openjdk.org Tue Sep 10 06:11:19 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Tue, 10 Sep 2024 06:11:19 GMT Subject: RFR: 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 [v2] In-Reply-To: References: Message-ID: > Several tests modified by https://github.com/openjdk/jdk/pull/19339 have been tweaked, see inline comments. > > Notes: > * We have a few XXXRepaint.java tests and in this patch, I updated all of them to follow the change added to the ListRepaint.java > > @azvegint @aivanov-jdk please take a look. Sergey Bylokhov has updated the pull request incrementally with one additional commit since the last revision: PR review part 1 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20861/files - new: https://git.openjdk.org/jdk/pull/20861/files/4c883851..b2907dc7 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20861&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20861&range=00-01 Stats: 42 lines in 6 files changed: 25 ins; 10 del; 7 mod Patch: https://git.openjdk.org/jdk/pull/20861.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20861/head:pull/20861 PR: https://git.openjdk.org/jdk/pull/20861 From serb at openjdk.org Tue Sep 10 07:21:47 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Tue, 10 Sep 2024 07:21:47 GMT Subject: RFR: 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 [v3] In-Reply-To: References: Message-ID: > Several tests modified by https://github.com/openjdk/jdk/pull/19339 have been tweaked, see inline comments. > > Notes: > * We have a few XXXRepaint.java tests and in this patch, I updated all of them to follow the change added to the ListRepaint.java > > @azvegint @aivanov-jdk please take a look. Sergey Bylokhov has updated the pull request incrementally with one additional commit since the last revision: Update bug4490179.java ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20861/files - new: https://git.openjdk.org/jdk/pull/20861/files/b2907dc7..2a56f4b7 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20861&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20861&range=01-02 Stats: 26 lines in 1 file changed: 8 ins; 4 del; 14 mod Patch: https://git.openjdk.org/jdk/pull/20861.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20861/head:pull/20861 PR: https://git.openjdk.org/jdk/pull/20861 From jpai at openjdk.org Tue Sep 10 09:51:29 2024 From: jpai at openjdk.org (Jaikiran Pai) Date: Tue, 10 Sep 2024 09:51:29 GMT Subject: RFR: 8339834: Replace usages of -mx and -ms in some tests Message-ID: Can I please get a review of this trivial change which replaces the usages of `-mx` and `-ms` to `-Xmx` and `-Xms` in tests and in one code comment? As noted in https://bugs.openjdk.org/browse/JDK-8339834, these options are outdated and support for them will soon be deprecated and removed as part of https://bugs.openjdk.org/browse/JDK-8286851. There are some more tests remaining in client-libs area which too require a similar change. I'll be creating a separate JBS issue and PR for that. ------------- Commit messages: - 8339834: Replace usages of -mx and -ms in some tests Changes: https://git.openjdk.org/jdk/pull/20930/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20930&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339834 Stats: 15 lines in 8 files changed: 0 ins; 0 del; 15 mod Patch: https://git.openjdk.org/jdk/pull/20930.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20930/head:pull/20930 PR: https://git.openjdk.org/jdk/pull/20930 From jpai at openjdk.org Tue Sep 10 10:04:15 2024 From: jpai at openjdk.org (Jaikiran Pai) Date: Tue, 10 Sep 2024 10:04:15 GMT Subject: RFR: 8339835: Replace usages of -mx and -ms in some client-libs tests Message-ID: Can I please get a review of this test-only change which updates some client-libs tests to replace the usage of the outdated `-mx` and `-ms` java launcher options with `-Xmx` and `-Xms`? As noted in https://bugs.openjdk.org/browse/JDK-8339835, these outdated options will soon be deprecated for removal from the java launcher code. tier testing in our CI is currently in progress with these changes. ------------- Commit messages: - 8339835: Replace usages of -mx and -ms in some client-libs tests Changes: https://git.openjdk.org/jdk/pull/20931/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20931&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339835 Stats: 21 lines in 11 files changed: 0 ins; 0 del; 21 mod Patch: https://git.openjdk.org/jdk/pull/20931.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20931/head:pull/20931 PR: https://git.openjdk.org/jdk/pull/20931 From jpai at openjdk.org Tue Sep 10 11:10:38 2024 From: jpai at openjdk.org (Jaikiran Pai) Date: Tue, 10 Sep 2024 11:10:38 GMT Subject: RFR: 8339834: Replace usages of -mx and -ms in some tests [v2] In-Reply-To: References: Message-ID: <1uJqLZoqXPFfm00tj-7WbnQIF7L5JcTQCGG2IfAHCHQ=.2f0b3899-965d-45e4-9e87-807fe66a791c@github.com> > Can I please get a review of this trivial change which replaces the usages of `-mx` and `-ms` to `-Xmx` and `-Xms` in tests and in one code comment? > > As noted in https://bugs.openjdk.org/browse/JDK-8339834, these options are outdated and support for them will soon be deprecated and removed as part of https://bugs.openjdk.org/browse/JDK-8286851. > > There are some more tests remaining in client-libs area which too require a similar change. I'll be creating a separate JBS issue and PR for that. Jaikiran Pai has updated the pull request incrementally with one additional commit since the last revision: update JImageToolTest too ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20930/files - new: https://git.openjdk.org/jdk/pull/20930/files/51d15461..8214fdb5 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20930&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20930&range=00-01 Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20930.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20930/head:pull/20930 PR: https://git.openjdk.org/jdk/pull/20930 From dholmes at openjdk.org Tue Sep 10 11:10:38 2024 From: dholmes at openjdk.org (David Holmes) Date: Tue, 10 Sep 2024 11:10:38 GMT Subject: RFR: 8339834: Replace usages of -mx and -ms in some tests [v2] In-Reply-To: <1uJqLZoqXPFfm00tj-7WbnQIF7L5JcTQCGG2IfAHCHQ=.2f0b3899-965d-45e4-9e87-807fe66a791c@github.com> References: <1uJqLZoqXPFfm00tj-7WbnQIF7L5JcTQCGG2IfAHCHQ=.2f0b3899-965d-45e4-9e87-807fe66a791c@github.com> Message-ID: On Tue, 10 Sep 2024 11:07:30 GMT, Jaikiran Pai wrote: >> Can I please get a review of this trivial change which replaces the usages of `-mx` and `-ms` to `-Xmx` and `-Xms` in tests and in one code comment? >> >> As noted in https://bugs.openjdk.org/browse/JDK-8339834, these options are outdated and support for them will soon be deprecated and removed as part of https://bugs.openjdk.org/browse/JDK-8286851. >> >> There are some more tests remaining in client-libs area which too require a similar change. I'll be creating a separate JBS issue and PR for that. > > Jaikiran Pai has updated the pull request incrementally with one additional commit since the last revision: > > update JImageToolTest too LGTM! Thanks for cleaning this up. ------------- Marked as reviewed by dholmes (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20930#pullrequestreview-2292111663 From ngubarkov at openjdk.org Tue Sep 10 13:31:09 2024 From: ngubarkov at openjdk.org (Nikita Gubarkov) Date: Tue, 10 Sep 2024 13:31:09 GMT Subject: RFR: 8339341: SurfaceManager cacheMap retains strong references [v2] In-Reply-To: References: <1ecWvJLiG54e0saEz_Jjz46gzxXnqsNDagdPQ3y_BN4=.27116e44-886b-405f-9d87-ec5e82e2fd20@github.com> Message-ID: On Fri, 6 Sep 2024 16:13:31 GMT, Sergey Bylokhov wrote: >> Nikita Gubarkov has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains one commit: >> >> 8339341: Make SurfaceDataProxy cache a separate entity. >> >> Now caching level is determined by placement of the SurfaceManager.ProxyCache object instead of a "proxy key". This cache "owns" proxies and therefore strong refs via them do not prevent the cache (and hence GraphicsConfig) from being detected as weakly reachable. > > If possible please add the "steps to reproduce" to the JBS issue. @mrserb added steps and attached a test file. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20825#issuecomment-2340788910 From jeisl at openjdk.org Tue Sep 10 13:54:23 2024 From: jeisl at openjdk.org (Josef Eisl) Date: Tue, 10 Sep 2024 13:54:23 GMT Subject: RFR: 8338768: Introduce runtime lookup to check for static builds [v2] In-Reply-To: <56GIZnufresPSrWCWHPkbY9-qCGlm20L-nbXUi5DFv8=.445586cf-37dc-45ce-9b91-9d0a6c85e5ca@github.com> References: <56GIZnufresPSrWCWHPkbY9-qCGlm20L-nbXUi5DFv8=.445586cf-37dc-45ce-9b91-9d0a6c85e5ca@github.com> Message-ID: <1xFVXOUr023IxIHucx0v8dket_QOWsIV0G3wVHnF5aE=.23e8334b-a4ed-4d94-8ad9-376ffe043882@github.com> On Wed, 21 Aug 2024 22:14:40 GMT, Magnus Ihse Bursie wrote: >> As a preparation for Hermetic Java, we need to have a way to look up during runtime if we are using a statically linked library or not. >> >> This change will be the first step needed towards compiling the object files only once, and then link them into either dynamic or static libraries. (The only exception will be the linktype.c[pp] files, which needs to be compiled twice, once for the dynamic libraries and once for the static libraries.) Getting there will require further work though. >> >> This is part of the changes that make up the draft PR https://github.com/openjdk/jdk/pull/19478, which I have broken out. > > Magnus Ihse Bursie has updated the pull request incrementally with one additional commit since the last revision: > > Also update build to link properly src/java.desktop/unix/native/libawt/awt/awt_LoadLibrary.c line 135: > 133: #endif > 134: > 135: if (!JVM_IsStaticallyLinked()) { These "cross-library" link-type probes are a challenge for GraalVM native image. In native image, we statically link most standard JNI libraries into the final executable. However in some cases, for example AWT, static linking is not feasible due to their dependencies. Thus, we resort to dynamic linking. Have a mix of static and dynamic linking means that `JVM_IsStaticallyLinked` should give different answers based on the caller. Example: lets assume a follow-up change introduces a call to `JVM_IsStaticallyLinked` in libnet (which native image statically links): * if `JVM_IsStaticallyLinked` is called from libawt.so, we want to answer `false` * if `JVM_IsStaticallyLinked` is called from libnet.a, we want to answer `true` Is the mixed linking use case is something that the Hermetic Java effort is having on its radar? For this particular case, one solutions could be to avoid cross-library calls. I.e., instead of calling `JVM_IsStaticallyLinked`, have an `AWT_IsStaticallyLinked` that is local to the libawt. This is similar to the pattern also used for JLI. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20666#discussion_r1752023584 From aivanov at openjdk.org Tue Sep 10 14:59:09 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 10 Sep 2024 14:59:09 GMT Subject: RFR: 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 [v3] In-Reply-To: References: Message-ID: On Tue, 10 Sep 2024 07:21:47 GMT, Sergey Bylokhov wrote: >> Several tests modified by https://github.com/openjdk/jdk/pull/19339 have been tweaked, see inline comments. >> >> Notes: >> * We have a few XXXRepaint.java tests and in this patch, I updated all of them to follow the change added to the ListRepaint.java >> >> @azvegint @aivanov-jdk please take a look. > > Sergey Bylokhov has updated the pull request incrementally with one additional commit since the last revision: > > Update bug4490179.java test/jdk/javax/swing/JButton/bug4490179.java line 86: > 84: robot.mousePress(InputEvent.BUTTON3_DOWN_MASK); > 85: robot.mouseRelease(InputEvent.BUTTON3_DOWN_MASK); > 86: if (anyButton.await(3, TimeUnit.SECONDS)) { Should 2 seconds be enough? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1752149990 From azvegint at openjdk.org Tue Sep 10 17:24:17 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Tue, 10 Sep 2024 17:24:17 GMT Subject: RFR: 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 [v3] In-Reply-To: References: Message-ID: On Tue, 10 Sep 2024 07:21:47 GMT, Sergey Bylokhov wrote: >> Several tests modified by https://github.com/openjdk/jdk/pull/19339 have been tweaked, see inline comments. >> >> Notes: >> * We have a few XXXRepaint.java tests and in this patch, I updated all of them to follow the change added to the ListRepaint.java >> >> @azvegint @aivanov-jdk please take a look. > > Sergey Bylokhov has updated the pull request incrementally with one additional commit since the last revision: > > Update bug4490179.java test/jdk/javax/swing/JButton/bug4490179.java line 86: > 84: robot.mousePress(InputEvent.BUTTON3_DOWN_MASK); > 85: robot.mouseRelease(InputEvent.BUTTON3_DOWN_MASK); > 86: if (anyButton.await(3, TimeUnit.SECONDS)) { `await` is also throws the `InterruptedException`, so theoretically we can leave the mouse button pressed in this case. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1752313753 From azvegint at openjdk.org Tue Sep 10 17:32:07 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Tue, 10 Sep 2024 17:32:07 GMT Subject: RFR: 8339835: Replace usages of -mx and -ms in some client-libs tests In-Reply-To: References: Message-ID: On Tue, 10 Sep 2024 09:59:56 GMT, Jaikiran Pai wrote: > Can I please get a review of this test-only change which updates some client-libs tests to replace the usage of the outdated `-mx` and `-ms` java launcher options with `-Xmx` and `-Xms`? > > As noted in https://bugs.openjdk.org/browse/JDK-8339835, these outdated options will soon be deprecated for removal from the java launcher code. > > tier testing in our CI is currently in progress with these changes. Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20931#pullrequestreview-2293218724 From azvegint at openjdk.org Tue Sep 10 20:57:25 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Tue, 10 Sep 2024 20:57:25 GMT Subject: RFR: 8339794: Open source closed choice tests #1 Message-ID: <0EkumWajHuf3zkfG_ugg9ZkFl0NCwFjCmk-0iDea_7A=.058aa280-7e36-43cb-b66e-d5486caba5cb@github.com> Few more tests open sourcing. Testing is green. ------------- Commit messages: - 8339794: Open source closed choice tests #1 Changes: https://git.openjdk.org/jdk/pull/20941/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20941&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339794 Stats: 383 lines in 3 files changed: 383 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20941.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20941/head:pull/20941 PR: https://git.openjdk.org/jdk/pull/20941 From dholmes at openjdk.org Tue Sep 10 21:34:04 2024 From: dholmes at openjdk.org (David Holmes) Date: Tue, 10 Sep 2024 21:34:04 GMT Subject: RFR: 8339834: Replace usages of -mx and -ms in some tests [v2] In-Reply-To: <1uJqLZoqXPFfm00tj-7WbnQIF7L5JcTQCGG2IfAHCHQ=.2f0b3899-965d-45e4-9e87-807fe66a791c@github.com> References: <1uJqLZoqXPFfm00tj-7WbnQIF7L5JcTQCGG2IfAHCHQ=.2f0b3899-965d-45e4-9e87-807fe66a791c@github.com> Message-ID: On Tue, 10 Sep 2024 11:10:38 GMT, Jaikiran Pai wrote: >> Can I please get a review of this trivial change which replaces the usages of `-mx` and `-ms` to `-Xmx` and `-Xms` in tests and in one code comment? >> >> As noted in https://bugs.openjdk.org/browse/JDK-8339834, these options are outdated and support for them will soon be deprecated and removed as part of https://bugs.openjdk.org/browse/JDK-8286851. >> >> There are some more tests remaining in client-libs area which too require a similar change. I'll be creating a separate JBS issue and PR for that. > > Jaikiran Pai has updated the pull request incrementally with one additional commit since the last revision: > > update JImageToolTest too Marked as reviewed by dholmes (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20930#pullrequestreview-2293814493 From ihse at openjdk.org Tue Sep 10 21:50:14 2024 From: ihse at openjdk.org (Magnus Ihse Bursie) Date: Tue, 10 Sep 2024 21:50:14 GMT Subject: RFR: 8338768: Introduce runtime lookup to check for static builds [v2] In-Reply-To: <1xFVXOUr023IxIHucx0v8dket_QOWsIV0G3wVHnF5aE=.23e8334b-a4ed-4d94-8ad9-376ffe043882@github.com> References: <56GIZnufresPSrWCWHPkbY9-qCGlm20L-nbXUi5DFv8=.445586cf-37dc-45ce-9b91-9d0a6c85e5ca@github.com> <1xFVXOUr023IxIHucx0v8dket_QOWsIV0G3wVHnF5aE=.23e8334b-a4ed-4d94-8ad9-376ffe043882@github.com> Message-ID: On Tue, 10 Sep 2024 13:51:55 GMT, Josef Eisl wrote: >> Magnus Ihse Bursie has updated the pull request incrementally with one additional commit since the last revision: >> >> Also update build to link properly > > src/java.desktop/unix/native/libawt/awt/awt_LoadLibrary.c line 135: > >> 133: #endif >> 134: >> 135: if (!JVM_IsStaticallyLinked()) { > > These "cross-library" link-type probes are a challenge for GraalVM native image. In native image, we statically link most standard JNI libraries into the final executable. However in some cases, for example AWT, static linking is not feasible due to their dependencies. Thus, we resort to dynamic linking. Have a mix of static and dynamic linking means that `JVM_IsStaticallyLinked` should give different answers based on the caller. Example: > lets assume a follow-up change introduces a call to `JVM_IsStaticallyLinked` in libnet (which native image statically links): > * if `JVM_IsStaticallyLinked` is called from libawt.so, we want to answer `false` > * if `JVM_IsStaticallyLinked` is called from libnet.a, we want to answer `true` > > Is the mixed linking use case is something that the Hermetic Java effort is having on its radar? > > For this particular case, one solutions could be to avoid cross-library calls. I.e., instead of calling `JVM_IsStaticallyLinked`, have an `AWT_IsStaticallyLinked` that is local to the libawt. This is similar to the pattern also used for JLI. Mixing static and dynamic libraries willy-nilly sounds like a situation that is hard to resolve in a safe and sound way. The basic assumption here has been that you either have all libraries dynamic, or all libraries static. In the particular case you mention about libawt, I think the proper solution is to sort out the mess that is libawt_headless/libawt_xawt. It seems to me that the X support should be loaded using dlopen, not by hard dependencies to the X libraries. I think that should solve your problem (as well as many other problems). ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20666#discussion_r1752767100 From jeisl at openjdk.org Wed Sep 11 07:05:17 2024 From: jeisl at openjdk.org (Josef Eisl) Date: Wed, 11 Sep 2024 07:05:17 GMT Subject: RFR: 8338768: Introduce runtime lookup to check for static builds [v2] In-Reply-To: References: <56GIZnufresPSrWCWHPkbY9-qCGlm20L-nbXUi5DFv8=.445586cf-37dc-45ce-9b91-9d0a6c85e5ca@github.com> <1xFVXOUr023IxIHucx0v8dket_QOWsIV0G3wVHnF5aE=.23e8334b-a4ed-4d94-8ad9-376ffe043882@github.com> Message-ID: On Tue, 10 Sep 2024 21:47:15 GMT, Magnus Ihse Bursie wrote: > sort out the mess that is libawt_headless/libawt_xawt sounds good. can you point me to a JBS? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20666#discussion_r1753307449 From aivanov at openjdk.org Wed Sep 11 08:05:09 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 11 Sep 2024 08:05:09 GMT Subject: RFR: 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 [v3] In-Reply-To: References: Message-ID: <6FmslRvaxsBHGJF3NelyxAJWE73wS1QMS5DCttRWyEo=.c1b5a545-d354-46b3-9e8b-ff5b0b98f33d@github.com> On Tue, 10 Sep 2024 16:47:34 GMT, Alexander Zvegintsev wrote: >> Sergey Bylokhov has updated the pull request incrementally with one additional commit since the last revision: >> >> Update bug4490179.java > > test/jdk/javax/swing/JButton/bug4490179.java line 86: > >> 84: robot.mousePress(InputEvent.BUTTON3_DOWN_MASK); >> 85: robot.mouseRelease(InputEvent.BUTTON3_DOWN_MASK); >> 86: if (anyButton.await(3, TimeUnit.SECONDS)) { > > `await` is also throws the `InterruptedException`, so theoretically we can leave the mouse button pressed in this case. `await` throws `InterruptedException` when the thread is interrupted; the main thread is never interrupted in the test, therefore `InterruptedException` is never thrown. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1753503239 From aivanov at openjdk.org Wed Sep 11 09:10:12 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 11 Sep 2024 09:10:12 GMT Subject: RFR: 8339834: Replace usages of -mx and -ms in some tests [v2] In-Reply-To: <1uJqLZoqXPFfm00tj-7WbnQIF7L5JcTQCGG2IfAHCHQ=.2f0b3899-965d-45e4-9e87-807fe66a791c@github.com> References: <1uJqLZoqXPFfm00tj-7WbnQIF7L5JcTQCGG2IfAHCHQ=.2f0b3899-965d-45e4-9e87-807fe66a791c@github.com> Message-ID: On Tue, 10 Sep 2024 11:10:38 GMT, Jaikiran Pai wrote: >> Can I please get a review of this trivial change which replaces the usages of `-mx` and `-ms` to `-Xmx` and `-Xms` in tests and in one code comment? >> >> As noted in https://bugs.openjdk.org/browse/JDK-8339834, these options are outdated and support for them will soon be deprecated and removed as part of https://bugs.openjdk.org/browse/JDK-8286851. >> >> There are some more tests remaining in client-libs area which too require a similar change. I'll be creating a separate JBS issue and PR for that. > > Jaikiran Pai has updated the pull request incrementally with one additional commit since the last revision: > > update JImageToolTest too Looks good to me. It could be good to remove `@author` tags from all the modified tests. test/jdk/java/beans/Introspector/Test5102804.java line 28: > 26: * @bug 5102804 > 27: * @summary Tests memory leak > 28: * @author Sergey Malenkov Could you also remove the `@author` tag? test/jdk/java/beans/Introspector/Test8027905.java line 30: > 28: * @bug 8027905 > 29: * @summary Tests that GC does not affect a property type > 30: * @author Sergey Malenkov Could you also remove the `@author` tag? ------------- Marked as reviewed by aivanov (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20930#pullrequestreview-2296140348 PR Review Comment: https://git.openjdk.org/jdk/pull/20930#discussion_r1753703304 PR Review Comment: https://git.openjdk.org/jdk/pull/20930#discussion_r1753707545 From jpai at openjdk.org Wed Sep 11 09:19:21 2024 From: jpai at openjdk.org (Jaikiran Pai) Date: Wed, 11 Sep 2024 09:19:21 GMT Subject: RFR: 8339834: Replace usages of -mx and -ms in some tests [v3] In-Reply-To: References: Message-ID: > Can I please get a review of this trivial change which replaces the usages of `-mx` and `-ms` to `-Xmx` and `-Xms` in tests and in one code comment? > > As noted in https://bugs.openjdk.org/browse/JDK-8339834, these options are outdated and support for them will soon be deprecated and removed as part of https://bugs.openjdk.org/browse/JDK-8286851. > > There are some more tests remaining in client-libs area which too require a similar change. I'll be creating a separate JBS issue and PR for that. Jaikiran Pai has updated the pull request incrementally with one additional commit since the last revision: Alexey's suggestion - remove @author tags ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20930/files - new: https://git.openjdk.org/jdk/pull/20930/files/8214fdb5..1596c34c Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20930&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20930&range=01-02 Stats: 5 lines in 4 files changed: 0 ins; 5 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20930.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20930/head:pull/20930 PR: https://git.openjdk.org/jdk/pull/20930 From jpai at openjdk.org Wed Sep 11 09:19:21 2024 From: jpai at openjdk.org (Jaikiran Pai) Date: Wed, 11 Sep 2024 09:19:21 GMT Subject: RFR: 8339834: Replace usages of -mx and -ms in some tests [v2] In-Reply-To: References: <1uJqLZoqXPFfm00tj-7WbnQIF7L5JcTQCGG2IfAHCHQ=.2f0b3899-965d-45e4-9e87-807fe66a791c@github.com> Message-ID: <9qOt-WPO0yYRk9G1dd8W2B3i_dIpNdNpoXl7PNb1Jrk=.e1b334d5-3bfa-4549-8dbc-78abf93f17ab@github.com> On Wed, 11 Sep 2024 09:03:58 GMT, Alexey Ivanov wrote: >> Jaikiran Pai has updated the pull request incrementally with one additional commit since the last revision: >> >> update JImageToolTest too > > test/jdk/java/beans/Introspector/Test5102804.java line 28: > >> 26: * @bug 5102804 >> 27: * @summary Tests memory leak >> 28: * @author Sergey Malenkov > > Could you also remove the `@author` tag? Done - I've now updated the PR to remove these author tags. Tests continue to pass. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20930#discussion_r1753742813 From aivanov at openjdk.org Wed Sep 11 09:31:07 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 11 Sep 2024 09:31:07 GMT Subject: RFR: 8339834: Replace usages of -mx and -ms in some tests [v3] In-Reply-To: References: Message-ID: On Wed, 11 Sep 2024 09:19:21 GMT, Jaikiran Pai wrote: >> Can I please get a review of this trivial change which replaces the usages of `-mx` and `-ms` to `-Xmx` and `-Xms` in tests and in one code comment? >> >> As noted in https://bugs.openjdk.org/browse/JDK-8339834, these options are outdated and support for them will soon be deprecated and removed as part of https://bugs.openjdk.org/browse/JDK-8286851. >> >> There are some more tests remaining in client-libs area which too require a similar change. I'll be creating a separate JBS issue and PR for that. > > Jaikiran Pai has updated the pull request incrementally with one additional commit since the last revision: > > Alexey's suggestion - remove @author tags Marked as reviewed by aivanov (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20930#pullrequestreview-2296196596 From jdv at openjdk.org Wed Sep 11 09:32:08 2024 From: jdv at openjdk.org (Jayathirth D V) Date: Wed, 11 Sep 2024 09:32:08 GMT Subject: RFR: 8339794: Open source closed choice tests #1 In-Reply-To: <0EkumWajHuf3zkfG_ugg9ZkFl0NCwFjCmk-0iDea_7A=.058aa280-7e36-43cb-b66e-d5486caba5cb@github.com> References: <0EkumWajHuf3zkfG_ugg9ZkFl0NCwFjCmk-0iDea_7A=.058aa280-7e36-43cb-b66e-d5486caba5cb@github.com> Message-ID: On Tue, 10 Sep 2024 20:51:29 GMT, Alexander Zvegintsev wrote: > Few more tests open sourcing. > > Testing is green. @azvegint I see that one of the test jdk/java/awt/Choice/WheelEventsConsumed/WheelEventsConsumed.java is deproblemlisted. Is this test sufficiently tested in our CI to make sure we don't have some intermittent failure? ------------- PR Comment: https://git.openjdk.org/jdk/pull/20941#issuecomment-2343128953 From mvs at openjdk.org Wed Sep 11 14:43:37 2024 From: mvs at openjdk.org (Manukumar V S) Date: Wed, 11 Sep 2024 14:43:37 GMT Subject: RFR: 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java Message-ID: Stabilized the test by disposing the frame at the end, adding an auto delay, called panel.getLocationOnScreen() in invokeAndWait(), formatting changes, etc And for better debugging, added captureScreen() for failure cases. Testing: Tested using mach5 in all available platforms and attached the link in bug as a comment. ------------- Commit messages: - 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java Changes: https://git.openjdk.org/jdk/pull/20951/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20951&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339943 Stats: 60 lines in 1 file changed: 33 ins; 13 del; 14 mod Patch: https://git.openjdk.org/jdk/pull/20951.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20951/head:pull/20951 PR: https://git.openjdk.org/jdk/pull/20951 From ascarpino at openjdk.org Wed Sep 11 16:11:09 2024 From: ascarpino at openjdk.org (Anthony Scarpino) Date: Wed, 11 Sep 2024 16:11:09 GMT Subject: RFR: 8339834: Replace usages of -mx and -ms in some tests [v3] In-Reply-To: References: Message-ID: On Wed, 11 Sep 2024 09:19:21 GMT, Jaikiran Pai wrote: >> Can I please get a review of this trivial change which replaces the usages of `-mx` and `-ms` to `-Xmx` and `-Xms` in tests and in one code comment? >> >> As noted in https://bugs.openjdk.org/browse/JDK-8339834, these options are outdated and support for them will soon be deprecated and removed as part of https://bugs.openjdk.org/browse/JDK-8286851. >> >> There are some more tests remaining in client-libs area which too require a similar change. I'll be creating a separate JBS issue and PR for that. > > Jaikiran Pai has updated the pull request incrementally with one additional commit since the last revision: > > Alexey's suggestion - remove @author tags The Cache.java change, and the others, look good to me. ------------- Marked as reviewed by ascarpino (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20930#pullrequestreview-2297774755 From prr at openjdk.org Wed Sep 11 16:32:08 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 11 Sep 2024 16:32:08 GMT Subject: RFR: 8339835: Replace usages of -mx and -ms in some client-libs tests In-Reply-To: References: Message-ID: <0HgN8QgDTrH9h-nHxjzDeEzf79pGNPitAtuD6N_gO6w=.3098c2d3-fe44-4b4e-92b9-85891160e51a@github.com> On Tue, 10 Sep 2024 09:59:56 GMT, Jaikiran Pai wrote: > Can I please get a review of this test-only change which updates some client-libs tests to replace the usage of the outdated `-mx` and `-ms` java launcher options with `-Xmx` and `-Xms`? > > As noted in https://bugs.openjdk.org/browse/JDK-8339835, these outdated options will soon be deprecated for removal from the java launcher code. > > tier testing in our CI is currently in progress with these changes. Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20931#pullrequestreview-2297856555 From prr at openjdk.org Wed Sep 11 16:38:08 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 11 Sep 2024 16:38:08 GMT Subject: RFR: 8339794: Open source closed choice tests #1 In-Reply-To: <0EkumWajHuf3zkfG_ugg9ZkFl0NCwFjCmk-0iDea_7A=.058aa280-7e36-43cb-b66e-d5486caba5cb@github.com> References: <0EkumWajHuf3zkfG_ugg9ZkFl0NCwFjCmk-0iDea_7A=.058aa280-7e36-43cb-b66e-d5486caba5cb@github.com> Message-ID: On Tue, 10 Sep 2024 20:51:29 GMT, Alexander Zvegintsev wrote: > Few more tests open sourcing. > > Testing is green. We went back and forth on when it makes sense to have a subdirectory, didn't we ? Not sure this one needs it, there's no history to preserve across moves / renames and the tests don't seem to do anything that steps on other tests. So I'm approving, but think about that. ------------- Marked as reviewed by prr (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20941#pullrequestreview-2297876105 From prr at openjdk.org Wed Sep 11 16:39:05 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 11 Sep 2024 16:39:05 GMT Subject: RFR: 8339834: Replace usages of -mx and -ms in some tests [v3] In-Reply-To: References: Message-ID: On Wed, 11 Sep 2024 09:19:21 GMT, Jaikiran Pai wrote: >> Can I please get a review of this trivial change which replaces the usages of `-mx` and `-ms` to `-Xmx` and `-Xms` in tests and in one code comment? >> >> As noted in https://bugs.openjdk.org/browse/JDK-8339834, these options are outdated and support for them will soon be deprecated and removed as part of https://bugs.openjdk.org/browse/JDK-8286851. >> >> There are some more tests remaining in client-libs area which too require a similar change. I'll be creating a separate JBS issue and PR for that. > > Jaikiran Pai has updated the pull request incrementally with one additional commit since the last revision: > > Alexey's suggestion - remove @author tags Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20930#pullrequestreview-2297881944 From prr at openjdk.org Wed Sep 11 16:40:09 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 11 Sep 2024 16:40:09 GMT Subject: RFR: 8339731: java.desktop/share/classes/javax/swing/text/html/default.css typo in margin settings In-Reply-To: References: Message-ID: <8fHjgKjIeG_Bi-6cnOVZeZIid1utuzyCm6uv0xBEbDw=.3139dbfc-a80b-45ff-8b27-c83ddcaf80c8@github.com> On Mon, 9 Sep 2024 13:29:04 GMT, Matthias Baesken wrote: > java.desktop/share/classes/javax/swing/text/html/default.css:105: margin-rigth: 0; > > seems to be a typo (must be right). I don't know how this is used, but it is clearly a typo. ------------- Marked as reviewed by prr (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20915#pullrequestreview-2297885372 From prr at openjdk.org Wed Sep 11 16:57:07 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 11 Sep 2024 16:57:07 GMT Subject: RFR: 8339271: giflib attribution correction In-Reply-To: <9bUf9UKVavgShir_2Z2Hfjelu4gLJUxoWCel8AntU_M=.2a57b6e4-dafa-45ec-97ba-a70da712b2f9@github.com> References: <9bUf9UKVavgShir_2Z2Hfjelu4gLJUxoWCel8AntU_M=.2a57b6e4-dafa-45ec-97ba-a70da712b2f9@github.com> Message-ID: <_UxY03WUcn1hCaaelZN1bmFfeV_q2xPBGnlah5YgSa4=.942271df-0a9f-448f-a2c2-48ffcba67e74@github.com> On Wed, 4 Sep 2024 19:43:19 GMT, Alisen Chung wrote: > Changing format of file paths in giflib copyright file and removing extra text from authors list This should be OK. The onus should be on the giflib maintainers. If they thought the list important it would be provided here. ------------- Marked as reviewed by prr (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20859#pullrequestreview-2297946689 From azvegint at openjdk.org Wed Sep 11 18:10:03 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Wed, 11 Sep 2024 18:10:03 GMT Subject: RFR: 8339794: Open source closed choice tests #1 In-Reply-To: References: <0EkumWajHuf3zkfG_ugg9ZkFl0NCwFjCmk-0iDea_7A=.058aa280-7e36-43cb-b66e-d5486caba5cb@github.com> Message-ID: On Wed, 11 Sep 2024 09:29:56 GMT, Jayathirth D V wrote: > @azvegint I see that one of the test jdk/java/awt/Choice/WheelEventsConsumed/WheelEventsConsumed.java is deproblemlisted. Is this test sufficiently tested in our CI to make sure we don't have some intermittent failure? It is not intermittent, it always fails on Windows and macos, they just behave differently and do not deliver MouseWheelEvent when outside of the Choice component. The original fix was for 1.6(there was no support for macos from Sun at the time). I tried 6u45 on Windows and it still fails. This test is not in the problem list because it is now only linux `@requires (os.family == "linux")` ------------- PR Comment: https://git.openjdk.org/jdk/pull/20941#issuecomment-2344350676 From azvegint at openjdk.org Wed Sep 11 18:28:31 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Wed, 11 Sep 2024 18:28:31 GMT Subject: RFR: 8339794: Open source closed choice tests #1 [v2] In-Reply-To: <0EkumWajHuf3zkfG_ugg9ZkFl0NCwFjCmk-0iDea_7A=.058aa280-7e36-43cb-b66e-d5486caba5cb@github.com> References: <0EkumWajHuf3zkfG_ugg9ZkFl0NCwFjCmk-0iDea_7A=.058aa280-7e36-43cb-b66e-d5486caba5cb@github.com> Message-ID: > Few more tests open sourcing. > > Testing is green. Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: move tests ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20941/files - new: https://git.openjdk.org/jdk/pull/20941/files/d1fa3910..6f03f35f Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20941&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20941&range=00-01 Stats: 1 line in 3 files changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/20941.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20941/head:pull/20941 PR: https://git.openjdk.org/jdk/pull/20941 From azvegint at openjdk.org Wed Sep 11 18:28:31 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Wed, 11 Sep 2024 18:28:31 GMT Subject: RFR: 8339794: Open source closed choice tests #1 [v2] In-Reply-To: References: <0EkumWajHuf3zkfG_ugg9ZkFl0NCwFjCmk-0iDea_7A=.058aa280-7e36-43cb-b66e-d5486caba5cb@github.com> Message-ID: On Wed, 11 Sep 2024 16:35:03 GMT, Phil Race wrote: > We went back and forth on when it makes sense to have a subdirectory, didn't we ? Not sure this one needs it, there's no history to preserve across moves / renames and the tests don't seem to do anything that steps on other tests. So I'm approving, but think about that. Moved from separate dirs ------------- PR Comment: https://git.openjdk.org/jdk/pull/20941#issuecomment-2344384393 From aturbanov at openjdk.org Wed Sep 11 19:56:30 2024 From: aturbanov at openjdk.org (Andrey Turbanov) Date: Wed, 11 Sep 2024 19:56:30 GMT Subject: RFR: 8339972: Make a few fields in SortingFocusTraversalPolicy static Message-ID: 2 fields in javax.swing.SortingFocusTraversalPolicy could be made 'static': 1. FORWARD_TRAVERSAL = 0 2. BACKWARD_TRAVERSAL = 1 ------------- Commit messages: - [PATCH] Make a few fields in SortingFocusTraversalPolicy static Changes: https://git.openjdk.org/jdk/pull/20327/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20327&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339972 Stats: 3 lines in 1 file changed: 0 ins; 0 del; 3 mod Patch: https://git.openjdk.org/jdk/pull/20327.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20327/head:pull/20327 PR: https://git.openjdk.org/jdk/pull/20327 From jpai at openjdk.org Thu Sep 12 02:05:09 2024 From: jpai at openjdk.org (Jaikiran Pai) Date: Thu, 12 Sep 2024 02:05:09 GMT Subject: RFR: 8339834: Replace usages of -mx and -ms in some tests [v3] In-Reply-To: References: Message-ID: On Wed, 11 Sep 2024 09:19:21 GMT, Jaikiran Pai wrote: >> Can I please get a review of this trivial change which replaces the usages of `-mx` and `-ms` to `-Xmx` and `-Xms` in tests and in one code comment? >> >> As noted in https://bugs.openjdk.org/browse/JDK-8339834, these options are outdated and support for them will soon be deprecated and removed as part of https://bugs.openjdk.org/browse/JDK-8286851. >> >> There are some more tests remaining in client-libs area which too require a similar change. I'll be creating a separate JBS issue and PR for that. > > Jaikiran Pai has updated the pull request incrementally with one additional commit since the last revision: > > Alexey's suggestion - remove @author tags Thank you everyone for the reviews. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20930#issuecomment-2345106667 From jpai at openjdk.org Thu Sep 12 02:05:10 2024 From: jpai at openjdk.org (Jaikiran Pai) Date: Thu, 12 Sep 2024 02:05:10 GMT Subject: Integrated: 8339834: Replace usages of -mx and -ms in some tests In-Reply-To: References: Message-ID: On Tue, 10 Sep 2024 09:46:14 GMT, Jaikiran Pai wrote: > Can I please get a review of this trivial change which replaces the usages of `-mx` and `-ms` to `-Xmx` and `-Xms` in tests and in one code comment? > > As noted in https://bugs.openjdk.org/browse/JDK-8339834, these options are outdated and support for them will soon be deprecated and removed as part of https://bugs.openjdk.org/browse/JDK-8286851. > > There are some more tests remaining in client-libs area which too require a similar change. I'll be creating a separate JBS issue and PR for that. This pull request has now been integrated. Changeset: 1d392492 Author: Jaikiran Pai URL: https://git.openjdk.org/jdk/commit/1d392492311daceeae12769cb9494eae63289853 Stats: 22 lines in 9 files changed: 0 ins; 5 del; 17 mod 8339834: Replace usages of -mx and -ms in some tests Reviewed-by: aivanov, ascarpino, prr, dholmes ------------- PR: https://git.openjdk.org/jdk/pull/20930 From jpai at openjdk.org Thu Sep 12 02:06:06 2024 From: jpai at openjdk.org (Jaikiran Pai) Date: Thu, 12 Sep 2024 02:06:06 GMT Subject: RFR: 8339835: Replace usages of -mx and -ms in some client-libs tests In-Reply-To: References: Message-ID: On Tue, 10 Sep 2024 09:59:56 GMT, Jaikiran Pai wrote: > Can I please get a review of this test-only change which updates some client-libs tests to replace the usage of the outdated `-mx` and `-ms` java launcher options with `-Xmx` and `-Xms`? > > As noted in https://bugs.openjdk.org/browse/JDK-8339835, these outdated options will soon be deprecated for removal from the java launcher code. > > tier testing in our CI is currently in progress with these changes. Thank you Alexander and Phil for the reviews. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20931#issuecomment-2345108900 From jpai at openjdk.org Thu Sep 12 02:09:09 2024 From: jpai at openjdk.org (Jaikiran Pai) Date: Thu, 12 Sep 2024 02:09:09 GMT Subject: Integrated: 8339835: Replace usages of -mx and -ms in some client-libs tests In-Reply-To: References: Message-ID: <-T7mv1aKFN37BN3VU8ow_0PmfaospFE581OCYuHsQvI=.8d86f455-2141-48ce-b3de-84893a708a58@github.com> On Tue, 10 Sep 2024 09:59:56 GMT, Jaikiran Pai wrote: > Can I please get a review of this test-only change which updates some client-libs tests to replace the usage of the outdated `-mx` and `-ms` java launcher options with `-Xmx` and `-Xms`? > > As noted in https://bugs.openjdk.org/browse/JDK-8339835, these outdated options will soon be deprecated for removal from the java launcher code. > > tier testing in our CI is currently in progress with these changes. This pull request has now been integrated. Changeset: 6d4bd6c6 Author: Jaikiran Pai URL: https://git.openjdk.org/jdk/commit/6d4bd6c6b6c3e6ef4c0a1e4eebf888156e43da58 Stats: 21 lines in 11 files changed: 0 ins; 0 del; 21 mod 8339835: Replace usages of -mx and -ms in some client-libs tests Reviewed-by: azvegint, prr ------------- PR: https://git.openjdk.org/jdk/pull/20931 From azvegint at openjdk.org Thu Sep 12 03:38:06 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Thu, 12 Sep 2024 03:38:06 GMT Subject: RFR: 8339972: Make a few fields in SortingFocusTraversalPolicy static In-Reply-To: References: Message-ID: On Thu, 25 Jul 2024 11:17:23 GMT, Andrey Turbanov wrote: > 2 fields in javax.swing.SortingFocusTraversalPolicy could be made 'static': > 1. FORWARD_TRAVERSAL = 0 > 2. BACKWARD_TRAVERSAL = 1 Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20327#pullrequestreview-2299149018 From azvegint at openjdk.org Thu Sep 12 05:19:05 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Thu, 12 Sep 2024 05:19:05 GMT Subject: RFR: 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java In-Reply-To: References: Message-ID: On Wed, 11 Sep 2024 14:37:12 GMT, Manukumar V S wrote: > Stabilized the test by disposing the frame at the end, adding an auto delay, called panel.getLocationOnScreen() in invokeAndWait(), formatting changes, etc > And for better debugging, added captureScreen() for failure cases. > > Testing: > Tested using mach5 in all available platforms and attached the link in bug as a comment. My other comments are minor, because this changeset doesn't seem to help, if we increase the JTREG=REPEAT_COUNT from 10 to 100 it can still timeout on Windows. test/jdk/java/awt/dnd/DropActionChangeTest.java line 75: > 73: > 74: public static void main(String[] args) throws Exception { > 75: test = new DropActionChangeTest(); JFrame(aka DropActionChangeTest) is initialized on the main thread instead of the EDT. test/jdk/java/awt/dnd/DropActionChangeTest.java line 100: > 98: final DragSourceListener dsl = new DragSourceAdapter() { > 99: public void dragDropEnd(DragSourceDropEvent e) { > 100: System.err.println("DragSourseListener.dragDropEnd(): " + Suggestion: System.err.println("DragSourceListener.dragDropEnd(): " + test/jdk/java/awt/dnd/DropActionChangeTest.java line 146: > 144: try { > 145: robot = new Robot(); > 146: robot.setAutoDelay(100); Suggestion: robot.setAutoDelay(100); robot.waitForIdle(); robot.delay(500); We usually wait a bit after calling `setVisible()` test/jdk/java/awt/dnd/DropActionChangeTest.java line 176: > 174: if (!dropEnd) { > 175: captureScreen(); > 176: System.err.println("DragSourseListener.dragDropEnd() was not called, returning"); Suggestion: System.err.println("DragSourceListener.dragDropEnd() was not called, returning"); ------------- PR Review: https://git.openjdk.org/jdk/pull/20951#pullrequestreview-2299103542 PR Review Comment: https://git.openjdk.org/jdk/pull/20951#discussion_r1756007957 PR Review Comment: https://git.openjdk.org/jdk/pull/20951#discussion_r1756022768 PR Review Comment: https://git.openjdk.org/jdk/pull/20951#discussion_r1756133226 PR Review Comment: https://git.openjdk.org/jdk/pull/20951#discussion_r1756025576 From psadhukhan at openjdk.org Thu Sep 12 05:56:25 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Thu, 12 Sep 2024 05:56:25 GMT Subject: RFR: 8339727: Open source several AWT focus tests - series 1 Message-ID: Open source few AWT focus tests ------------- Commit messages: - 8339727: Open source several AWT focus tests - series 1 Changes: https://git.openjdk.org/jdk/pull/20961/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20961&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339727 Stats: 649 lines in 5 files changed: 649 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20961.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20961/head:pull/20961 PR: https://git.openjdk.org/jdk/pull/20961 From mbaesken at openjdk.org Thu Sep 12 07:10:08 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Thu, 12 Sep 2024 07:10:08 GMT Subject: RFR: 8339731: java.desktop/share/classes/javax/swing/text/html/default.css typo in margin settings In-Reply-To: References: Message-ID: On Mon, 9 Sep 2024 13:29:04 GMT, Matthias Baesken wrote: > java.desktop/share/classes/javax/swing/text/html/default.css:105: margin-rigth: 0; > > seems to be a typo (must be right). Thanks for the review ! ------------- PR Comment: https://git.openjdk.org/jdk/pull/20915#issuecomment-2345433603 From mbaesken at openjdk.org Thu Sep 12 07:10:08 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Thu, 12 Sep 2024 07:10:08 GMT Subject: Integrated: 8339731: java.desktop/share/classes/javax/swing/text/html/default.css typo in margin settings In-Reply-To: References: Message-ID: On Mon, 9 Sep 2024 13:29:04 GMT, Matthias Baesken wrote: > java.desktop/share/classes/javax/swing/text/html/default.css:105: margin-rigth: 0; > > seems to be a typo (must be right). This pull request has now been integrated. Changeset: ac3f92b4 Author: Matthias Baesken URL: https://git.openjdk.org/jdk/commit/ac3f92b4110b05906a49c4146774fd6324c6d198 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod 8339731: java.desktop/share/classes/javax/swing/text/html/default.css typo in margin settings Reviewed-by: prr ------------- PR: https://git.openjdk.org/jdk/pull/20915 From mvs at openjdk.org Thu Sep 12 09:22:39 2024 From: mvs at openjdk.org (Manukumar V S) Date: Thu, 12 Sep 2024 09:22:39 GMT Subject: RFR: 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java [v2] In-Reply-To: References: Message-ID: > Stabilized the test by disposing the frame at the end, adding an auto delay, called panel.getLocationOnScreen() in invokeAndWait(), formatting changes, etc > And for better debugging, added captureScreen() for failure cases. > > Testing: > Tested using mach5 in all available platforms and attached the link in bug as a comment. Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: Review comments fixed : Creating frame in EDT, adding robot.delay() and robot.waitForIdle(), formatting changes, etc ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20951/files - new: https://git.openjdk.org/jdk/pull/20951/files/4343f4db..6238ba9b Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20951&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20951&range=00-01 Stats: 19 lines in 1 file changed: 5 ins; 5 del; 9 mod Patch: https://git.openjdk.org/jdk/pull/20951.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20951/head:pull/20951 PR: https://git.openjdk.org/jdk/pull/20951 From mvs at openjdk.org Thu Sep 12 09:26:04 2024 From: mvs at openjdk.org (Manukumar V S) Date: Thu, 12 Sep 2024 09:26:04 GMT Subject: RFR: 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java [v2] In-Reply-To: References: Message-ID: On Thu, 12 Sep 2024 05:16:52 GMT, Alexander Zvegintsev wrote: > My other comments are minor, because this changeset doesn't seem to help, if we increase the JTREG=REPEAT_COUNT from 10 to 100 it can still timeout on Windows. With the new changes, I have run it 900 times(JTREG=REPEAT_COUNT=100 in 9 machines) in windows as well as 100 times each on other platforms and no failures observed(mach5 test links are attached in bug). ------------- PR Comment: https://git.openjdk.org/jdk/pull/20951#issuecomment-2345736105 From psadhukhan at openjdk.org Thu Sep 12 13:57:30 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Thu, 12 Sep 2024 13:57:30 GMT Subject: RFR: 8339727: Open source several AWT focus tests - series 1 [v2] In-Reply-To: References: Message-ID: > Open source few AWT focus tests Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Spacing ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20961/files - new: https://git.openjdk.org/jdk/pull/20961/files/8c8b8e82..7f9c1eb1 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20961&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20961&range=00-01 Stats: 2 lines in 2 files changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20961.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20961/head:pull/20961 PR: https://git.openjdk.org/jdk/pull/20961 From jdv at openjdk.org Thu Sep 12 14:03:06 2024 From: jdv at openjdk.org (Jayathirth D V) Date: Thu, 12 Sep 2024 14:03:06 GMT Subject: RFR: 8339794: Open source closed choice tests #1 [v2] In-Reply-To: References: <0EkumWajHuf3zkfG_ugg9ZkFl0NCwFjCmk-0iDea_7A=.058aa280-7e36-43cb-b66e-d5486caba5cb@github.com> Message-ID: On Wed, 11 Sep 2024 18:28:31 GMT, Alexander Zvegintsev wrote: >> Few more tests open sourcing. >> >> Testing is green. > > Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: > > move tests Marked as reviewed by jdv (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20941#pullrequestreview-2300418930 From azvegint at openjdk.org Thu Sep 12 16:41:09 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Thu, 12 Sep 2024 16:41:09 GMT Subject: RFR: 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java [v2] In-Reply-To: References: Message-ID: On Thu, 12 Sep 2024 09:22:39 GMT, Manukumar V S wrote: >> Stabilized the test by disposing the frame at the end, adding an auto delay, called panel.getLocationOnScreen() in invokeAndWait(), formatting changes, etc >> And for better debugging, added captureScreen() for failure cases. >> >> Testing: >> Tested using mach5 in all available platforms and attached the link in bug as a comment. > > Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: > > Review comments fixed : Creating frame in EDT, adding robot.delay() and robot.waitForIdle(), formatting changes, etc Thank you, looks good, except for minor formatting issues. test/jdk/java/awt/dnd/DropActionChangeTest.java line 75: > 73: > 74: public static void main(String[] args) throws Exception { > 75: EventQueue.invokeAndWait(()->test = new DropActionChangeTest()); Suggestion: EventQueue.invokeAndWait(() -> test = new DropActionChangeTest()); test/jdk/java/awt/dnd/DropActionChangeTest.java line 105: > 103: System.err.println("FAILURE: wrong drop action:" > 104: + e.getDropAction()+", It should be " > 105: +DnDConstants.ACTION_MOVE); Suggestion: System.err.println("FAILURE: wrong drop action:" + e.getDropAction() + ", It should be " + DnDConstants.ACTION_MOVE); test/jdk/java/awt/dnd/DropActionChangeTest.java line 194: > 192: System.err.println("Test passed!"); > 193: } > 194: private static void disposeFrame() { Suggestion: } private static void disposeFrame() { test/jdk/java/awt/dnd/DropActionChangeTest.java line 202: > 200: } > 201: } > 202: private static void captureScreen(String str) { Suggestion: } private static void captureScreen(String str) { test/jdk/java/awt/dnd/DropActionChangeTest.java line 254: > 252: > 253: public static void doDrag(Robot robot, Point startPoint, Point endPoint) { > 254: robot.waitForIdle(); Suggestion: robot.waitForIdle(); ------------- Marked as reviewed by azvegint (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20951#pullrequestreview-2300862928 PR Review Comment: https://git.openjdk.org/jdk/pull/20951#discussion_r1757216344 PR Review Comment: https://git.openjdk.org/jdk/pull/20951#discussion_r1757222062 PR Review Comment: https://git.openjdk.org/jdk/pull/20951#discussion_r1757216752 PR Review Comment: https://git.openjdk.org/jdk/pull/20951#discussion_r1757217118 PR Review Comment: https://git.openjdk.org/jdk/pull/20951#discussion_r1757218970 From mvs at openjdk.org Thu Sep 12 17:00:18 2024 From: mvs at openjdk.org (Manukumar V S) Date: Thu, 12 Sep 2024 17:00:18 GMT Subject: RFR: 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java [v3] In-Reply-To: References: Message-ID: <7KdqjCBzai3gwunfQ_NKnXuAotj01EDih-ZAvSVIeF8=.068989e5-4c25-4de2-a723-cabb165a356e@github.com> > Stabilized the test by disposing the frame at the end, adding an auto delay, called panel.getLocationOnScreen() in invokeAndWait(), formatting changes, etc > And for better debugging, added captureScreen() for failure cases. > > Testing: > Tested using mach5 in all available platforms and attached the link in bug as a comment. Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: Review comments fixed : Minor formatting changes ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20951/files - new: https://git.openjdk.org/jdk/pull/20951/files/6238ba9b..b4758cd7 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20951&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20951&range=01-02 Stats: 24 lines in 1 file changed: 10 ins; 7 del; 7 mod Patch: https://git.openjdk.org/jdk/pull/20951.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20951/head:pull/20951 PR: https://git.openjdk.org/jdk/pull/20951 From prr at openjdk.org Thu Sep 12 22:37:49 2024 From: prr at openjdk.org (Phil Race) Date: Thu, 12 Sep 2024 22:37:49 GMT Subject: RFR: 8339883: Open source several AWT/2D related tests Message-ID: <_hbOe0ROqqQsG7hdhrGk28JVDNGP1yz2vKhVo3GDIxw=.c3bde19f-4f6e-45df-aee3-2832258ffaa9@github.com> This open sources a few AWT/2D regression tests. ------------- Commit messages: - 8339883 Changes: https://git.openjdk.org/jdk/pull/20977/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20977&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339883 Stats: 317 lines in 3 files changed: 317 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20977.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20977/head:pull/20977 PR: https://git.openjdk.org/jdk/pull/20977 From prr at openjdk.org Thu Sep 12 22:41:48 2024 From: prr at openjdk.org (Phil Race) Date: Thu, 12 Sep 2024 22:41:48 GMT Subject: RFR: 8339883: Open source several AWT/2D related tests [v2] In-Reply-To: <_hbOe0ROqqQsG7hdhrGk28JVDNGP1yz2vKhVo3GDIxw=.c3bde19f-4f6e-45df-aee3-2832258ffaa9@github.com> References: <_hbOe0ROqqQsG7hdhrGk28JVDNGP1yz2vKhVo3GDIxw=.c3bde19f-4f6e-45df-aee3-2832258ffaa9@github.com> Message-ID: > This open sources a few AWT/2D regression tests. Phil Race has updated the pull request incrementally with one additional commit since the last revision: 8339883 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20977/files - new: https://git.openjdk.org/jdk/pull/20977/files/10f1446b..b951746e Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20977&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20977&range=00-01 Stats: 2 lines in 2 files changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20977.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20977/head:pull/20977 PR: https://git.openjdk.org/jdk/pull/20977 From prr at openjdk.org Thu Sep 12 22:46:51 2024 From: prr at openjdk.org (Phil Race) Date: Thu, 12 Sep 2024 22:46:51 GMT Subject: RFR: 8339883: Open source several AWT/2D related tests [v3] In-Reply-To: <_hbOe0ROqqQsG7hdhrGk28JVDNGP1yz2vKhVo3GDIxw=.c3bde19f-4f6e-45df-aee3-2832258ffaa9@github.com> References: <_hbOe0ROqqQsG7hdhrGk28JVDNGP1yz2vKhVo3GDIxw=.c3bde19f-4f6e-45df-aee3-2832258ffaa9@github.com> Message-ID: > This open sources a few AWT/2D regression tests. Phil Race has updated the pull request incrementally with one additional commit since the last revision: 8339883 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20977/files - new: https://git.openjdk.org/jdk/pull/20977/files/b951746e..f0877662 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20977&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20977&range=01-02 Stats: 0 lines in 1 file changed: 0 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20977.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20977/head:pull/20977 PR: https://git.openjdk.org/jdk/pull/20977 From honkar at openjdk.org Thu Sep 12 22:57:05 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Thu, 12 Sep 2024 22:57:05 GMT Subject: RFR: 8339883: Open source several AWT/2D related tests [v3] In-Reply-To: References: <_hbOe0ROqqQsG7hdhrGk28JVDNGP1yz2vKhVo3GDIxw=.c3bde19f-4f6e-45df-aee3-2832258ffaa9@github.com> Message-ID: <2k3Nlm3UPgwo-KTBFv0M6LDJP6cOUwTQcCCB8KxKo68=.20b64493-0765-4db0-b759-d611eca2bd05@github.com> On Thu, 12 Sep 2024 22:46:51 GMT, Phil Race wrote: >> This open sources a few AWT/2D regression tests. > > Phil Race has updated the pull request incrementally with one additional commit since the last revision: > > 8339883 LGTM other than the unused import in Position.java test/jdk/java/awt/GraphicsConfiguration/Position.java line 37: > 35: */ > 36: > 37: import java.awt.Graphics; Unused import can be removed. ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20977#pullrequestreview-2301551955 PR Review Comment: https://git.openjdk.org/jdk/pull/20977#discussion_r1757684753 From azvegint at openjdk.org Thu Sep 12 23:08:11 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Thu, 12 Sep 2024 23:08:11 GMT Subject: Integrated: 8339794: Open source closed choice tests #1 In-Reply-To: <0EkumWajHuf3zkfG_ugg9ZkFl0NCwFjCmk-0iDea_7A=.058aa280-7e36-43cb-b66e-d5486caba5cb@github.com> References: <0EkumWajHuf3zkfG_ugg9ZkFl0NCwFjCmk-0iDea_7A=.058aa280-7e36-43cb-b66e-d5486caba5cb@github.com> Message-ID: On Tue, 10 Sep 2024 20:51:29 GMT, Alexander Zvegintsev wrote: > Few more tests open sourcing. > > Testing is green. This pull request has now been integrated. Changeset: 5e5942a2 Author: Alexander Zvegintsev URL: https://git.openjdk.org/jdk/commit/5e5942a282e14846404b68c65d43594d6b9226d9 Stats: 383 lines in 3 files changed: 383 ins; 0 del; 0 mod 8339794: Open source closed choice tests #1 Reviewed-by: jdv, prr ------------- PR: https://git.openjdk.org/jdk/pull/20941 From honkar at openjdk.org Thu Sep 12 23:23:05 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Thu, 12 Sep 2024 23:23:05 GMT Subject: RFR: 8339727: Open source several AWT focus tests - series 1 [v2] In-Reply-To: References: Message-ID: <7Bc48w8yzp0j4mKVDtWg4GllG_37vPt1QWThdNiYDQU=.aa575698-4086-4546-ad24-c1fe3531145b@github.com> On Thu, 12 Sep 2024 13:57:30 GMT, Prasanta Sadhukhan wrote: >> Open source few AWT focus tests > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Spacing LGTM ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20961#pullrequestreview-2301575624 From mvs at openjdk.org Fri Sep 13 02:11:11 2024 From: mvs at openjdk.org (Manukumar V S) Date: Fri, 13 Sep 2024 02:11:11 GMT Subject: RFR: 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java [v2] In-Reply-To: References: Message-ID: On Thu, 12 Sep 2024 16:38:03 GMT, Alexander Zvegintsev wrote: >> Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: >> >> Review comments fixed : Creating frame in EDT, adding robot.delay() and robot.waitForIdle(), formatting changes, etc > > Thank you, looks good, except for minor formatting issues. @azvegint I have made the formatting corrections suggested by you, can you please re-review the PR as the new process requires a re-review if any changes made after the approval. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20951#issuecomment-2347902966 From psadhukhan at openjdk.org Fri Sep 13 05:11:47 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 13 Sep 2024 05:11:47 GMT Subject: RFR: 8339639: Opensource few AWT PopupMenu tests Message-ID: OPensource few AWT PopupMenu tests ------------- Commit messages: - 8339639: Opensource few AWT PopupMenu tests Changes: https://git.openjdk.org/jdk/pull/20982/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20982&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339639 Stats: 360 lines in 3 files changed: 360 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20982.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20982/head:pull/20982 PR: https://git.openjdk.org/jdk/pull/20982 From duke at openjdk.org Fri Sep 13 09:05:11 2024 From: duke at openjdk.org (Karm Michal Babacek) Date: Fri, 13 Sep 2024 09:05:11 GMT Subject: RFR: 8336382: Fixes error reporting in loading AWT and fonts [v3] In-Reply-To: References: Message-ID: On Mon, 15 Jul 2024 19:11:38 GMT, Phil Race wrote: >> Karm Michal Babacek has updated the pull request incrementally with one additional commit since the last revision: >> >> Treats missing class as a fatal error > > There is nothing in this PR that I would accept. It should be withdrawn. ping @prrace ------------- PR Comment: https://git.openjdk.org/jdk/pull/20169#issuecomment-2348421391 From psadhukhan at openjdk.org Fri Sep 13 09:37:05 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 13 Sep 2024 09:37:05 GMT Subject: RFR: 8339883: Open source several AWT/2D related tests [v3] In-Reply-To: References: <_hbOe0ROqqQsG7hdhrGk28JVDNGP1yz2vKhVo3GDIxw=.c3bde19f-4f6e-45df-aee3-2832258ffaa9@github.com> Message-ID: <1KTjzs1pLa0N0UNMxjd_Z_pAJDJihf6dqzRME6QAd6Q=.cd9725e3-fd73-4bc5-9cec-6ceef46aa81d@github.com> On Thu, 12 Sep 2024 22:46:51 GMT, Phil Race wrote: >> This open sources a few AWT/2D regression tests. > > Phil Race has updated the pull request incrementally with one additional commit since the last revision: > > 8339883 Marked as reviewed by psadhukhan (Reviewer). test/jdk/java/awt/GraphicsConfiguration/NonDefaultGC.java line 31: > 29: * of windows with RGB stripes in according to the number of the > 30: * GraphicsConfigurations for each screen. It also displays the size of > 31: * the screen and the GraphicsConfiguration.toString(). Better to align the sentences after @summary tag words so that @tags can be on one column and other sentences do not encroach, similar to test/jdk/sun/java2d/pipe/DrawImageBgTest.java in this PR test/jdk/java/awt/GraphicsConfiguration/Position.java line 31: > 29: * The togglebutton shows and hides an empty frame on the second monitor. The > 30: * frame should be positioned at 0, 0 and is shown and hidden by clicking the > 31: * toggleButton. same here ------------- PR Review: https://git.openjdk.org/jdk/pull/20977#pullrequestreview-2302625489 PR Review Comment: https://git.openjdk.org/jdk/pull/20977#discussion_r1758527331 PR Review Comment: https://git.openjdk.org/jdk/pull/20977#discussion_r1758532670 From azvegint at openjdk.org Fri Sep 13 10:01:05 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 13 Sep 2024 10:01:05 GMT Subject: RFR: 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java [v2] In-Reply-To: References: Message-ID: On Thu, 12 Sep 2024 16:38:03 GMT, Alexander Zvegintsev wrote: >> Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: >> >> Review comments fixed : Creating frame in EDT, adding robot.delay() and robot.waitForIdle(), formatting changes, etc > > Thank you, looks good, except for minor formatting issues. > @azvegint I have made the formatting corrections suggested by you, can you please re-review the PR as the new process requires a re-review if any changes made after the approval. I saw it, and it's fine, I'll just give someone else more time to review it if they want to. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20951#issuecomment-2348545156 From duke at openjdk.org Fri Sep 13 10:13:42 2024 From: duke at openjdk.org (Daniel Gredler) Date: Fri, 13 Sep 2024 10:13:42 GMT Subject: RFR: 8339974: Graphics2D.drawString doesn't always work with Font derived from AffineTransform Message-ID: There is a bug in `TextLayout.getOutline(AffineTransform)`, where the transformation is applied too early (before the layout path applies its mapping). The most obvious error caused by this bug is that `Graphics2D.drawString(...)` fails to draw the string when using a rotated + scaled `AffineTransform` (see minimal test case in the bug report). There are two uses of `TextLayout.getOutline(AffineTransform)`: the first one, triggered via a simple `Graphics2D.drawString(...)` was the one I ran into; the second one requires the use of a transformed font with a `PSPrinterJob`. Both are broken. This PR includes two test classes verifying that both scenarios were broken before the fix and are working after the fix. Two points which might require some discussion: 1. I've changed the signature of method `TextLine.getOutline(AffineTransform)`, to just `TextLine.getOutline()`; I'm assuming this is OK since `TextLine` is a package-private class. 2. I've added a fast path in `TextLayout.getOutline(AffineTransform)` to transform the shape in place if it is a `GeneralPath` (it should usually be, and avoids an extra `Shape` copy vs. the current code, which makes no copy). A bit more complex, but efficient. ------------- Commit messages: - Fix TextLayout.getOutline(AffineTransform) Changes: https://git.openjdk.org/jdk/pull/20993/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20993&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339974 Stats: 347 lines in 4 files changed: 341 ins; 4 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20993.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20993/head:pull/20993 PR: https://git.openjdk.org/jdk/pull/20993 From psadhukhan at openjdk.org Fri Sep 13 11:26:12 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 13 Sep 2024 11:26:12 GMT Subject: Integrated: 8339727: Open source several AWT focus tests - series 1 In-Reply-To: References: Message-ID: On Thu, 12 Sep 2024 05:51:10 GMT, Prasanta Sadhukhan wrote: > Open source few AWT focus tests This pull request has now been integrated. Changeset: 358ff196 Author: Prasanta Sadhukhan URL: https://git.openjdk.org/jdk/commit/358ff196336407484b1b892f08936e9378701959 Stats: 649 lines in 5 files changed: 649 ins; 0 del; 0 mod 8339727: Open source several AWT focus tests - series 1 Reviewed-by: honkar ------------- PR: https://git.openjdk.org/jdk/pull/20961 From psadhukhan at openjdk.org Fri Sep 13 11:51:44 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 13 Sep 2024 11:51:44 GMT Subject: RFR: 8339842: Open source several AWT focus tests - series 2 Message-ID: Opensource few AWT focus tests ------------- Commit messages: - jcheck - 8339842: Open source several AWT focus tests - series 2 Changes: https://git.openjdk.org/jdk/pull/20996/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=20996&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339842 Stats: 701 lines in 4 files changed: 701 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20996.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20996/head:pull/20996 PR: https://git.openjdk.org/jdk/pull/20996 From azvegint at openjdk.org Fri Sep 13 12:08:07 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 13 Sep 2024 12:08:07 GMT Subject: RFR: 8339639: Opensource few AWT PopupMenu tests In-Reply-To: References: Message-ID: On Fri, 13 Sep 2024 05:07:26 GMT, Prasanta Sadhukhan wrote: > OPensource few AWT PopupMenu tests Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20982#pullrequestreview-2302945839 From duke at openjdk.org Fri Sep 13 14:41:48 2024 From: duke at openjdk.org (Daniel Gredler) Date: Fri, 13 Sep 2024 14:41:48 GMT Subject: RFR: 8339974: Graphics2D.drawString doesn't always work with Font derived from AffineTransform [v2] In-Reply-To: References: Message-ID: <8wAz3aLdxXQrWuQtLvRXEtJ7ODGOGsuDE2QW465A05k=.5ed6a47d-e07f-400d-9566-70e4f6ecb8b2@github.com> > There is a bug in `TextLayout.getOutline(AffineTransform)`, where the transformation is applied too early (before the layout path applies its mapping). The most obvious error caused by this bug is that `Graphics2D.drawString(...)` fails to draw the string when using a rotated + scaled `AffineTransform` (see minimal test case in the bug report). > > There are two uses of `TextLayout.getOutline(AffineTransform)`: the first one, triggered via a simple `Graphics2D.drawString(...)` was the one I ran into; the second one requires the use of a transformed font with a `PSPrinterJob`. Both are broken. This PR includes two test classes verifying that both scenarios were broken before the fix and are working after the fix. > > Two points which might require some discussion: > 1. I've changed the signature of method `TextLine.getOutline(AffineTransform)`, to just `TextLine.getOutline()`; I'm assuming this is OK since `TextLine` is a package-private class. > 2. I've added a fast path in `TextLayout.getOutline(AffineTransform)` to transform the shape in place if it is a `GeneralPath` (it should usually be, and avoids an extra `Shape` copy vs. the current code, which makes no copy). A bit more complex, but efficient. Daniel Gredler has updated the pull request incrementally with one additional commit since the last revision: Add bug ID and summary to test classes ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20993/files - new: https://git.openjdk.org/jdk/pull/20993/files/20e970a6..a6081981 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20993&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20993&range=00-01 Stats: 4 lines in 2 files changed: 4 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20993.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20993/head:pull/20993 PR: https://git.openjdk.org/jdk/pull/20993 From nbenalla at openjdk.org Fri Sep 13 15:08:39 2024 From: nbenalla at openjdk.org (Nizar Benalla) Date: Fri, 13 Sep 2024 15:08:39 GMT Subject: RFR: 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP Message-ID: Can I get a review for this doc-only change? I updated some links because the websites moved from HTTP to HTTPS. The redirects can cause some false-positives on tests. TIA ------------- Commit messages: - Update color.org and wapforum.org links to use HTTPS instead of HTTP - Update color.org and wapforum.org links to use HTTPS instead of HTTP Changes: https://git.openjdk.org/jdk/pull/21001/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21001&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339845 Stats: 9 lines in 5 files changed: 0 ins; 0 del; 9 mod Patch: https://git.openjdk.org/jdk/pull/21001.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21001/head:pull/21001 PR: https://git.openjdk.org/jdk/pull/21001 From prr at openjdk.org Fri Sep 13 18:55:28 2024 From: prr at openjdk.org (Phil Race) Date: Fri, 13 Sep 2024 18:55:28 GMT Subject: RFR: 8339883: Open source several AWT/2D related tests [v4] In-Reply-To: <_hbOe0ROqqQsG7hdhrGk28JVDNGP1yz2vKhVo3GDIxw=.c3bde19f-4f6e-45df-aee3-2832258ffaa9@github.com> References: <_hbOe0ROqqQsG7hdhrGk28JVDNGP1yz2vKhVo3GDIxw=.c3bde19f-4f6e-45df-aee3-2832258ffaa9@github.com> Message-ID: > This open sources a few AWT/2D regression tests. Phil Race has updated the pull request incrementally with one additional commit since the last revision: 8339883 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20977/files - new: https://git.openjdk.org/jdk/pull/20977/files/f0877662..648685d3 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20977&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20977&range=02-03 Stats: 13 lines in 2 files changed: 0 ins; 2 del; 11 mod Patch: https://git.openjdk.org/jdk/pull/20977.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20977/head:pull/20977 PR: https://git.openjdk.org/jdk/pull/20977 From honkar at openjdk.org Fri Sep 13 22:09:44 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Fri, 13 Sep 2024 22:09:44 GMT Subject: RFR: JDK-8339962 : Open source AWT TextField tests - Set1 Message-ID: Following test are open-sourced. 1. test/jdk/java/awt/Label/ContainerValidateTest.java - Automated 2. test/jdk/java/awt/TextField/SetEchoCharTest.java - Automated 3. test/jdk/java/awt/TextField/SetEchoCharWordOpsTest.java - PassFailJFrame manual test ------------- Commit messages: - open source awt tests Changes: https://git.openjdk.org/jdk/pull/21005/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21005&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339962 Stats: 438 lines in 3 files changed: 438 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21005.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21005/head:pull/21005 PR: https://git.openjdk.org/jdk/pull/21005 From prr at openjdk.org Fri Sep 13 22:59:12 2024 From: prr at openjdk.org (Phil Race) Date: Fri, 13 Sep 2024 22:59:12 GMT Subject: RFR: 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP In-Reply-To: References: Message-ID: On Fri, 13 Sep 2024 15:01:23 GMT, Nizar Benalla wrote: > Can I get a review for this doc-only change? I updated some links because the websites moved from HTTP to HTTPS. The redirects can cause some false-positives on tests. > > TIA Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21001#pullrequestreview-2304277071 From prr at openjdk.org Fri Sep 13 23:00:17 2024 From: prr at openjdk.org (Phil Race) Date: Fri, 13 Sep 2024 23:00:17 GMT Subject: RFR: 8339639: Opensource few AWT PopupMenu tests In-Reply-To: References: Message-ID: On Fri, 13 Sep 2024 05:07:26 GMT, Prasanta Sadhukhan wrote: > OPensource few AWT PopupMenu tests Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20982#pullrequestreview-2304277510 From duke at openjdk.org Fri Sep 13 23:02:22 2024 From: duke at openjdk.org (duke) Date: Fri, 13 Sep 2024 23:02:22 GMT Subject: RFR: 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java [v3] In-Reply-To: <7KdqjCBzai3gwunfQ_NKnXuAotj01EDih-ZAvSVIeF8=.068989e5-4c25-4de2-a723-cabb165a356e@github.com> References: <7KdqjCBzai3gwunfQ_NKnXuAotj01EDih-ZAvSVIeF8=.068989e5-4c25-4de2-a723-cabb165a356e@github.com> Message-ID: On Thu, 12 Sep 2024 17:00:18 GMT, Manukumar V S wrote: >> Stabilized the test by disposing the frame at the end, adding an auto delay, called panel.getLocationOnScreen() in invokeAndWait(), formatting changes, etc >> And for better debugging, added captureScreen() for failure cases. >> >> Testing: >> Tested using mach5 in all available platforms and attached the link in bug as a comment. > > Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: > > Review comments fixed : Minor formatting changes @openjdk[bot] Your change (at version b4758cd7c35dd15cb6bc1cf42fc64c455dca3743) is now ready to be sponsored by a Committer. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20951#issuecomment-2350650463 From prr at openjdk.org Fri Sep 13 23:02:22 2024 From: prr at openjdk.org (Phil Race) Date: Fri, 13 Sep 2024 23:02:22 GMT Subject: RFR: 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java [v3] In-Reply-To: <7KdqjCBzai3gwunfQ_NKnXuAotj01EDih-ZAvSVIeF8=.068989e5-4c25-4de2-a723-cabb165a356e@github.com> References: <7KdqjCBzai3gwunfQ_NKnXuAotj01EDih-ZAvSVIeF8=.068989e5-4c25-4de2-a723-cabb165a356e@github.com> Message-ID: <75mc8c9gFsy-MUDXJilKtV63OXvq0sW9ulwH6VmkYPA=.b33136be-aac8-4c95-8537-99c23f7ffffe@github.com> On Thu, 12 Sep 2024 17:00:18 GMT, Manukumar V S wrote: >> Stabilized the test by disposing the frame at the end, adding an auto delay, called panel.getLocationOnScreen() in invokeAndWait(), formatting changes, etc >> And for better debugging, added captureScreen() for failure cases. >> >> Testing: >> Tested using mach5 in all available platforms and attached the link in bug as a comment. > > Manukumar V S has updated the pull request incrementally with one additional commit since the last revision: > > Review comments fixed : Minor formatting changes Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20951#pullrequestreview-2304278197 From prr at openjdk.org Fri Sep 13 23:07:18 2024 From: prr at openjdk.org (Phil Race) Date: Fri, 13 Sep 2024 23:07:18 GMT Subject: RFR: 8339842: Open source several AWT focus tests - series 2 In-Reply-To: References: Message-ID: <8uTUDdmYD-1-MpK50bjuGIqbWm-R0F0q9S1kdHz9Dbs=.0ed6cfa7-74a7-4191-86ac-fac2444388b4@github.com> On Fri, 13 Sep 2024 11:41:52 GMT, Prasanta Sadhukhan wrote: > Opensource few AWT focus tests Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20996#pullrequestreview-2304286115 From mvs at openjdk.org Sat Sep 14 05:12:08 2024 From: mvs at openjdk.org (Manukumar V S) Date: Sat, 14 Sep 2024 05:12:08 GMT Subject: Integrated: 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java In-Reply-To: References: Message-ID: On Wed, 11 Sep 2024 14:37:12 GMT, Manukumar V S wrote: > Stabilized the test by disposing the frame at the end, adding an auto delay, called panel.getLocationOnScreen() in invokeAndWait(), formatting changes, etc > And for better debugging, added captureScreen() for failure cases. > > Testing: > Tested using mach5 in all available platforms and attached the link in bug as a comment. This pull request has now been integrated. Changeset: fa502ecd Author: Manukumar V S URL: https://git.openjdk.org/jdk/commit/fa502ecd2d1040ee2fe26d0ac5dd547379a0ade7 Stats: 74 lines in 1 file changed: 40 ins; 17 del; 17 mod 8339943: Frame not disposed in java/awt/dnd/DropActionChangeTest.java Reviewed-by: prr, azvegint ------------- PR: https://git.openjdk.org/jdk/pull/20951 From duke at openjdk.org Sat Sep 14 17:24:02 2024 From: duke at openjdk.org (Abdelhak Zaaim) Date: Sat, 14 Sep 2024 17:24:02 GMT Subject: RFR: 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP In-Reply-To: References: Message-ID: <_uzari_nPRkF8Y9kV2S1BDWWq1mjuIAfUjvEriHMiWA=.da35b9af-59bc-4a5f-9e97-c31bc1715e85@github.com> On Fri, 13 Sep 2024 15:01:23 GMT, Nizar Benalla wrote: > Can I get a review for this doc-only change? I updated some links because the websites moved from HTTP to HTTPS. The redirects can cause some false-positives on tests. > > TIA The update to HTTPS is appreciated for consistency, though not strictly necessary since HTTP links already redirect to HTTPS. Please ensure all updated links function as expected and align with the project standards. ------------- PR Review: https://git.openjdk.org/jdk/pull/21001#pullrequestreview-2304447218 From honkar at openjdk.org Sun Sep 15 02:03:04 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Sun, 15 Sep 2024 02:03:04 GMT Subject: RFR: 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP In-Reply-To: References: Message-ID: On Fri, 13 Sep 2024 15:01:23 GMT, Nizar Benalla wrote: > Can I get a review for this doc-only change? I updated some links because the websites moved from HTTP to HTTPS. The redirects can cause some false-positives on tests. > > TIA src/java.desktop/share/classes/java/awt/image/ColorConvertOp.java line 693: > 691: * bytes here. > 692: * > 693: * See https://www.color.org/ICC1v42_2006-05.pdf, section 7.2.15. @prrace I wanted to clarify regarding current ICC Doc links which point to older ICC Specification document. Do they need to be updated to the latest one? https://www.color.org/specification/ICC.1-2022-05.pdf src/java.desktop/share/classes/javax/imageio/plugins/tiff/BaselineTIFFTagSet.java line 1011: > 1009: * Constant specifying the "ICC Profile" tag. > 1010: * > 1011: * @see ICC Specification, section B.4: Embedding ICC profiles in TIFF files Same here ? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21001#discussion_r1759941444 PR Review Comment: https://git.openjdk.org/jdk/pull/21001#discussion_r1759941591 From honkar at openjdk.org Mon Sep 16 02:25:26 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Mon, 16 Sep 2024 02:25:26 GMT Subject: RFR: JDK-8339962 : Open source AWT TextField tests - Set1 [v2] In-Reply-To: References: Message-ID: > Following test are open-sourced. > > 1. test/jdk/java/awt/Label/ContainerValidateTest.java - Automated > 2. test/jdk/java/awt/TextField/SetEchoCharTest.java - Automated > 3. test/jdk/java/awt/TextField/SetEchoCharWordOpsTest.java - PassFailJFrame manual test Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: formatting ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21005/files - new: https://git.openjdk.org/jdk/pull/21005/files/818df2ab..fa890150 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21005&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21005&range=00-01 Stats: 6 lines in 1 file changed: 0 ins; 1 del; 5 mod Patch: https://git.openjdk.org/jdk/pull/21005.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21005/head:pull/21005 PR: https://git.openjdk.org/jdk/pull/21005 From psadhukhan at openjdk.org Mon Sep 16 03:52:10 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Mon, 16 Sep 2024 03:52:10 GMT Subject: Integrated: 8339639: Opensource few AWT PopupMenu tests In-Reply-To: References: Message-ID: <8dbLagFkKaaIdqowCjFyxFCfAZ0b6CdAdw2dpx85S4g=.b3e7502f-daad-40e3-b01e-7c8ae991170c@github.com> On Fri, 13 Sep 2024 05:07:26 GMT, Prasanta Sadhukhan wrote: > OPensource few AWT PopupMenu tests This pull request has now been integrated. Changeset: a0794e0a Author: Prasanta Sadhukhan URL: https://git.openjdk.org/jdk/commit/a0794e0a054c5e7ed051efa6362726cdd7598255 Stats: 360 lines in 3 files changed: 360 ins; 0 del; 0 mod 8339639: Opensource few AWT PopupMenu tests Reviewed-by: azvegint, prr ------------- PR: https://git.openjdk.org/jdk/pull/20982 From psadhukhan at openjdk.org Mon Sep 16 04:21:21 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Mon, 16 Sep 2024 04:21:21 GMT Subject: RFR: 8340015: Open source several AWT focus tests - series 7 Message-ID: Opensource few AWT focus tests ------------- Commit messages: - 8340015: Open source several AWT focus tests - series 7 - 8340015: Open source several AWT focus tests - series 7 Changes: https://git.openjdk.org/jdk/pull/21008/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21008&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340015 Stats: 272 lines in 4 files changed: 272 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21008.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21008/head:pull/21008 PR: https://git.openjdk.org/jdk/pull/21008 From psadhukhan at openjdk.org Mon Sep 16 05:45:15 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Mon, 16 Sep 2024 05:45:15 GMT Subject: Integrated: 8339842: Open source several AWT focus tests - series 2 In-Reply-To: References: Message-ID: On Fri, 13 Sep 2024 11:41:52 GMT, Prasanta Sadhukhan wrote: > Opensource few AWT focus tests This pull request has now been integrated. Changeset: 4b790637 Author: Prasanta Sadhukhan URL: https://git.openjdk.org/jdk/commit/4b7906375b4bd11a480665110561180825c2dd9c Stats: 701 lines in 4 files changed: 701 ins; 0 del; 0 mod 8339842: Open source several AWT focus tests - series 2 Reviewed-by: prr ------------- PR: https://git.openjdk.org/jdk/pull/20996 From psadhukhan at openjdk.org Mon Sep 16 05:47:06 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Mon, 16 Sep 2024 05:47:06 GMT Subject: RFR: 8339883: Open source several AWT/2D related tests [v4] In-Reply-To: References: <_hbOe0ROqqQsG7hdhrGk28JVDNGP1yz2vKhVo3GDIxw=.c3bde19f-4f6e-45df-aee3-2832258ffaa9@github.com> Message-ID: On Fri, 13 Sep 2024 18:55:28 GMT, Phil Race wrote: >> This open sources a few AWT/2D regression tests. > > Phil Race has updated the pull request incrementally with one additional commit since the last revision: > > 8339883 Marked as reviewed by psadhukhan (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20977#pullrequestreview-2305772850 From aivanov at openjdk.org Mon Sep 16 09:59:17 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 16 Sep 2024 09:59:17 GMT Subject: RFR: 8340007: Refactor KeyEvent/FunctionKeyTest.java Message-ID: This changeset refactors `java/awt/event/KeyEvent/FunctionKeyTest.java`. Key changes: - Use `CyclicBarrier` to verify whether a key is pressed and released; - Use `CountDownLatch` for frame activation; - Ensure thread-safety for keeping thrown exceptions. Other changes: - Made `FunctionKeyTester` a nested class inside `FunctionKeyTest`; - Used constants for the key events rather than magic numbers. I ran the updated test a few times with `JTREG=REPEAT_COUNT=20`, the test has passed. The updated test executes somewhat quicker than the old one. @azvegint, you may want to take a look. ------------- Commit messages: - 8340007: Refactor KeyEvent/FunctionKeyTest.java Changes: https://git.openjdk.org/jdk/pull/21013/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21013&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340007 Stats: 114 lines in 1 file changed: 62 ins; 15 del; 37 mod Patch: https://git.openjdk.org/jdk/pull/21013.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21013/head:pull/21013 PR: https://git.openjdk.org/jdk/pull/21013 From aivanov at openjdk.org Mon Sep 16 10:10:05 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 16 Sep 2024 10:10:05 GMT Subject: RFR: 8340007: Refactor KeyEvent/FunctionKeyTest.java In-Reply-To: References: Message-ID: On Mon, 16 Sep 2024 09:55:19 GMT, Alexey Ivanov wrote: > This changeset refactors `java/awt/event/KeyEvent/FunctionKeyTest.java`. > > Key changes: > > - Use `CyclicBarrier` to verify whether a key is pressed and released; > - Use `CountDownLatch` for frame activation; > - Ensure thread-safety for keeping thrown exceptions. > > Other changes: > > - Made `FunctionKeyTester` a nested class inside `FunctionKeyTest`; > - Used constants for the key events rather than magic numbers. > > I ran the updated test a few times with `JTREG=REPEAT_COUNT=20`, the test has passed. > > The updated test executes somewhat quicker than the old one. > > @azvegint, you may want to take a look. test/jdk/java/awt/event/KeyEvent/FunctionKeyTest.java line 70: > 68: public static void main(String[] args) throws Exception { > 69: robot = new Robot(); > 70: robot.setAutoWaitForIdle(true); This makes the updated test run slower because the barriers block EDT for a short while until the two threads ? EDT and main thread ? arrive to the same point. `robot.waitForIdle` blocks the main thread from arriving to the barrier and *releasing EDT*. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21013#discussion_r1760867438 From aivanov at openjdk.org Mon Sep 16 11:41:10 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 16 Sep 2024 11:41:10 GMT Subject: RFR: 8339561: The test/jdk/java/awt/Paint/ListRepaint.java may fail after JDK-8327401 [v3] In-Reply-To: References: Message-ID: On Mon, 9 Sep 2024 19:30:35 GMT, Alexey Ivanov wrote: >> Sergey Bylokhov has updated the pull request incrementally with one additional commit since the last revision: >> >> Update bug4490179.java > > test/jdk/java/awt/List/KeyEventsTest/KeyEventsTest.java line 53: > >> 51: >> 52: public class KeyEventsTest { >> 53: private volatile TestState currentState; > > I'd rather not declare it a `volatile`. It could give a false impression of being thread-safe but it is not. The `volatile` modifier has a meaning only when it's written and read subsequently. If the reference doesn't change, it has no effect on the visibility of the internal object state. > > The value is assigned to `currentState` while holding a lock `LOCK`. > > At the same time, `currentState.setAction(true)` is called without any synchronisation and adding `volatile` won't make the change of the state thread-safe. Submitted [JDK-8340196](https://bugs.openjdk.org/browse/JDK-8340196): _j.a/List/KeyEventsTest/KeyEventsTest: TestState currentState is not thread-safe_. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20861#discussion_r1760988001 From honkar at openjdk.org Mon Sep 16 19:18:43 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Mon, 16 Sep 2024 19:18:43 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame builder pattern Message-ID: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> `positionTestUI()` option is added to PassFailJFrame (PFJ). With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code per test UI requirements. Usage: PassFailJFrame.builder() .title("Test Instructions") .instructions(INSTRUCTIONS) .rows((int) INSTRUCTIONS.lines().count() + 3) .columns(30) .testUI() .positionTestUI() .build() .awaitAndCheck(); where positionMultiTestUI is the implementation for position of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` ------------- Commit messages: - add positionTestUI() to PFJ builder pattern Changes: https://git.openjdk.org/jdk/pull/21023/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21023&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340210 Stats: 29 lines in 1 file changed: 29 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21023.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21023/head:pull/21023 PR: https://git.openjdk.org/jdk/pull/21023 From aivanov at openjdk.org Mon Sep 16 19:22:08 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 16 Sep 2024 19:22:08 GMT Subject: RFR: 8337287: Update image in javax.swing.text.Document.insert In-Reply-To: References: Message-ID: On Sat, 24 Aug 2024 00:11:14 GMT, Sergey Bylokhov wrote: > Just curious why the chars are not in the middle of the boxes? They're aligned according to CSS rules: text-anchor: middle; dominant-baseline: middle; The text is positioned in the middle of the box -0.5 pixels. However, I agree the text looks visually unbalanced. Indeed, at 200% scale and Arial font, there are 4 pixels on top of ?T? and ?h?, but there are 8 pixels on the bottom of ?q?. If I use Calibri font, the values are 8 and 9 pixels correspondingly. So it depends on the font used. The situation is similar on macOS. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20376#issuecomment-2353728939 From aivanov at openjdk.org Mon Sep 16 19:31:09 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 16 Sep 2024 19:31:09 GMT Subject: RFR: 8337287: Update image in javax.swing.text.Document.insert In-Reply-To: References: Message-ID: On Mon, 16 Sep 2024 19:19:56 GMT, Alexey Ivanov wrote: > The text is positioned in the middle of the box -0.5 pixels. Moving the text position by 0.5 seems to help, and the values become equal: 7 on either side. This needs to be done for the image in `remove` too, so I'd rather do that separately, at a later time. At this time, the diagrams for `insertString` and `remove` look the same. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20376#issuecomment-2353743533 From prr at openjdk.org Mon Sep 16 19:31:15 2024 From: prr at openjdk.org (Phil Race) Date: Mon, 16 Sep 2024 19:31:15 GMT Subject: Integrated: 8339883: Open source several AWT/2D related tests In-Reply-To: <_hbOe0ROqqQsG7hdhrGk28JVDNGP1yz2vKhVo3GDIxw=.c3bde19f-4f6e-45df-aee3-2832258ffaa9@github.com> References: <_hbOe0ROqqQsG7hdhrGk28JVDNGP1yz2vKhVo3GDIxw=.c3bde19f-4f6e-45df-aee3-2832258ffaa9@github.com> Message-ID: On Thu, 12 Sep 2024 22:31:04 GMT, Phil Race wrote: > This open sources a few AWT/2D regression tests. This pull request has now been integrated. Changeset: b26645f6 Author: Phil Race URL: https://git.openjdk.org/jdk/commit/b26645f64bb6dd3efafaceb92bedeaf8f93906e3 Stats: 315 lines in 4 files changed: 315 ins; 0 del; 0 mod 8339883: Open source several AWT/2D related tests Reviewed-by: psadhukhan, honkar ------------- PR: https://git.openjdk.org/jdk/pull/20977 From prr at openjdk.org Mon Sep 16 19:32:04 2024 From: prr at openjdk.org (Phil Race) Date: Mon, 16 Sep 2024 19:32:04 GMT Subject: RFR: JDK-8339962 : Open source AWT TextField tests - Set1 [v2] In-Reply-To: References: Message-ID: On Mon, 16 Sep 2024 02:25:26 GMT, Harshitha Onkar wrote: >> Following test are open-sourced. >> >> 1. test/jdk/java/awt/Label/ContainerValidateTest.java - Automated >> 2. test/jdk/java/awt/TextField/SetEchoCharTest.java - Automated >> 3. test/jdk/java/awt/TextField/SetEchoCharWordOpsTest.java - PassFailJFrame manual test > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > formatting Marked as reviewed by prr (Reviewer). test/jdk/java/awt/TextField/SetEchoCharWordOpsTest.java line 34: > 32: * @test > 33: * @bug 6191897 > 34: * @summary Verifies that ctrl+left/right does not move word-by-word in a TexField TexField -> TextField. ------------- PR Review: https://git.openjdk.org/jdk/pull/21005#pullrequestreview-2307597795 PR Review Comment: https://git.openjdk.org/jdk/pull/21005#discussion_r1761766839 From prr at openjdk.org Mon Sep 16 19:33:05 2024 From: prr at openjdk.org (Phil Race) Date: Mon, 16 Sep 2024 19:33:05 GMT Subject: RFR: 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP In-Reply-To: References: Message-ID: On Sun, 15 Sep 2024 01:56:16 GMT, Harshitha Onkar wrote: >> Can I get a review for this doc-only change? I updated some links because the websites moved from HTTP to HTTPS. The redirects can cause some false-positives on tests. >> >> TIA > > src/java.desktop/share/classes/java/awt/image/ColorConvertOp.java line 693: > >> 691: * bytes here. >> 692: * >> 693: * See https://www.color.org/ICC1v42_2006-05.pdf, section 7.2.15. > > @prrace I wanted to clarify if the ICC Specification Doc links need to be updated to the latest one? > https://www.color.org/specification/ICC.1-2022-05.pdf That would be out of scope for this. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21001#discussion_r1761768091 From aivanov at openjdk.org Mon Sep 16 19:44:04 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 16 Sep 2024 19:44:04 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame builder pattern In-Reply-To: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: On Mon, 16 Sep 2024 19:11:59 GMT, Harshitha Onkar wrote: > `positionTestUI()` option is added to PassFailJFrame (PFJ). > > With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. > > Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code per test UI requirements. > > Usage: > > PassFailJFrame.builder() > .title("Test Instructions") > .instructions(INSTRUCTIONS) > .rows((int) INSTRUCTIONS.lines().count() + 3) > .columns(30) > .testUI() > .positionTestUI() > .build() > .awaitAndCheck(); > > where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` > > Few examples of custom testUI positioning implementation using positionTestUI are demonstrated here: > **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** Looks good to me. It was previously discussed in #15665 when I added `testUI`. The interface and the field in the builder were defined but there was no way to pass an implementation of `PositionWindows`. > Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code per test UI requirements. There's an enhancement [JDK-8317116](https://bugs.openjdk.org/browse/JDK-8317116): _Provide layouts for multiple test UI in `PassFailJFrame`_ to provide a set of common layouts for tests to re-use. It would avoid code duplication for the most common layouts like columns or rows to the right or bottom of the instruction UI. ------------- Marked as reviewed by aivanov (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21023#pullrequestreview-2307616880 From honkar at openjdk.org Mon Sep 16 19:45:04 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Mon, 16 Sep 2024 19:45:04 GMT Subject: RFR: 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP In-Reply-To: References: Message-ID: On Fri, 13 Sep 2024 15:01:23 GMT, Nizar Benalla wrote: > Can I get a review for this doc-only change? I updated some links because the websites moved from HTTP to HTTPS. The redirects can cause some false-positives on tests. > > TIA Marked as reviewed by honkar (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21001#pullrequestreview-2307620748 From honkar at openjdk.org Mon Sep 16 21:03:04 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Mon, 16 Sep 2024 21:03:04 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder In-Reply-To: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: On Mon, 16 Sep 2024 19:11:59 GMT, Harshitha Onkar wrote: > `positionTestUI()` option is added to PassFailJFrame (PFJ). > > With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. > > Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code per test UI requirements. > > Usage: > > PassFailJFrame.builder() > .title("Test Instructions") > .instructions(INSTRUCTIONS) > .rows(int) > .columns(int) > .testUI() > .positionTestUI() > .build() > .awaitAndCheck(); > > where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` > > @aivanov-jdk has demonstrated custom test UI positioning in this PR: > **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** > There's an enhancement [JDK-8317116](https://bugs.openjdk.org/browse/JDK-8317116): Provide layouts for multiple test UI in PassFailJFrame to provide a set of common layouts for tests to re-use. It would avoid code duplication for the most common layouts like columns or rows to the right or bottom of the instruction UI. Update PR description with the PR link related to JDK-8317116 in case anyone wants to explore custom positioning of multiple UIs. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21023#issuecomment-2354024837 From honkar at openjdk.org Mon Sep 16 21:38:36 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Mon, 16 Sep 2024 21:38:36 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v2] In-Reply-To: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: > `positionTestUI()` option is added to PassFailJFrame (PFJ). > > With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. > > Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code per test UI requirements. > > Usage: > > PassFailJFrame.builder() > .title("Test Instructions") > .instructions(INSTRUCTIONS) > .rows(int) > .columns(int) > .testUI() > .positionTestUI() > .build() > .awaitAndCheck(); > > where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` > > @aivanov-jdk has demonstrated custom test UI positioning in this PR: > **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: removed errorenous check ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21023/files - new: https://git.openjdk.org/jdk/pull/21023/files/081b3fe1..5a331fd6 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21023&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21023&range=00-01 Stats: 5 lines in 1 file changed: 0 ins; 5 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21023.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21023/head:pull/21023 PR: https://git.openjdk.org/jdk/pull/21023 From honkar at openjdk.org Mon Sep 16 21:38:36 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Mon, 16 Sep 2024 21:38:36 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v2] In-Reply-To: References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: On Mon, 16 Sep 2024 21:31:58 GMT, Harshitha Onkar wrote: >> `positionTestUI()` option is added to PassFailJFrame (PFJ). >> >> With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. >> >> Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code per test UI requirements. >> >> Usage: >> >> PassFailJFrame.builder() >> .title("Test Instructions") >> .instructions(INSTRUCTIONS) >> .rows(int) >> .columns(int) >> .testUI() >> .positionTestUI() >> .build() >> .awaitAndCheck(); >> >> where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` >> >> @aivanov-jdk has demonstrated custom test UI positioning in this PR: >> **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > removed errorenous check test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 1277: > 1275: + "nor a list of test windows " > 1276: + "has been provided"); > 1277: } @aivanov-jdk Running into exception when this check is added here. I believe this check needs to be done after `positionWindows` is assigned. And since this check is already in-place in [validate()](https://github.com/openjdk/jdk/blob/418bb42b95b177f5f31f756054d0dd83740c6686/test/jdk/java/awt/regtesthelpers/PassFailJFrame.java#L1475C1-L1479C18) , I'm removing it from here. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21023#discussion_r1761989555 From djgredler at gmail.com Mon Sep 16 22:51:12 2024 From: djgredler at gmail.com (Daniel Gredler) Date: Tue, 17 Sep 2024 00:51:12 +0200 Subject: Graphics2D.drawString() fails with Font derived from rotated + scaled AffineTransform In-Reply-To: References: Message-ID: Hi all, A bug number was issued for this issue [1], and I've created the corresponding PR [2]. Can a couple of reviewers spend a few cycles reviewing it? The fix is relatively simple, I think the main questions are more stylistic / cultural (simplicity vs. performance, compatibility constraints). Thanks! Daniel [1] https://bugs.openjdk.org/browse/JDK-8339974 [2] https://github.com/openjdk/jdk/pull/20993 On Tue, Sep 10, 2024 at 1:56?AM Daniel Gredler wrote: > Hi all, > > I've done a little more digging, and there is indeed a deeper bug in > TextLayout.getOutline(AffineTransform), where the transformation is applied > too early (before the layout path applies its mapping). > > There are two uses of TextLayout.getOutline(AffineTransform): the first > one, triggered via a simple Graphics2D.drawString( ) was the one I ran > into; the second one requires the use of a transformed font with a > PSPrinterJob. Both are broken, so it doesn't really make sense to work > around the TextLayout issue for the first scenario, but leave the second > scenario broken. > > The deeper fix, including two test classes verifying that both scenarios > were broken and now work correctly, is available on GitHub [1]. I plan to > submit a PR as soon as I have a final bug ID from my web bug submission. > > Two points I'd like some feedback on: > 1. I've changed the signature of method > TextLine.getOutline(AffineTransform), to just TextLine.getOutline( ); I'm > assuming this is OK since TextLine is a package-private class? > 2. I've added a fast path in TextLayout.getOutline(AffineTransform) to > transform the shape in place if it is a GeneralPath (it should usually be, > and avoids an extra Shape copy vs. the current code); does this look OK? Or > should the code be kept completely generic and a copy always made? I had a > look at just changing the variable type from Shape to GeneralPath, but the > change started to cascade into a few other classes and I pulled the plug. > > Take care, > > Daniel > > [1] > https://github.com/openjdk/jdk/compare/master...gredler:jdk:draw-string-bug-2 > > > > On Thu, Sep 5, 2024 at 8:30?PM Daniel Gredler wrote: > >> Hi all, >> >> I've run into a bug [1] in the drawing of strings via >> Graphics2D.drawString(), when used with a Font derived from a rotated + >> scaled AffineTransform. If the AffineTransform scaling is small, the text >> draws correctly. But if the scale is too large, the text does not draw. [3] >> >> It looks like it's an effect of the OutlineTextRenderer.THRESHHOLD; text >> larger than this threshold is sent to the OutlineTextRenderer and fails to >> draw. The fix [2] seems to be to apply the position translation >> transformation *after* the text outline shape is created, rather than >> passing it into TextLayout.getOutline(). However, I do not know if this is >> the correct fix, or if it is just a workaround to a deeper issue in >> TextLayout.getOutline(), which in theory might need to wait to apply the >> provided translation until after the layout path has had a chance to map to >> user space. >> >> Can someone familiar with this code comment on whether the proposed fix >> is the correct fix, or whether deeper surgery is needed in >> TextLayout.getOutline()? >> >> My other small worry with the current fix [2] is that it creates an extra >> copy of the Shape object, so it's going to allocate a bit more memory than >> the current implementation. Not sure if there's a better way to update the >> Shape in-place. >> >> Take care, >> >> Daniel >> >> --- >> >> [1] Oracle internal review ID 9077538, no public bug ID yet >> [2] >> https://github.com/openjdk/jdk/compare/master...gredler:jdk:draw-string-bug >> [3] >> import java.awt.Color; >> import java.awt.Font; >> import java.awt.Graphics2D; >> import java.awt.geom.AffineTransform; >> import java.awt.image.BufferedImage; >> import java.io.File; >> >> import javax.imageio.ImageIO; >> >> /** >> *

The "TEST 2" text does not draw. NOTE: Reducing the AffineTransform >> scale >> * from 12 to 10 seems to allow it to draw?!? >> * >> *

Oracle internal review ID : 9077538 >> */ >> public class DrawStringTest { >> >> public static void main(String[] args) throws Exception { >> >> AffineTransform at = AffineTransform.getRotateInstance(3 * >> Math.PI / 2); >> at.scale(12, 12); >> >> Font font1 = new Font("SansSerif", Font.PLAIN, 10); >> Font font2 = font1.deriveFont(at); >> >> BufferedImage image = new BufferedImage(500, 500, >> BufferedImage.TYPE_BYTE_GRAY); >> Graphics2D g2d = image.createGraphics(); >> g2d.setColor(Color.WHITE); >> g2d.fillRect(0, 0, image.getWidth(), image.getHeight()); >> g2d.setColor(Color.BLACK); >> g2d.setFont(font1); >> g2d.drawString("TEST 1", 200, 400); // draws text >> g2d.setFont(font2); >> g2d.drawString("TEST 2", 200, 400); // does not draw text >> g2d.dispose(); >> >> ImageIO.write(image, "png", new File("test.png")); >> } >> >> } >> >> -------------- next part -------------- An HTML attachment was scrubbed... URL: From honkar at openjdk.org Mon Sep 16 22:59:35 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Mon, 16 Sep 2024 22:59:35 GMT Subject: RFR: JDK-8339962 : Open source AWT TextField tests - Set1 [v3] In-Reply-To: References: Message-ID: > Following test are open-sourced. > > 1. test/jdk/java/awt/Label/ContainerValidateTest.java - Automated > 2. test/jdk/java/awt/TextField/SetEchoCharTest.java - Automated > 3. test/jdk/java/awt/TextField/SetEchoCharWordOpsTest.java - PassFailJFrame manual test Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: typo fix ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21005/files - new: https://git.openjdk.org/jdk/pull/21005/files/fa890150..d3711cb2 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21005&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21005&range=01-02 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21005.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21005/head:pull/21005 PR: https://git.openjdk.org/jdk/pull/21005 From kizune at openjdk.org Mon Sep 16 23:20:26 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Mon, 16 Sep 2024 23:20:26 GMT Subject: RFR: 8339902: Open source couple TextField related tests Message-ID: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Clean up and open source five TextField related tests: java/awt/TextField/CaretPositionTest; java/awt/TextField/SetBoundsTest; java/awt/TextField/SetEchoCharTest4; java/awt/TextField/SetPasswordTest; java/awt/TextField/ZeroEchoCharTest ------------- Commit messages: - 8339902: Open source couple TextField related tests Changes: https://git.openjdk.org/jdk/pull/21026/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21026&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339902 Stats: 527 lines in 5 files changed: 527 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21026.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21026/head:pull/21026 PR: https://git.openjdk.org/jdk/pull/21026 From honkar at openjdk.org Mon Sep 16 23:28:05 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Mon, 16 Sep 2024 23:28:05 GMT Subject: RFR: 8339902: Open source couple TextField related tests In-Reply-To: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: On Mon, 16 Sep 2024 23:02:58 GMT, Alexander Zuev wrote: > Clean up and open source five TextField related tests: > java/awt/TextField/CaretPositionTest; > java/awt/TextField/SetBoundsTest; > java/awt/TextField/SetEchoCharTest4; > java/awt/TextField/SetPasswordTest; > java/awt/TextField/ZeroEchoCharTest Changes requested by honkar (Reviewer). test/jdk/java/awt/TextField/CaretPositionTest/CaretPositionTest.java line 51: > 49: private Dimension size; > 50: String text = "12 45 789"; > 51: private static int position = -1; Since position var is accessed in 2 different threads, should it be changed to volatile? test/jdk/java/awt/TextField/CaretPositionTest/CaretPositionTest.java line 60: > 58: test.test(); > 59: if (position != 9) { > 60: System.err.println("Caret position should be at the end of the string"); Should be throw new RuntimeException("Caret position should be at the end of the string") ?? ------------- PR Review: https://git.openjdk.org/jdk/pull/21026#pullrequestreview-2307988198 PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762076251 PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762076497 From honkar at openjdk.org Mon Sep 16 23:38:05 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Mon, 16 Sep 2024 23:38:05 GMT Subject: RFR: 8339902: Open source couple TextField related tests In-Reply-To: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: On Mon, 16 Sep 2024 23:02:58 GMT, Alexander Zuev wrote: > Clean up and open source five TextField related tests: > java/awt/TextField/CaretPositionTest; > java/awt/TextField/SetBoundsTest; > java/awt/TextField/SetEchoCharTest4; > java/awt/TextField/SetPasswordTest; > java/awt/TextField/ZeroEchoCharTest Changes requested by honkar (Reviewer). Changes requested by honkar (Reviewer). test/jdk/java/awt/TextField/CaretPositionTest/CaretPositionTest.java line 53: > 51: private static int position = -1; > 52: > 53: public static void main(String[] args) throws InterruptedException, Can be simplified to throw generic Exception Suggestion: public static void main(String[] args) throws Exception test/jdk/java/awt/TextField/CaretPositionTest/CaretPositionTest.java line 80: > 78: } > 79: > 80: public void test() throws AWTException, InterruptedException, Suggestion: public void test() throws Exception, test/jdk/java/awt/TextField/SetBoundsTest/SetBoundsTest.java line 39: > 37: /* > 38: * @test > 39: * @bug 6198290, 6277332 Test fails due to comma between bugIDs - Invalid or unrecognized bugid: 6198290 test/jdk/java/awt/TextField/SetBoundsTest/SetBoundsTest.java line 41: > 39: * @bug 6198290, 6277332 > 40: * @summary TextField painting is broken when placed on a Scrollpane, XToolkit > 41: * @library /open/test/jdk/java/awt/regtesthelpers Library path needs to be updated Suggestion: * @library /java/awt/regtesthelpers ------------- PR Review: https://git.openjdk.org/jdk/pull/21026#pullrequestreview-2307989995 PR Review: https://git.openjdk.org/jdk/pull/21026#pullrequestreview-2307995012 PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762078525 PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762078021 PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762082561 PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762083157 From honkar at openjdk.org Mon Sep 16 23:47:04 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Mon, 16 Sep 2024 23:47:04 GMT Subject: RFR: 8339902: Open source couple TextField related tests In-Reply-To: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: On Mon, 16 Sep 2024 23:02:58 GMT, Alexander Zuev wrote: > Clean up and open source five TextField related tests: > java/awt/TextField/CaretPositionTest; > java/awt/TextField/SetBoundsTest; > java/awt/TextField/SetEchoCharTest4; > java/awt/TextField/SetPasswordTest; > java/awt/TextField/ZeroEchoCharTest test/jdk/java/awt/TextField/SetEchoCharTest4/SetEchoCharTest4.java line 37: > 35: * @bug 4226580 > 36: * @summary TextField with echoChar add+remove+add seems to be broken > 37: * @library /open/test/jdk/java/awt/regtesthelpers Same here. Library path needs to be updated and applicable to other tests as well. test/jdk/java/awt/TextField/SetEchoCharTest4/SetEchoCharTest4.java line 75: > 73: add(tf3); > 74: add(b); > 75: setVisible(true); Not required here as PassFailJFrame handles setVisible(true) for test frame as well. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762085509 PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762088145 From kizune at openjdk.org Mon Sep 16 23:55:52 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Mon, 16 Sep 2024 23:55:52 GMT Subject: RFR: 8339902: Open source couple TextField related tests [v2] In-Reply-To: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: > Clean up and open source five TextField related tests: > java/awt/TextField/CaretPositionTest; > java/awt/TextField/SetBoundsTest; > java/awt/TextField/SetEchoCharTest4; > java/awt/TextField/SetPasswordTest; > java/awt/TextField/ZeroEchoCharTest Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: Update test/jdk/java/awt/TextField/SetBoundsTest/SetBoundsTest.java Co-authored-by: Harshitha Onkar ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21026/files - new: https://git.openjdk.org/jdk/pull/21026/files/067869fc..4bbc9b0a Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21026&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21026&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21026.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21026/head:pull/21026 PR: https://git.openjdk.org/jdk/pull/21026 From honkar at openjdk.org Mon Sep 16 23:56:07 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Mon, 16 Sep 2024 23:56:07 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v2] In-Reply-To: References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: On Mon, 16 Sep 2024 21:38:36 GMT, Harshitha Onkar wrote: >> `positionTestUI()` option is added to PassFailJFrame (PFJ). >> >> With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. >> >> Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code as per test UI requirements. >> >> Usage: >> >> PassFailJFrame.builder() >> .title("Test Instructions") >> .instructions(INSTRUCTIONS) >> .rows(int) >> .columns(int) >> .testUI() >> .positionTestUI() >> .build() >> .awaitAndCheck(); >> >> where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` >> >> @aivanov-jdk has demonstrated custom test UI positioning in this PR: >> **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > removed errorenous check @azvegint You may want to review this PR, as it is related to https://github.com/openjdk/jdk/pull/15721 ------------- PR Comment: https://git.openjdk.org/jdk/pull/21023#issuecomment-2354228824 From kizune at openjdk.org Tue Sep 17 00:01:07 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Tue, 17 Sep 2024 00:01:07 GMT Subject: RFR: 8339902: Open source couple TextField related tests [v2] In-Reply-To: References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: <6pMx2nU5WOFAvNaKmOQkllEsYeCDgTCOjAMluwZ2X4U=.ae5bc66f-3f6b-4ad8-86a6-e004d481bf83@github.com> On Mon, 16 Sep 2024 23:25:24 GMT, Harshitha Onkar wrote: >> Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: >> >> Update test/jdk/java/awt/TextField/SetBoundsTest/SetBoundsTest.java >> >> Co-authored-by: Harshitha Onkar > > test/jdk/java/awt/TextField/CaretPositionTest/CaretPositionTest.java line 60: > >> 58: test.test(); >> 59: if (position != 9) { >> 60: System.err.println("Caret position should be at the end of the string"); > > Should be throw new RuntimeException("Caret position should be at the end of the string") ?? Sure. > test/jdk/java/awt/TextField/SetBoundsTest/SetBoundsTest.java line 39: > >> 37: /* >> 38: * @test >> 39: * @bug 6198290, 6277332 > > Test fails due to comma between bugIDs - Invalid or unrecognized bugid: 6198290 Fixed. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762097985 PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762098093 From kizune at openjdk.org Tue Sep 17 00:04:06 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Tue, 17 Sep 2024 00:04:06 GMT Subject: RFR: 8339902: Open source couple TextField related tests [v2] In-Reply-To: References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: On Mon, 16 Sep 2024 23:43:39 GMT, Harshitha Onkar wrote: >> Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: >> >> Update test/jdk/java/awt/TextField/SetBoundsTest/SetBoundsTest.java >> >> Co-authored-by: Harshitha Onkar > > test/jdk/java/awt/TextField/SetEchoCharTest4/SetEchoCharTest4.java line 75: > >> 73: add(tf3); >> 74: add(b); >> 75: setVisible(true); > > Not required here as PassFailJFrame handles setVisible(true) for test frame as well. Ok ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762099352 From kizune at openjdk.org Tue Sep 17 00:11:30 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Tue, 17 Sep 2024 00:11:30 GMT Subject: RFR: 8339902: Open source couple TextField related tests [v3] In-Reply-To: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: > Clean up and open source five TextField related tests: > java/awt/TextField/CaretPositionTest; > java/awt/TextField/SetBoundsTest; > java/awt/TextField/SetEchoCharTest4; > java/awt/TextField/SetPasswordTest; > java/awt/TextField/ZeroEchoCharTest Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: Some fixes based on review ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21026/files - new: https://git.openjdk.org/jdk/pull/21026/files/4bbc9b0a..0dce88fc Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21026&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21026&range=01-02 Stats: 6 lines in 5 files changed: 0 ins; 1 del; 5 mod Patch: https://git.openjdk.org/jdk/pull/21026.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21026/head:pull/21026 PR: https://git.openjdk.org/jdk/pull/21026 From kizune at openjdk.org Tue Sep 17 00:11:30 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Tue, 17 Sep 2024 00:11:30 GMT Subject: RFR: 8339902: Open source couple TextField related tests [v3] In-Reply-To: References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: On Mon, 16 Sep 2024 23:27:34 GMT, Harshitha Onkar wrote: >> Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: >> >> Some fixes based on review > > test/jdk/java/awt/TextField/CaretPositionTest/CaretPositionTest.java line 80: > >> 78: } >> 79: >> 80: public void test() throws AWTException, InterruptedException, > > Suggestion: > > public void test() throws Exception, I prefer to list all the exceptions i am intentionally do not catch. > test/jdk/java/awt/TextField/SetEchoCharTest4/SetEchoCharTest4.java line 37: > >> 35: * @bug 4226580 >> 36: * @summary TextField with echoChar add+remove+add seems to be broken >> 37: * @library /open/test/jdk/java/awt/regtesthelpers > > Same here. Library path needs to be updated and applicable to other tests as well. Fixed here and in all other places. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762103428 PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762103716 From honkar at openjdk.org Tue Sep 17 00:18:04 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 17 Sep 2024 00:18:04 GMT Subject: RFR: 8340015: Open source several AWT focus tests - series 7 In-Reply-To: References: Message-ID: On Mon, 16 Sep 2024 04:16:01 GMT, Prasanta Sadhukhan wrote: > Opensource few AWT focus tests test/jdk/java/awt/Focus/MinimizeNonfocusableWindowTest.java line 57: > 55: if ("sun.awt.motif.MToolkit".equals(Toolkit.getDefaultToolkit().getClass().getName())) { > 56: return; > 57: } Should the MToolkit check be removed? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1762107648 From kizune at openjdk.org Tue Sep 17 00:23:35 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Tue, 17 Sep 2024 00:23:35 GMT Subject: RFR: 8339902: Open source couple TextField related tests [v4] In-Reply-To: References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: <88o9xlcbpRZHjAfMaK0LQq7lneh3Nz4fG5SV0iCF3F8=.21f4bba3-8e1a-4e14-baf8-b9c6129818fa@github.com> On Mon, 16 Sep 2024 23:25:02 GMT, Harshitha Onkar wrote: >> Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: >> >> Make varible volatile > > test/jdk/java/awt/TextField/CaretPositionTest/CaretPositionTest.java line 51: > >> 49: private Dimension size; >> 50: String text = "12 45 789"; >> 51: private static int position = -1; > > Since position var is accessed in 2 different threads, should it be changed to volatile? Can be. > test/jdk/java/awt/TextField/CaretPositionTest/CaretPositionTest.java line 53: > >> 51: private static int position = -1; >> 52: >> 53: public static void main(String[] args) throws InterruptedException, > > Can be simplified to throw generic Exception > Suggestion: > > public static void main(String[] args) throws Exception Same, i prefer to list all checked exceptions that i intentionally do not catch - makes it safer to modify if needed later. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762109327 PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762110230 From kizune at openjdk.org Tue Sep 17 00:23:35 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Tue, 17 Sep 2024 00:23:35 GMT Subject: RFR: 8339902: Open source couple TextField related tests [v4] In-Reply-To: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: > Clean up and open source five TextField related tests: > java/awt/TextField/CaretPositionTest; > java/awt/TextField/SetBoundsTest; > java/awt/TextField/SetEchoCharTest4; > java/awt/TextField/SetPasswordTest; > java/awt/TextField/ZeroEchoCharTest Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: Make varible volatile ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21026/files - new: https://git.openjdk.org/jdk/pull/21026/files/0dce88fc..10bf5fe3 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21026&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21026&range=02-03 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21026.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21026/head:pull/21026 PR: https://git.openjdk.org/jdk/pull/21026 From honkar at openjdk.org Tue Sep 17 00:33:05 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 17 Sep 2024 00:33:05 GMT Subject: RFR: 8339902: Open source couple TextField related tests [v4] In-Reply-To: References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: On Tue, 17 Sep 2024 00:23:35 GMT, Alexander Zuev wrote: >> Clean up and open source five TextField related tests: >> java/awt/TextField/CaretPositionTest; >> java/awt/TextField/SetBoundsTest; >> java/awt/TextField/SetEchoCharTest4; >> java/awt/TextField/SetPasswordTest; >> java/awt/TextField/ZeroEchoCharTest > > Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: > > Make varible volatile LGTM other than https://github.com/openjdk/jdk/pull/21026/files#r1762115939 test/jdk/java/awt/TextField/CaretPositionTest/CaretPositionTest.java line 51: > 49: private Dimension size; > 50: String text = "12 45 789"; > 51: private volatile static int position = -1; blessed modifier order Suggestion: private static volatile int position = -1; ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21026#pullrequestreview-2308031741 PR Review Comment: https://git.openjdk.org/jdk/pull/21026#discussion_r1762115939 From tr at openjdk.org Tue Sep 17 03:42:09 2024 From: tr at openjdk.org (Tejesh R) Date: Tue, 17 Sep 2024 03:42:09 GMT Subject: RFR: 8326027: [TEST_BUG]Comparing buffered images of white background frame fails in Mac In-Reply-To: References: <0FKvhBMfDuyvzus_Q_sjhmFB02FPipKX9p54KNy6w0k=.cf25ba18-9c25-4079-aeae-c2ffeaf0eafe@github.com> <9EEL4ctBHQI73B_nmGvnucR4LMefzbGCpSUd1URgr8o=.cc576bd9-025a-4aec-83e1-f66388de3629@github.com> Message-ID: <7Tr-UybQqD265bWlPZk_gE58Pjyd55TKrlYSFs10pDw=.42b04997-431a-471e-9191-6887ae5dd67a@github.com> On Mon, 9 Sep 2024 18:45:45 GMT, Alexey Ivanov wrote: > > > This is why I asked the question: does the comparison remain accurate without the need for tolerance if you use `Robot.createMultiResolutionScreenCapture` and use the highest resolution from the returned multi-resolution image? > > > > > > I couldn't reproduce the issue neither with `Robot.createMultiResolutionScreenCapture` nor with `Robot.createScreenCapture` since the failure occurs intermittently, not able to say anything about using `Robot.createMultiResolutionScreenCapture` instead of `Robot.createScreenCapture` . > > According to your report in JBS, the white color is not exactly white: `0xFFEE'EEEE`. White color has value of `0xFFFF'FFFF`. > > However, it's also common on Macs (because of color profile applied?), I mean that the captured color value is the same as the value used for filling. > > At the same time, I expect the color is the same across the entire frame surface. What we see is that there are variations. I wonder how many pixels on the image have different color, other than the first pixel. I guess the number pixels that doesn't match might vary, can't be constant. We can get that from the failure image though, but since the issue is intermittent, can't conclude exactly. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20760#issuecomment-2354441837 From kizune at openjdk.org Tue Sep 17 03:46:51 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Tue, 17 Sep 2024 03:46:51 GMT Subject: RFR: 8339902: Open source couple TextField related tests [v5] In-Reply-To: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: <_rmMkDVFIdATVcs--DIJETAbl_WIutknG8WhzwS7IFM=.532bc05c-290c-40e9-9933-35e5f00ec8ba@github.com> > Clean up and open source five TextField related tests: > java/awt/TextField/CaretPositionTest; > java/awt/TextField/SetBoundsTest; > java/awt/TextField/SetEchoCharTest4; > java/awt/TextField/SetPasswordTest; > java/awt/TextField/ZeroEchoCharTest Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: Fixing typo in thrown keyword; Removed windows platform because on modern windows platform the cursor position does always return 0 when all text selected. ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21026/files - new: https://git.openjdk.org/jdk/pull/21026/files/10bf5fe3..e4804501 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21026&range=04 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21026&range=03-04 Stats: 2 lines in 1 file changed: 1 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21026.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21026/head:pull/21026 PR: https://git.openjdk.org/jdk/pull/21026 From psadhukhan at openjdk.org Tue Sep 17 04:06:52 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Tue, 17 Sep 2024 04:06:52 GMT Subject: RFR: 8340015: Open source several AWT focus tests - series 7 [v2] In-Reply-To: References: Message-ID: > Opensource few AWT focus tests Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: MToolkit removed ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21008/files - new: https://git.openjdk.org/jdk/pull/21008/files/b7ccd8af..a385e767 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21008&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21008&range=00-01 Stats: 3 lines in 1 file changed: 0 ins; 3 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21008.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21008/head:pull/21008 PR: https://git.openjdk.org/jdk/pull/21008 From psadhukhan at openjdk.org Tue Sep 17 04:06:53 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Tue, 17 Sep 2024 04:06:53 GMT Subject: RFR: 8340015: Open source several AWT focus tests - series 7 [v2] In-Reply-To: References: Message-ID: On Tue, 17 Sep 2024 00:15:14 GMT, Harshitha Onkar wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> MToolkit removed > > test/jdk/java/awt/Focus/MinimizeNonfocusableWindowTest.java line 57: > >> 55: if ("sun.awt.motif.MToolkit".equals(Toolkit.getDefaultToolkit().getClass().getName())) { >> 56: return; >> 57: } > > @prsadhuk MToolkit is obsolete and can be removed. > [JDK-8279337](https://bugs.openjdk.org/browse/JDK-8279337) - The MToolkit is still referenced in a few places ok removed... ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1762251439 From kizune at openjdk.org Tue Sep 17 04:07:53 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Tue, 17 Sep 2024 04:07:53 GMT Subject: RFR: 8339902: Open source couple TextField related tests [v6] In-Reply-To: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: > Clean up and open source five TextField related tests: > java/awt/TextField/CaretPositionTest; > java/awt/TextField/SetBoundsTest; > java/awt/TextField/SetEchoCharTest4; > java/awt/TextField/SetPasswordTest; > java/awt/TextField/ZeroEchoCharTest Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: Update test/jdk/java/awt/TextField/CaretPositionTest/CaretPositionTest.java Co-authored-by: Harshitha Onkar ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21026/files - new: https://git.openjdk.org/jdk/pull/21026/files/e4804501..a9e439a4 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21026&range=05 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21026&range=04-05 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21026.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21026/head:pull/21026 PR: https://git.openjdk.org/jdk/pull/21026 From abhiscxk at openjdk.org Tue Sep 17 04:35:48 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Tue, 17 Sep 2024 04:35:48 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests Message-ID: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Few AWT MenuItem related tests are converted from applet to manual and moved to open. ------------- Commit messages: - MenuItem test moved to open Changes: https://git.openjdk.org/jdk/pull/21029/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339984 Stats: 461 lines in 5 files changed: 461 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From azvegint at openjdk.org Tue Sep 17 07:50:06 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Tue, 17 Sep 2024 07:50:06 GMT Subject: RFR: 8340007: Refactor KeyEvent/FunctionKeyTest.java In-Reply-To: References: Message-ID: On Mon, 16 Sep 2024 09:55:19 GMT, Alexey Ivanov wrote: > This changeset refactors `java/awt/event/KeyEvent/FunctionKeyTest.java`. > > Key changes: > > - Use `CyclicBarrier` to verify whether a key is pressed and released; > - Use `CountDownLatch` for frame activation; > - Ensure thread-safety for keeping thrown exceptions. > > Other changes: > > - Made `FunctionKeyTester` a nested class inside `FunctionKeyTest`; > - Used constants for the key events rather than magic numbers. > > I ran the updated test a few times with `JTREG=REPEAT_COUNT=20`, the test has passed. > > The updated test executes somewhat quicker than the old one. > > @azvegint, you may want to take a look. Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21013#pullrequestreview-2308671159 From azvegint at openjdk.org Tue Sep 17 08:41:05 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Tue, 17 Sep 2024 08:41:05 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v2] In-Reply-To: References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: On Mon, 16 Sep 2024 21:38:36 GMT, Harshitha Onkar wrote: >> `positionTestUI()` option is added to PassFailJFrame (PFJ). >> >> With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. >> >> Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code as per test UI requirements. >> >> Usage: >> >> PassFailJFrame.builder() >> .title("Test Instructions") >> .instructions(INSTRUCTIONS) >> .rows(int) >> .columns(int) >> .testUI() >> .positionTestUI() >> .build() >> .awaitAndCheck(); >> >> where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` >> >> @aivanov-jdk has demonstrated custom test UI positioning in this PR: >> **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > removed errorenous check I think that this can be improved by adding some predefined positionTestUI functions, like in the #15721 (we can borrow them from it). For example, consider adding `PositionWindowsLib.java`(or maybe a nested public static class for `PassFailJFrame` to avoid extra `@build` clause), which has functions something like .positionTestUI(PositionWindowsLib::positionHH) // aka TwoWindowsHH.positionTestUI .positionTestUI(PositionWindowsLib::positionHV) // aka TwoWindowsHV.positionTestUI ... It'll be easier for a test developer to just take a ready-to-use function (which in most cases will be the same across multiple tests), and it'll be easier for the test reviewer because there will be less code to review. ------------- PR Review: https://git.openjdk.org/jdk/pull/21023#pullrequestreview-2308800489 From aivanov at openjdk.org Tue Sep 17 09:24:06 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 09:24:06 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v2] In-Reply-To: References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: On Mon, 16 Sep 2024 21:38:36 GMT, Harshitha Onkar wrote: >> `positionTestUI()` option is added to PassFailJFrame (PFJ). >> >> With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. >> >> Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code as per test UI requirements. >> >> Usage: >> >> PassFailJFrame.builder() >> .title("Test Instructions") >> .instructions(INSTRUCTIONS) >> .rows(int) >> .columns(int) >> .testUI() >> .positionTestUI() >> .build() >> .awaitAndCheck(); >> >> where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` >> >> @aivanov-jdk has demonstrated custom test UI positioning in this PR: >> **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > removed errorenous check Marked as reviewed by aivanov (Reviewer). test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 1264: > 1262: * @throws IllegalStateException if the {@code positionWindows} field > 1263: * is already set, or if neither a windows list creator > 1264: * nor a list of test windows has been provided Suggestion: * @throws IllegalStateException if the {@code positionWindows} field * is already set ------------- PR Review: https://git.openjdk.org/jdk/pull/21023#pullrequestreview-2309011043 PR Review Comment: https://git.openjdk.org/jdk/pull/21023#discussion_r1762784996 From aivanov at openjdk.org Tue Sep 17 09:27:07 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 09:27:07 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v2] In-Reply-To: References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: On Mon, 16 Sep 2024 21:31:24 GMT, Harshitha Onkar wrote: >> Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: >> >> removed errorenous check > > test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 1277: > >> 1275: + "nor a list of test windows " >> 1276: + "has been provided"); >> 1277: } > > @aivanov-jdk Running into exception when this check is added here. I believe Builder's windowListCreator and testWindows are not assigned yet at this stage. > > And since this check is already in-place here: [validate()](https://github.com/openjdk/jdk/blob/418bb42b95b177f5f31f756054d0dd83740c6686/test/jdk/java/awt/regtesthelpers/PassFailJFrame.java#L1475C1-L1479C18), I'm removing it from positionTestUI(). The condition should've been `&&`: the error message is correct, the exception was supposed to be thrown if both `windowListCreator` and `testWindows` is null. The condition with `||` is always `true`. Yet I agree to remove this condition from here as it enforces the order of calls, which is not strictly required, even though it would common to add a window creator before setting positioning. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21023#discussion_r1762800438 From aivanov at openjdk.org Tue Sep 17 09:52:04 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 09:52:04 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v2] In-Reply-To: References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: On Tue, 17 Sep 2024 08:38:13 GMT, Alexander Zvegintsev wrote: > I think that this can be improved by adding some predefined positionTestUI functions, like in the #15721 (we can borrow them from it). I agree that we should ? and *we will*. Yet I don't see missing default layouts as stopper from integrating this PR. Adding a library of common layouts will take more time ? to add layouts and to review ? and @honkar-jdk wants to use the feature right now. It's better to do it with what's currently available rather than implement tricks to position two test UI windows. @kumarabhi006 also asked about the feature. Once tests are created, or even right now, we can submit bugs to update the test and use a common layout rather than one in the test and link those bugs as blocked by [JDK-8317116](https://bugs.openjdk.org/browse/JDK-8317116). There's already a test `java/awt/event/KeyEvent/AcceleratorTest/AcceleratorTest.java` which uses two test UI windows, yet it doesn't do anything to position them: https://github.com/openjdk/jdk/blob/c6721a0fa2582c3ddf1ef0a6e16a09234432939c/test/jdk/java/awt/event/KeyEvent/AcceleratorTest/AcceleratorTest.java#L157-L161 This test could be updated to use logging area instead of two test windows. Either way works. > For example, consider adding `PositionWindowsLib.java`(or maybe a nested public static class for `PassFailJFrame` to avoid extra `@build` clause) I've thought about it. We can add the most common layout right into `PassFailJFrame` to avoid additional `@build` tag. It could even be in a separate class, as you suggest, if it's referenced by `PassFailJFrame`, it will be automatically compiled by jtreg. I think we should add convenience methods `positionTestUIRows`, `positionTestUIColumns`, it'll make using the common layouts even simpler. If the convenience methods reference another class, it should be compiled automatically; if it doesn't work, we will put the layouts as a nested class or as methods directly into `PassFailJFrame`. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21023#issuecomment-2355078684 From aivanov at openjdk.org Tue Sep 17 09:52:06 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 09:52:06 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v2] In-Reply-To: References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: On Mon, 16 Sep 2024 21:38:36 GMT, Harshitha Onkar wrote: >> `positionTestUI()` option is added to PassFailJFrame (PFJ). >> >> With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. >> >> Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code as per test UI requirements. >> >> Usage: >> >> PassFailJFrame.builder() >> .title("Test Instructions") >> .instructions(INSTRUCTIONS) >> .rows(int) >> .columns(int) >> .testUI() >> .positionTestUI() >> .build() >> .awaitAndCheck(); >> >> where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` >> >> @aivanov-jdk has demonstrated custom test UI positioning in this PR: >> **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > removed errorenous check There has been no need for multiple test windows for nearly a year, it's not the most used feature. This is why I think we can add common layouts later rather than *rush it* right now. A few tests are also easy to update, and these tests would be a live demo for the improvement. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21023#issuecomment-2355083435 From aivanov at openjdk.org Tue Sep 17 12:44:36 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 12:44:36 GMT Subject: RFR: 8340306: Add border around instructions in PassFailJFrame Message-ID: A trivial change which adds border around instruction text. It makes the text easier to read. ------------- Commit messages: - 8340306: Add border around instructions in PassFailJFrame Changes: https://git.openjdk.org/jdk/pull/21038/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21038&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340306 Stats: 2 lines in 1 file changed: 2 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21038.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21038/head:pull/21038 PR: https://git.openjdk.org/jdk/pull/21038 From aivanov at openjdk.org Tue Sep 17 12:55:03 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 12:55:03 GMT Subject: RFR: 8340306: Add border around instructions in PassFailJFrame In-Reply-To: References: Message-ID: On Tue, 17 Sep 2024 12:39:20 GMT, Alexey Ivanov wrote: > A trivial change which adds border around instruction text. It makes the text easier to read. **Updated look:** ![Screenshot of PrintLatinCJKTest with border around text](https://github.com/user-attachments/assets/93311a78-6339-42f0-97e6-89661bb21743) The text is no longer attaches to the left of the frame. **Previous look:** ![Screenshot of PrintLatinCJKTest without border around text](https://github.com/user-attachments/assets/516c168d-94ea-4df8-befb-5afc3559df37) ------------- PR Comment: https://git.openjdk.org/jdk/pull/21038#issuecomment-2355679301 From aivanov at openjdk.org Tue Sep 17 13:50:16 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 13:50:16 GMT Subject: RFR: 8340308: PassFailJFrame: Make rows default to number of lines in instructions Message-ID: It has become quite common to use the following code .rows((int) INSTRUCTIONS.lines().count() + 1) to set the number of rows for `PassFailJFrame`. Make this the default value. Newer tests could drop `.rows` from builder configuration if the new default works well. If a test needs customising the new default value, the newly added method `rowsAdd` could be used to increase the number of rows. ------------- Commit messages: - Add description for Builder.columns method - 8340308: PassFailJFrame: Make rows default to number of lines in instructions Changes: https://git.openjdk.org/jdk/pull/21039/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21039&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340308 Stats: 35 lines in 1 file changed: 34 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21039.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21039/head:pull/21039 PR: https://git.openjdk.org/jdk/pull/21039 From aivanov at openjdk.org Tue Sep 17 14:03:03 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 14:03:03 GMT Subject: RFR: 8340308: PassFailJFrame: Make rows default to number of lines in instructions In-Reply-To: References: Message-ID: On Tue, 17 Sep 2024 13:45:06 GMT, Alexey Ivanov wrote: > It has become quite common to use the following code > > > .rows((int) INSTRUCTIONS.lines().count() + 1) > > > to set the number of rows for `PassFailJFrame`. > > Make this the default value. Newer tests could drop `.rows` from builder configuration if the new default works well. > > If a test needs customising the new default value, the newly added method `rowsAdd` could be used to increase the number of rows. There are currently 29 tests which use `.rows((int) INSTRUCTIONS.lines().count() + 1)` to set the number of rows. Another set of tests uses `+ 2` instead, the number of such tests is 24. You can get the list of files using these commands: grep --recursive --files-with-matches --perl-regexp '.rows((int).*.lines().count().*+.*1.*)' test/jdk grep --recursive --files-with-matches --perl-regexp '.rows((int).*.lines().count().*+.*2.*)' test/jdk Two tests added in #20996 use `+ 5`. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21039#issuecomment-2355916309 From aivanov at openjdk.org Tue Sep 17 14:34:13 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 14:34:13 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v2] In-Reply-To: References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: On Mon, 16 Sep 2024 21:38:36 GMT, Harshitha Onkar wrote: >> `positionTestUI()` option is added to PassFailJFrame (PFJ). >> >> With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. >> >> Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code as per test UI requirements. >> >> Usage: >> >> PassFailJFrame.builder() >> .title("Test Instructions") >> .instructions(INSTRUCTIONS) >> .rows(int) >> .columns(int) >> .testUI() >> .positionTestUI() >> .build() >> .awaitAndCheck(); >> >> where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` >> >> @aivanov-jdk has demonstrated custom test UI positioning in this PR: >> **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > removed errorenous check I wanted to request the changes instead: the description of the method needs updating as the result of removing the check for window creator or window list. ------------- Changes requested by aivanov (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21023#pullrequestreview-2309949336 From duke at openjdk.org Tue Sep 17 15:30:07 2024 From: duke at openjdk.org (duke) Date: Tue, 17 Sep 2024 15:30:07 GMT Subject: RFR: 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP In-Reply-To: References: Message-ID: On Fri, 13 Sep 2024 15:01:23 GMT, Nizar Benalla wrote: > Can I get a review for this doc-only change? I updated some links because the websites moved from HTTP to HTTPS. The redirects can cause some false-positives on tests. > > TIA @nizarbenalla Your change (at version 06086104bf40bb76ba8af127fb5d120a85146bf0) is now ready to be sponsored by a Committer. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21001#issuecomment-2356241704 From rgupta at openjdk.org Tue Sep 17 16:11:48 2024 From: rgupta at openjdk.org (Ravi Gupta) Date: Tue, 17 Sep 2024 16:11:48 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v7] In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 15:04:25 GMT, Alexey Ivanov wrote: >> Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: >> >> 8333403: Review comments fixed > > test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 157: > >> 155: EventQueue.invokeAndWait(() -> { >> 156: compAt = components[9].getLocationOnScreen(); >> 157: compSize = components[9].getSize(); > > Why did you change it from 0 to 9? > > The number 9 looks like a magic number, it may change if anything changes in the `components` array. now i used frame to ensure that its gain foucs > test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 201: > >> 199: System.err.println(); >> 200: throw new RuntimeException("FAIL: " + errorMsg); >> 201: } > > So you're collecting a list of events to print them if iconify or deiconify generates an unexpected list of events. > > In all other cases `events` isn't used at all. > > Given that all the generated events are printed as they're come, I see no reason why `events` is needed at all. By printing messages that you're about to test iconifying frame and deiconifying frame you separate the cases, the list of events will be printed between these messages. removed the events , now list of events will be printed by using ComponentListener ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1763511677 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1763515115 From rgupta at openjdk.org Tue Sep 17 16:11:48 2024 From: rgupta at openjdk.org (Ravi Gupta) Date: Tue, 17 Sep 2024 16:11:48 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v8] In-Reply-To: References: Message-ID: > This testcase checks for the following assertions for Component events: > > 1. When components are resized, moved, hidden and shown the respective events are triggered. > 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. > 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. > 4. When a window is minimized/restored then hidden and shown component events should be triggered. > > Testing: > Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: 8333403: Review Comments Fixed ------------- Changes: - all: https://git.openjdk.org/jdk/pull/19521/files - new: https://git.openjdk.org/jdk/pull/19521/files/b367175a..078301d8 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=19521&range=07 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=19521&range=06-07 Stats: 659 lines in 2 files changed: 334 ins; 325 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/19521.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/19521/head:pull/19521 PR: https://git.openjdk.org/jdk/pull/19521 From duke at openjdk.org Tue Sep 17 16:14:17 2024 From: duke at openjdk.org (lawrence.andrews) Date: Tue, 17 Sep 2024 16:14:17 GMT Subject: RFR: 8340306: Add border around instructions in PassFailJFrame In-Reply-To: References: Message-ID: On Tue, 17 Sep 2024 12:52:46 GMT, Alexey Ivanov wrote: >> A trivial change which adds border around instruction text. It makes the text easier to read. >> >> (In some tests, people added leading spaces to each line to make the instructions easier to read; with the added border, there's no need for this trick.) > > **Updated look:** > > ![Screenshot of PrintLatinCJKTest with border around text](https://github.com/user-attachments/assets/93311a78-6339-42f0-97e6-89661bb21743) > > The text is no longer attaches to the left of the frame. > > **Previous look:** > > ![Screenshot of PrintLatinCJKTest without border around text](https://github.com/user-attachments/assets/516c168d-94ea-4df8-befb-5afc3559df37) @aivanov-jdk thanks for adding . Now the test instruction looks highlighted. LGTM ------------- PR Comment: https://git.openjdk.org/jdk/pull/21038#issuecomment-2356361363 From rgupta at openjdk.org Tue Sep 17 16:19:27 2024 From: rgupta at openjdk.org (Ravi Gupta) Date: Tue, 17 Sep 2024 16:19:27 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v9] In-Reply-To: References: Message-ID: <4oKmSnv0K5L-6klgC3JZClGZRON9YR149ucfNlavGdI=.922747b0-0dc9-4aea-b928-0c67c6a1642c@github.com> > This testcase checks for the following assertions for Component events: > > 1. When components are resized, moved, hidden and shown the respective events are triggered. > 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. > 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. > 4. When a window is minimized/restored then hidden and shown component events should be triggered. > > Testing: > Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: 8333403: Whitespace Fixed ------------- Changes: - all: https://git.openjdk.org/jdk/pull/19521/files - new: https://git.openjdk.org/jdk/pull/19521/files/078301d8..acaee1a6 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=19521&range=08 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=19521&range=07-08 Stats: 1 line in 1 file changed: 0 ins; 1 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/19521.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/19521/head:pull/19521 PR: https://git.openjdk.org/jdk/pull/19521 From rgupta at openjdk.org Tue Sep 17 16:19:27 2024 From: rgupta at openjdk.org (Ravi Gupta) Date: Tue, 17 Sep 2024 16:19:27 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v7] In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 14:50:58 GMT, Alexey Ivanov wrote: >> Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: >> >> 8333403: Review comments fixed > > test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 67: > >> 65: private static volatile Dimension compSize; >> 66: private static final java.util.Collection events = >> 67: Collections.synchronizedList(new ArrayList()); > > Suggestion: > > private static final Collection events = > Collections.synchronizedList(new ArrayList<>()); removed events list , now events are printed using the ComponentListener. > test/jdk/java/awt/event/ComponentEvent/ComponentEventTest.java line 67: > >> 65: private static volatile Dimension compSize; >> 66: private static final java.util.Collection events = >> 67: Collections.synchronizedList(new ArrayList()); > > Any reason why you use fully qualified `java.util.Collection` class name instead of importing it? removed events list , now events are printed using the ComponentListener. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1763526359 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1763526784 From rgupta at openjdk.org Tue Sep 17 16:25:19 2024 From: rgupta at openjdk.org (Ravi Gupta) Date: Tue, 17 Sep 2024 16:25:19 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v6] In-Reply-To: References: Message-ID: <-FudqROzC1i4cUFYa6LezEzwV5c9bktVGQS5gZSvQno=.aacd284c-632d-44a0-9076-a27e1183047e@github.com> On Wed, 4 Sep 2024 15:54:16 GMT, Alexey Ivanov wrote: >> Here we expect events should not triggered. >> >> When inconify i expect all events should not triggered , but when form Frame.ICONIFIED to Frame.NORMAL componentMoved and componentResized events are triggered , Events order on Windows and Mac are different. >> >> Order of the events for Frame from Frame.ICONIFIED to Frame.NORMAL >> >> On Windows >> >> Component Shown >> Frame is Visible with ExtendedState as ICONIFIED >> Component Moved >> Component Resized >> Frame is Visible with ExtendedState as NORMAL >> >> On MAC >> Component Moved >> Component Resized >> Component Shown >> Frame is Visible with ExtendedState as ICONIFIED >> Frame is Visible with ExtendedState as NORMAL > >> when form Frame.ICONIFIED to Frame.NORMAL componentMoved and componentResized events are triggered > > Then verify that these events are triggered: > > > - if (componentShown || componentHidden) { > + if (componentShown || componentHidden || !componentMoved > + || !componentResized) { > > Otherwise it looks as if you forgot to test something. You may have two `if` statements to print more precise error message. We observed different behavior between MS Windows and other OS ,we natively received WM_SIZE/WM_MOVE events when set frame iconify to deiconify , The AWT sends the events to components when it receives the events from the native system. Now we are applying the OS specific check to test this scenario. Please check the details at JDK-6754618 ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1763534174 From aivanov at openjdk.org Tue Sep 17 17:09:16 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 17:09:16 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v9] In-Reply-To: <4oKmSnv0K5L-6klgC3JZClGZRON9YR149ucfNlavGdI=.922747b0-0dc9-4aea-b928-0c67c6a1642c@github.com> References: <4oKmSnv0K5L-6klgC3JZClGZRON9YR149ucfNlavGdI=.922747b0-0dc9-4aea-b928-0c67c6a1642c@github.com> Message-ID: On Tue, 17 Sep 2024 16:19:27 GMT, Ravi Gupta wrote: >> This testcase checks for the following assertions for Component events: >> >> 1. When components are resized, moved, hidden and shown the respective events are triggered. >> 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. >> 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. >> 4. When a window is minimized/restored then hidden and shown component events should be triggered. >> >> Testing: >> Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. > > Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: > > 8333403: Whitespace Fixed I am still for moving the test into `java/awt/Component` folder. test/jdk/java/awt/ComponentEvent/ComponentEventTest.java line 50: > 48: * @bug 8333403 > 49: * @summary Test performs various operations to check components events are triggered properly. > 50: * @run main ComponentEventTest Add the library and build tags to use the `Platform` class. Suggestion: * @summary Test performs various operations to check components events are triggered properly. * @library /test/lib * @build jdk.test.lib.Platform * @run main ComponentEventTest And don't forget to add `jdk.test.lib.Platform` to the list of imports. test/jdk/java/awt/ComponentEvent/ComponentEventTest.java line 149: > 147: private static void doTest() > 148: throws InvocationTargetException, InterruptedException { > 149: // Click on the Frame to ensure its gain Focus Suggestion: // Click the frame to ensure it gains focus I see no reason why you capitalise ?frame? and ?focus?. test/jdk/java/awt/ComponentEvent/ComponentEventTest.java line 161: > 159: robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK); > 160: > 161: robot.delay(DELAY); Does it make sense to move this part into a new method `clickFrame`? Does anyone else have any opinions on this? test/jdk/java/awt/ComponentEvent/ComponentEventTest.java line 171: > 169: robot.delay(DELAY); > 170: > 171: System.out.println("Iconify frame"); Similarly, iconify and deiconify could be moved into a separate method. Shorter, logically complete pieces improve the code quality and the overall readability of the code. test/jdk/java/awt/ComponentEvent/ComponentEventTest.java line 196: > 194: * the events from the native system. > 195: * Please check the JDK-6754618 > 196: */ Suggestion: /* * Because of the different behavior between MS Windows and other OS, * we receive native events WM_SIZE and WM_MOVE on Windows * when the frame state changes from iconified to normal. * AWT sends these events to components when it receives * the events from the native system. * See JDK-6754618 for more information. */ test/jdk/java/awt/ComponentEvent/ComponentEventTest.java line 208: > 206: throw new RuntimeException( > 207: "ComponentEvent triggered when frame set to normal"); > 208: } I suggest using the `Platform` class to determine whether the test runs on Windows or not and splitting the common condition and platform-dependent conditions: if (componentShown || componentHidden) { throw new RuntimeException( "FAIL: componentShown or componentHidden triggered " + "when frame set to normal"); } if (Platform.isWindows() && (!componentMoved || !componentResized)) { throw new RuntimeException( "FAIL: componentMoved or componentResized wasn't triggered " + "when frame set to normal"); } if (!Platform.isWindows() && (componentMoved || componentResized)) { throw new RuntimeException( "FAIL: componentMoved or componentResized triggered " + "when frame set to normal"); } This allows you to report a clearer error message. ------------- Changes requested by aivanov (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/19521#pullrequestreview-2310234320 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1763592072 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1763532753 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1763582314 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1763583953 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1763545672 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1763563500 From honkar at openjdk.org Tue Sep 17 17:28:26 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 17 Sep 2024 17:28:26 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v3] In-Reply-To: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: <1JMeQt53ytU3UlSyfV77UDbccgjzpHbrFRfJR2mXb_k=.0f4f1ae2-adb0-4609-a05c-272ddd15befd@github.com> > `positionTestUI()` option is added to PassFailJFrame (PFJ). > > With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. > > Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code as per test UI requirements. > > Usage: > > PassFailJFrame.builder() > .title("Test Instructions") > .instructions(INSTRUCTIONS) > .rows(int) > .columns(int) > .testUI() > .positionTestUI() > .build() > .awaitAndCheck(); > > where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` > > @aivanov-jdk has demonstrated custom test UI positioning in this PR: > **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: doc update ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21023/files - new: https://git.openjdk.org/jdk/pull/21023/files/5a331fd6..cb342a88 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21023&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21023&range=01-02 Stats: 2 lines in 1 file changed: 0 ins; 1 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21023.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21023/head:pull/21023 PR: https://git.openjdk.org/jdk/pull/21023 From aivanov at openjdk.org Tue Sep 17 17:28:26 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 17:28:26 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v3] In-Reply-To: <1JMeQt53ytU3UlSyfV77UDbccgjzpHbrFRfJR2mXb_k=.0f4f1ae2-adb0-4609-a05c-272ddd15befd@github.com> References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> <1JMeQt53ytU3UlSyfV77UDbccgjzpHbrFRfJR2mXb_k=.0f4f1ae2-adb0-4609-a05c-272ddd15befd@github.com> Message-ID: On Tue, 17 Sep 2024 17:25:34 GMT, Harshitha Onkar wrote: >> `positionTestUI()` option is added to PassFailJFrame (PFJ). >> >> With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. >> >> Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code as per test UI requirements. >> >> Usage: >> >> PassFailJFrame.builder() >> .title("Test Instructions") >> .instructions(INSTRUCTIONS) >> .rows(int) >> .columns(int) >> .testUI() >> .positionTestUI() >> .build() >> .awaitAndCheck(); >> >> where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` >> >> @aivanov-jdk has demonstrated custom test UI positioning in this PR: >> **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > doc update Marked as reviewed by aivanov (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21023#pullrequestreview-2310377833 From honkar at openjdk.org Tue Sep 17 17:28:26 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 17 Sep 2024 17:28:26 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v2] In-Reply-To: References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: On Tue, 17 Sep 2024 09:21:24 GMT, Alexey Ivanov wrote: >> Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: >> >> removed errorenous check > > test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 1264: > >> 1262: * @throws IllegalStateException if the {@code positionWindows} field >> 1263: * is already set, or if neither a windows list creator >> 1264: * nor a list of test windows has been provided > > Suggestion: > > * @throws IllegalStateException if the {@code positionWindows} field > * is already set Updated ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21023#discussion_r1763613153 From honkar at openjdk.org Tue Sep 17 17:31:10 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 17 Sep 2024 17:31:10 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v3] In-Reply-To: <1JMeQt53ytU3UlSyfV77UDbccgjzpHbrFRfJR2mXb_k=.0f4f1ae2-adb0-4609-a05c-272ddd15befd@github.com> References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> <1JMeQt53ytU3UlSyfV77UDbccgjzpHbrFRfJR2mXb_k=.0f4f1ae2-adb0-4609-a05c-272ddd15befd@github.com> Message-ID: On Tue, 17 Sep 2024 17:28:26 GMT, Harshitha Onkar wrote: >> `positionTestUI()` option is added to PassFailJFrame (PFJ). >> >> With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. >> >> Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code as per test UI requirements. >> >> Usage: >> >> PassFailJFrame.builder() >> .title("Test Instructions") >> .instructions(INSTRUCTIONS) >> .rows(int) >> .columns(int) >> .testUI() >> .positionTestUI() >> .build() >> .awaitAndCheck(); >> >> where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` >> >> @aivanov-jdk has demonstrated custom test UI positioning in this PR: >> **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > doc update > I think that this can be improved by adding some predefined positionTestUI functions, like in the #15721 (we can borrow them from it). For example, consider adding `PositionWindowsLib.java`(or maybe a nested public static class for `PassFailJFrame` to avoid extra `@build` clause), which has functions something like > > ```java > .positionTestUI(PositionWindowsLib::positionHH) // aka TwoWindowsHH.positionTestUI > .positionTestUI(PositionWindowsLib::positionHV) // aka TwoWindowsHV.positionTestUI > ... > ``` @azvegint Valid suggestion and re-usability of common layouts is better than having to repeat it in the test code. This will be added as next step to PassFailJFrame iterative improvement as @aivanov-jdk suggested. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21023#issuecomment-2356507943 From honkar at openjdk.org Tue Sep 17 17:41:06 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 17 Sep 2024 17:41:06 GMT Subject: RFR: 8340306: Add border around instructions in PassFailJFrame In-Reply-To: References: Message-ID: On Tue, 17 Sep 2024 12:39:20 GMT, Alexey Ivanov wrote: > A trivial change which adds border around instruction text. It makes the text easier to read. > > (In some tests, people added leading spaces to each line to make the instructions easier to read; with the added border, there's no need for this trick.) LGTM, test instructions are better indented now and not close to the edge. ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21038#pullrequestreview-2310418017 From honkar at openjdk.org Tue Sep 17 17:48:04 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 17 Sep 2024 17:48:04 GMT Subject: RFR: 8340308: PassFailJFrame: Make rows default to number of lines in instructions In-Reply-To: References: Message-ID: On Tue, 17 Sep 2024 13:45:06 GMT, Alexey Ivanov wrote: > It has become quite common to use the following code > > > .rows((int) INSTRUCTIONS.lines().count() + 1) > > > to set the number of rows for `PassFailJFrame`. > > Make this the default value. Newer tests could drop `.rows` from builder configuration if the new default works well. > > If a test needs customising the new default value, the newly added method `rowsAdd` could be used to increase the number of rows. LGTM, eliminates the need to specify `.rows((int) INSTRUCTIONS.lines().count() + 1)` if the default no. of rows works for the test. ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21039#pullrequestreview-2310432394 From prr at openjdk.org Tue Sep 17 18:33:52 2024 From: prr at openjdk.org (Phil Race) Date: Tue, 17 Sep 2024 18:33:52 GMT Subject: RFR: 8340078: Open source several 2D tests Message-ID: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> Open source 5 Java2D related rendering tests. ------------- Commit messages: - 8340078 Changes: https://git.openjdk.org/jdk/pull/21045/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21045&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340078 Stats: 484 lines in 5 files changed: 484 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21045.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21045/head:pull/21045 PR: https://git.openjdk.org/jdk/pull/21045 From honkar at openjdk.org Tue Sep 17 18:47:08 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 17 Sep 2024 18:47:08 GMT Subject: RFR: JDK-8339962 : Open source AWT TextField tests - Set1 [v3] In-Reply-To: References: Message-ID: On Mon, 16 Sep 2024 22:59:35 GMT, Harshitha Onkar wrote: >> Following test are open-sourced. >> >> 1. test/jdk/java/awt/Label/ContainerValidateTest.java - Automated >> 2. test/jdk/java/awt/TextField/SetEchoCharTest.java - Automated >> 3. test/jdk/java/awt/TextField/SetEchoCharWordOpsTest.java - PassFailJFrame manual test > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > typo fix This PR requires re-approval after a small update. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21005#issuecomment-2356648015 From aivanov at openjdk.org Tue Sep 17 19:29:13 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 19:29:13 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: <0KuII4A9thnWARW5tWmwaEOw0c91WSN0WmjDqxYAY4Y=.a4c6f377-e5a1-4302-b389-67fdbb4aa157@github.com> On Tue, 17 Sep 2024 04:31:09 GMT, Abhishek Kumar wrote: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Changes requested by aivanov (Reviewer). test/jdk/java/awt/MenuItem/GiantFontTest.java line 72: > 70: mb.add(m); > 71: f.setMenuBar(mb); > 72: f.setSize (450, 400); Suggestion: f.setSize(450, 400); test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 45: > 43: */ > 44: > 45: public class LotsOfMenuItemsTest implements ComponentListener { Suggestion: public class LotsOfMenuItemsTest extends ComponentAdapter { You use only one method from `ComponentListener`, override only the one you need and remove the ones you don't use. test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 47: > 45: public class LotsOfMenuItemsTest implements ComponentListener { > 46: private static final int NUM_WINDOWS = 400; > 47: private static TestFrame firstFrame, testFrame; It is not recommended to declare several fields or variables on one line in Java. test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 48: > 46: private static final int NUM_WINDOWS = 400; > 47: private static TestFrame firstFrame, testFrame; > 48: private static Rectangle rect; `rect` is never used. test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 53: > 51: LotsOfMenuItemsTest obj = new LotsOfMenuItemsTest(); > 52: String INSTRUCTIONS = """ > 53: This test creates a lots of frames with menubars. Suggestion: This test creates lots of frames with menu bars. Either _?a lot of?_ or _?lots of?_. test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 58: > 56: > 57: If everything seems to work - test passed. > 58: Click "Done" button in the test harness window. There's no **Done** button. test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 73: > 71: } > 72: > 73: private List createAndShowUI() { It can be simplified to Suggestion: private List createAndShowUI() { test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 86: > 84: testFrame.setTitle("Last Frame"); > 85: } > 86: } Suggestion: for (int i = 1; i < NUM_WINDOWS - 1; ++i) { testFrame = new TestFrame("Running(" + i + ")..."); testFrame.setVisible(false); testFrame.dispose(); } testFrame = new TestFrame("Last Frame"); Doesn't it make the code clearer and shorter? test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 89: > 87: list.add(firstFrame); > 88: list.add(testFrame); > 89: return list; You can return a list like this: Suggestion: return List.of(firstFrame, testFrame); No need to explicitly create a list, no need to explicit add items one by one. test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 98: > 96: firstFrame.setLocation(970, 350); > 97: testFrame.setLocation(970, 510); > 98: } Hard-coding coordinates is not the best solution. The workaround is to position the first frame using `PassFailJFrame` and then use the location of the first frame to position the second (test) frame. Suggestion: @Override public void componentShown(ComponentEvent e) { PassFailJFrame.positionTestWindow(firstFrame, PassFailJFrame.Position.HORIZONTAL); testFrame.setLocation(firstFrame.getX(), firstFrame.getY() + firstFrame.getWidth() + 8); } test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 103: > 101: } > 102: > 103: class TestFrame extends Frame { Could you please make `TestFrame` a static nested class inside `LotsOfMenuItemsTest`. I avoids conflicts when you mark a folder as Test Source in an IDE and that folder contains multiple tests. In fact, you don't need to extend `Frame` at all: create an instance of the `Frame` class and add menu bar and set the size of the frame. However, I agree, keeping this stuff in constructor simplifies test. test/jdk/java/awt/MenuItem/MenuSetFontTest.java line 47: > 45: Click on the "File" menu. You will see "menu item" item. > 46: Press pass if menu item is displayed using bold and large font else fail. > 47: If you do not see menu at all, press fail."""; Suggestion: Press Pass if menu item is displayed using bold and large font, otherwise press Fail. If you do not see menu at all, press Fail."""; Capitalising the names of the buttons makes it easier to recognise it's a UI element. test/jdk/java/awt/MenuItem/MenuSetFontTest.java line 54: > 52: .rows((int) INSTRUCTIONS.lines().count() + 2) > 53: .columns(40) > 54: .testTimeOut(5) You may omit the default timeout. test/jdk/java/awt/MenuItem/MenuSetFontTest.java line 67: > 65: menu.add(item); > 66: menuBar.add(menu); > 67: menuBar.setFont(new Font("Monospaced", 1, 24)); Use the constants from the `Font` class: Suggestion: menuBar.setFont(new Font(Font.MONOSPACED, Font.BOLD, 24)); test/jdk/java/awt/MenuItem/NullOrEmptyStringLabelTest.java line 47: > 45: The bug is reproducible under Win32 and Solaris. > 46: Setting 'null' and "" as a label of menu item > 47: should by the spec set blank label on all platforms. Suggestion: Setting 'null' and "" as a label of menu item should set blank label on all platforms according to the spec(ification). It is uncommon to insert a phrase between an auxiliary verb and the main verb, even though adverbs are usually placed between them. test/jdk/java/awt/MenuItem/NullOrEmptyStringLabelTest.java line 76: > 74: Button button3 = new Button("Set MenuItem label to 'text'"); > 75: button1.addActionListener(new ActionListener() { > 76: public void actionPerformed(ActionEvent ev) { Maybe add `@Override` annotation? test/jdk/java/awt/MenuItem/NullOrEmptyStringLabelTest.java line 97: > 95: frame.add("North", button1); > 96: frame.add("South", button2); > 97: frame.add("Center", button3); Wouldn't it be better to keep the logical and visual order of the buttons consistent? Or is the intention to set the label to `"text"` after `null` followed by `""`? I also recommend using newer syntax (order of parameters) and constants from `BorderLayout`: Suggestion: frame.add(button1, BorderLayout.NORTH); frame.add(button2, BorderLayout.CENTER); frame.add(button3, BorderLayout.SOUTH); test/jdk/java/awt/MenuItem/UnicodeMenuItemTest.java line 81: > 79: > 80: MenuItem mi6 = new MenuItem("\u012d"); > 81: m.add(mi6); The numbering is weird here: 2, 6, 7 ? but there's no `mi1` or `m3`? ------------- PR Review: https://git.openjdk.org/jdk/pull/21029#pullrequestreview-2310512618 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763692026 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763745882 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763708736 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763749772 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763710647 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763727356 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763756892 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763732588 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763707460 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763744407 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763705638 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763748726 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763768377 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763753615 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763764904 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763774205 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763784379 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1763788616 From aivanov at openjdk.org Tue Sep 17 19:34:08 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 19:34:08 GMT Subject: RFR: 8226933: [TEST_BUG]GTK L&F: There is no swatches or RGB tab in JColorChooser [v4] In-Reply-To: References: Message-ID: On Fri, 6 Sep 2024 11:37:10 GMT, Abhishek Kumar wrote: >> There is no Swatches tab available for GTK Look and Feel due to the different ColorChooser UI design. Updated the test instructions. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Remove print statement Marked as reviewed by aivanov (Reviewer). test/jdk/javax/swing/JColorChooser/Test4887836.java line 35: > 33: * @bug 4887836 > 34: * @library /java/awt/regtesthelpers /test/lib > 35: * @build PassFailJFrame You may explicitly mention `jtreg.SkippedException` in the `@build` tag. Suggestion: * @build PassFailJFrame jtreg.SkippedException ------------- PR Review: https://git.openjdk.org/jdk/pull/20867#pullrequestreview-2310671748 PR Review Comment: https://git.openjdk.org/jdk/pull/20867#discussion_r1763794387 From azvegint at openjdk.org Tue Sep 17 20:02:06 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Tue, 17 Sep 2024 20:02:06 GMT Subject: RFR: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder [v3] In-Reply-To: <1JMeQt53ytU3UlSyfV77UDbccgjzpHbrFRfJR2mXb_k=.0f4f1ae2-adb0-4609-a05c-272ddd15befd@github.com> References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> <1JMeQt53ytU3UlSyfV77UDbccgjzpHbrFRfJR2mXb_k=.0f4f1ae2-adb0-4609-a05c-272ddd15befd@github.com> Message-ID: <9kbLT1SRf8J6hM3DMogcNNMThcZ2N64VWhq5craU6-c=.9526f4c5-139a-4f0d-b65a-a260ff46759c@github.com> On Tue, 17 Sep 2024 17:28:26 GMT, Harshitha Onkar wrote: >> `positionTestUI()` option is added to PassFailJFrame (PFJ). >> >> With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. >> >> Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code as per test UI requirements. >> >> Usage: >> >> PassFailJFrame.builder() >> .title("Test Instructions") >> .instructions(INSTRUCTIONS) >> .rows(int) >> .columns(int) >> .testUI() >> .positionTestUI() >> .build() >> .awaitAndCheck(); >> >> where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` >> >> @aivanov-jdk has demonstrated custom test UI positioning in this PR: >> **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > doc update Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21023#pullrequestreview-2310820280 From honkar at openjdk.org Tue Sep 17 20:08:10 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 17 Sep 2024 20:08:10 GMT Subject: Integrated: JDK-8340210 : Add positionTestUI() to PassFailJFrame.Builder In-Reply-To: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> References: <_hYtl-HalmIy6fJ_mu6Kv9dYUXX8wwLbShWAqlv8jiA=.448debb3-5fbf-42e3-a6e3-0585cb8503a2@github.com> Message-ID: On Mon, 16 Sep 2024 19:11:59 GMT, Harshitha Onkar wrote: > `positionTestUI()` option is added to PassFailJFrame (PFJ). > > With this change multiple UI can be positioned using the PFJ new builder pattern by providing implementation for the Functional Interface `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` in the test code. > > Since the position implementation is done in test code it allows flexibility as the user can add custom positioning code as per test UI requirements. > > Usage: > > PassFailJFrame.builder() > .title("Test Instructions") > .instructions(INSTRUCTIONS) > .rows(int) > .columns(int) > .testUI() > .positionTestUI() > .build() > .awaitAndCheck(); > > where positionMultiTestUI is the implementation for positioning of multiple test windows for `PositionWindows.positionTestWindows(List testWindows,InstructionUI instructionUI)` > > @aivanov-jdk has demonstrated custom test UI positioning in this PR: > **[8294156: Demo positioning of multiple test windows](https://github.com/openjdk/jdk/pull/15721)** This pull request has now been integrated. Changeset: f0ae90f3 Author: Harshitha Onkar URL: https://git.openjdk.org/jdk/commit/f0ae90f30c346544e87217ef1832d6a350fe1985 Stats: 23 lines in 1 file changed: 23 ins; 0 del; 0 mod 8340210: Add positionTestUI() to PassFailJFrame.Builder Co-authored-by: Alexey Ivanov Reviewed-by: aivanov, azvegint ------------- PR: https://git.openjdk.org/jdk/pull/21023 From azvegint at openjdk.org Tue Sep 17 20:16:04 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Tue, 17 Sep 2024 20:16:04 GMT Subject: RFR: 8340078: Open source several 2D tests In-Reply-To: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> References: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> Message-ID: On Tue, 17 Sep 2024 18:27:58 GMT, Phil Race wrote: > Open source 5 Java2D related rendering tests. Changes requested by azvegint (Reviewer). test/jdk/sun/java2d/GdiRendering/GdiLockTest.java line 28: > 26: * @bug 4693644 > 27: * @summary verifies that there are no artifacts due to copying with GDI > 28: * @library java/awt/regtesthelpers `test result: Error. Can't find library: java/awt/regtesthelpers` Suggestion: * @library /java/awt/regtesthelpers ------------- PR Review: https://git.openjdk.org/jdk/pull/21045#pullrequestreview-2310896603 PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1763925919 From aivanov at openjdk.org Tue Sep 17 20:36:05 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 20:36:05 GMT Subject: RFR: 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP In-Reply-To: References: Message-ID: <0wS1qVCdabZKjxuRx3IBy3uA53nnKilyKQ8JaR9GsxQ=.0140fb6f-a835-4813-8df4-efb1ecd52c9a@github.com> On Fri, 13 Sep 2024 15:01:23 GMT, Nizar Benalla wrote: > Can I get a review for this doc-only change? I updated some links because the websites moved from HTTP to HTTPS. The redirects can cause some false-positives on tests. > > TIA Marked as reviewed by aivanov (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21001#pullrequestreview-2311011048 From aivanov at openjdk.org Tue Sep 17 20:43:05 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 17 Sep 2024 20:43:05 GMT Subject: RFR: 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP In-Reply-To: References: Message-ID: <2iIFO4MQXVuZz2qJzbCTZ3OxUE3hBEgGIp4FcIYZIVg=.4c8dc5df-05e2-412d-98f9-39cc0d8da77a@github.com> On Fri, 13 Sep 2024 15:01:23 GMT, Nizar Benalla wrote: > Can I get a review for this doc-only change? I updated some links because the websites moved from HTTP to HTTPS. The redirects can cause some false-positives on tests. > > TIA @nizarbenalla Looks you're a committer now. You have to issue the `/integrate` command again. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21001#issuecomment-2356883039 From ngubarkov at openjdk.org Tue Sep 17 21:02:19 2024 From: ngubarkov at openjdk.org (Nikita Gubarkov) Date: Tue, 17 Sep 2024 21:02:19 GMT Subject: RFR: 8339341: SurfaceManager cacheMap retains strong references [v3] In-Reply-To: <1ecWvJLiG54e0saEz_Jjz46gzxXnqsNDagdPQ3y_BN4=.27116e44-886b-405f-9d87-ec5e82e2fd20@github.com> References: <1ecWvJLiG54e0saEz_Jjz46gzxXnqsNDagdPQ3y_BN4=.27116e44-886b-405f-9d87-ec5e82e2fd20@github.com> Message-ID: > I moved SurfaceDataProxy cache into a separate class. > Now caching level is determined by placement of the SurfaceManager.ProxyCache object instead of a "proxy key". This cache "owns" proxies and therefore strong refs via them do not prevent the cache and GraphicsConfig from being detected as weakly reachable. Nikita Gubarkov has updated the pull request incrementally with one additional commit since the last revision: Move surface data proxy cache into base CGraphicsConfig ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20825/files - new: https://git.openjdk.org/jdk/pull/20825/files/3203ea9e..87866453 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20825&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20825&range=01-02 Stats: 23 lines in 3 files changed: 7 ins; 14 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/20825.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20825/head:pull/20825 PR: https://git.openjdk.org/jdk/pull/20825 From honkar at openjdk.org Tue Sep 17 23:43:07 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 17 Sep 2024 23:43:07 GMT Subject: RFR: 8340015: Open source several AWT focus tests - series 7 [v2] In-Reply-To: References: Message-ID: On Tue, 17 Sep 2024 04:06:52 GMT, Prasanta Sadhukhan wrote: >> Opensource few AWT focus tests > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > MToolkit removed LGTM other than the minor inline review comments test/jdk/java/awt/Focus/MinimizeNonfocusableWindowTest.java line 35: > 33: import java.awt.Frame; > 34: import java.awt.Panel; > 35: import java.awt.Toolkit; Unused import test/jdk/java/awt/Focus/MinimizeNonfocusableWindowTest.java line 59: > 57: .instructions(INSTRUCTIONS) > 58: .rows((int) INSTRUCTIONS.lines().count() + 5) > 59: .columns(35) Looks better formatted with the following: Suggestion: .rows((int) INSTRUCTIONS.lines().count() + 1) .columns(40) test/jdk/java/awt/Focus/MinimizeNonfocusableWindowTest.java line 66: > 64: > 65: private static List createTestUI() { > 66: Panel panel = new Panel(); Unused variable can be removed. test/jdk/java/awt/Focus/WindowDisposeFocusTest.java line 68: > 66: > 67: static public Window test(String[] args) { > 68: final JFrame frame = new JFrame(); Frame title is missing. Does setting a frame size look better here although the test is more to do with the dialogs? test/jdk/java/awt/Focus/bug6435715.java line 78: > 76: synchronized (this) { > 77: try { > 78: wait(3000); Is large wait time required here? I think it can be reduced. test/jdk/java/awt/Focus/bug6435715.java line 90: > 88: return fr; > 89: } > 90: extra new line can be removed. test/jdk/java/awt/Focus/bug6435715.java line 92: > 90: > 91: } > 92: extra new line can be removed. ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21008#pullrequestreview-2311274622 PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764150936 PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764158164 PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764151437 PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764211515 PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764216160 PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764215060 PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764215334 From honkar at openjdk.org Wed Sep 18 00:36:05 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 18 Sep 2024 00:36:05 GMT Subject: RFR: 8339902: Open source couple TextField related tests [v6] In-Reply-To: References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: On Tue, 17 Sep 2024 04:07:53 GMT, Alexander Zuev wrote: >> Clean up and open source five TextField related tests: >> java/awt/TextField/CaretPositionTest; >> java/awt/TextField/SetBoundsTest; >> java/awt/TextField/SetEchoCharTest4; >> java/awt/TextField/SetPasswordTest; >> java/awt/TextField/ZeroEchoCharTest > > Alexander Zuev has updated the pull request incrementally with one additional commit since the last revision: > > Update test/jdk/java/awt/TextField/CaretPositionTest/CaretPositionTest.java > > Co-authored-by: Harshitha Onkar Marked as reviewed by honkar (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21026#pullrequestreview-2311391489 From honkar at openjdk.org Wed Sep 18 01:00:10 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 18 Sep 2024 01:00:10 GMT Subject: RFR: 8340078: Open source several 2D tests In-Reply-To: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> References: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> Message-ID: On Tue, 17 Sep 2024 18:27:58 GMT, Phil Race wrote: > Open source 5 Java2D related rendering tests. Other than the following minor comments and the lib path mentioned here https://github.com/openjdk/jdk/pull/21045#discussion_r1763925919 , everything else looks good. test/jdk/sun/java2d/SunGraphics2D/RevalidateBug.java line 34: > 32: */ > 33: > 34: import java.awt.Color; Unused import. test/jdk/sun/java2d/SunGraphics2D/ScaledPolyTest.java line 31: > 29: > 30: import java.awt.Color; > 31: import static java.awt.Color.*; static import redudant here. test/jdk/sun/java2d/SunGraphics2D/ScaledPolyTest.java line 38: > 36: public class ScaledPolyTest { > 37: > 38: public static void main(String argv[]) { Suggestion: public static void main(String[] argv) { ------------- PR Review: https://git.openjdk.org/jdk/pull/21045#pullrequestreview-2311400355 PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1764249465 PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1764248906 PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1764249519 From honkar at openjdk.org Wed Sep 18 01:08:06 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 18 Sep 2024 01:08:06 GMT Subject: RFR: 8340015: Open source several AWT focus tests - series 7 [v2] In-Reply-To: References: Message-ID: On Tue, 17 Sep 2024 04:06:52 GMT, Prasanta Sadhukhan wrote: >> Opensource few AWT focus tests > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > MToolkit removed test/jdk/java/awt/Focus/MinimizeNonfocusableWindowTest.java line 61: > 59: .columns(35) > 60: .testUI(MinimizeNonfocusableWindowTest::createTestUI) > 61: .build() Suggestion: `positionTestUI()` has been recently added to PassFailJFrame https://github.com/openjdk/jdk/pull/21023 Since this test has multiple test UIs you can try the new option to position them if it doesn't require much re-work. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764255844 From psadhukhan at openjdk.org Wed Sep 18 03:18:47 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 18 Sep 2024 03:18:47 GMT Subject: RFR: 8340015: Open source several AWT focus tests - series 7 [v3] In-Reply-To: References: Message-ID: > Opensource few AWT focus tests Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Review comments ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21008/files - new: https://git.openjdk.org/jdk/pull/21008/files/a385e767..ef1d9d86 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21008&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21008&range=01-02 Stats: 9 lines in 3 files changed: 1 ins; 4 del; 4 mod Patch: https://git.openjdk.org/jdk/pull/21008.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21008/head:pull/21008 PR: https://git.openjdk.org/jdk/pull/21008 From psadhukhan at openjdk.org Wed Sep 18 03:18:48 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 18 Sep 2024 03:18:48 GMT Subject: RFR: 8340015: Open source several AWT focus tests - series 7 [v2] In-Reply-To: References: Message-ID: On Tue, 17 Sep 2024 23:40:49 GMT, Harshitha Onkar wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> MToolkit removed > > LGTM other than the minor inline review comments @honkar-jdk please rereview.. > test/jdk/java/awt/Focus/MinimizeNonfocusableWindowTest.java line 59: > >> 57: .instructions(INSTRUCTIONS) >> 58: .rows((int) INSTRUCTIONS.lines().count() + 5) >> 59: .columns(35) > > Looks better formatted with the following: > > Suggestion: > > .rows((int) INSTRUCTIONS.lines().count() + 1) > .columns(40) ok > test/jdk/java/awt/Focus/MinimizeNonfocusableWindowTest.java line 61: > >> 59: .columns(35) >> 60: .testUI(MinimizeNonfocusableWindowTest::createTestUI) >> 61: .build() > > Suggestion: > `positionTestUI()` has been recently added to PassFailJFrame https://github.com/openjdk/jdk/pull/21023 > Since this test has multiple test UIs you can try the new option to position them if it doesn't require much re-work. I will skip this one as it has already been positioned and I dont think the API will auto-position unlike testUI > test/jdk/java/awt/Focus/MinimizeNonfocusableWindowTest.java line 66: > >> 64: >> 65: private static List createTestUI() { >> 66: Panel panel = new Panel(); > > Unused variable can be removed. ok > test/jdk/java/awt/Focus/WindowDisposeFocusTest.java line 68: > >> 66: >> 67: static public Window test(String[] args) { >> 68: final JFrame frame = new JFrame(); > > Frame title is missing. > Does setting a frame size look better here although the test is more to do with the dialogs? ok > test/jdk/java/awt/Focus/bug6435715.java line 78: > >> 76: synchronized (this) { >> 77: try { >> 78: wait(3000); > > Is large wait time required here? I think it can be reduced. reduced.. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21008#issuecomment-2357409777 PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764335877 PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764336544 PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764335831 PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764336061 PR Review Comment: https://git.openjdk.org/jdk/pull/21008#discussion_r1764335944 From psadhukhan at openjdk.org Wed Sep 18 03:42:24 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 18 Sep 2024 03:42:24 GMT Subject: RFR: 8339895: Open source several AWT focus tests - series 3 Message-ID: Opensource few focus tests ------------- Commit messages: - 8339895: Open source several AWT focus tests - series 3 - 8339895: Open source several AWT focus tests - series 3 Changes: https://git.openjdk.org/jdk/pull/21050/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21050&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339895 Stats: 644 lines in 5 files changed: 644 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21050.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21050/head:pull/21050 PR: https://git.openjdk.org/jdk/pull/21050 From psadhukhan at openjdk.org Wed Sep 18 03:56:44 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 18 Sep 2024 03:56:44 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 Message-ID: Opensource few Focus tests ------------- Commit messages: - 8339906: Open source several AWT focus tests - series 4 Changes: https://git.openjdk.org/jdk/pull/21051/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21051&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339906 Stats: 506 lines in 4 files changed: 506 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21051.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21051/head:pull/21051 PR: https://git.openjdk.org/jdk/pull/21051 From honkar at openjdk.org Wed Sep 18 04:17:05 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 18 Sep 2024 04:17:05 GMT Subject: RFR: 8340015: Open source several AWT focus tests - series 7 [v3] In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 03:18:47 GMT, Prasanta Sadhukhan wrote: >> Opensource few AWT focus tests > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Review comments Marked as reviewed by honkar (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21008#pullrequestreview-2311572116 From psadhukhan at openjdk.org Wed Sep 18 04:17:47 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 18 Sep 2024 04:17:47 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v2] In-Reply-To: References: Message-ID: > Opensource few Focus tests Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Test automated ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21051/files - new: https://git.openjdk.org/jdk/pull/21051/files/42accbbe..0d9821fb Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21051&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21051&range=00-01 Stats: 50 lines in 1 file changed: 13 ins; 5 del; 32 mod Patch: https://git.openjdk.org/jdk/pull/21051.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21051/head:pull/21051 PR: https://git.openjdk.org/jdk/pull/21051 From jdv at openjdk.org Wed Sep 18 04:28:08 2024 From: jdv at openjdk.org (Jayathirth D V) Date: Wed, 18 Sep 2024 04:28:08 GMT Subject: RFR: JDK-8339962 : Open source AWT TextField tests - Set1 [v3] In-Reply-To: References: Message-ID: On Mon, 16 Sep 2024 22:59:35 GMT, Harshitha Onkar wrote: >> Following test are open-sourced. >> >> 1. test/jdk/java/awt/Label/ContainerValidateTest.java - Automated >> 2. test/jdk/java/awt/TextField/SetEchoCharTest.java - Automated >> 3. test/jdk/java/awt/TextField/SetEchoCharWordOpsTest.java - PassFailJFrame manual test > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > typo fix Marked as reviewed by jdv (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21005#pullrequestreview-2311581113 From abhiscxk at openjdk.org Wed Sep 18 04:30:33 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 04:30:33 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v2] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Review comment fix ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/62efa2b7..e99e2bad Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=00-01 Stats: 71 lines in 5 files changed: 10 ins; 22 del; 39 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From abhiscxk at openjdk.org Wed Sep 18 04:30:34 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 04:30:34 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v2] In-Reply-To: <0KuII4A9thnWARW5tWmwaEOw0c91WSN0WmjDqxYAY4Y=.a4c6f377-e5a1-4302-b389-67fdbb4aa157@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <0KuII4A9thnWARW5tWmwaEOw0c91WSN0WmjDqxYAY4Y=.a4c6f377-e5a1-4302-b389-67fdbb4aa157@github.com> Message-ID: On Tue, 17 Sep 2024 19:00:55 GMT, Alexey Ivanov wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> Review comment fix > > test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 48: > >> 46: private static final int NUM_WINDOWS = 400; >> 47: private static TestFrame firstFrame, testFrame; >> 48: private static Rectangle rect; > > `rect` is never used. Removed. > test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 86: > >> 84: testFrame.setTitle("Last Frame"); >> 85: } >> 86: } > > Suggestion: > > for (int i = 1; i < NUM_WINDOWS - 1; ++i) { > testFrame = new TestFrame("Running(" + i + ")..."); > testFrame.setVisible(false); > testFrame.dispose(); > } > > testFrame = new TestFrame("Last Frame"); > > > Doesn't it make the code clearer and shorter? Yeah.. updated now. > test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 98: > >> 96: firstFrame.setLocation(970, 350); >> 97: testFrame.setLocation(970, 510); >> 98: } > > Hard-coding coordinates is not the best solution. The workaround is to position the first frame using `PassFailJFrame` and then use the location of the first frame to position the second (test) frame. > Suggestion: > > @Override > public void componentShown(ComponentEvent e) { > PassFailJFrame.positionTestWindow(firstFrame, > PassFailJFrame.Position.HORIZONTAL); > testFrame.setLocation(firstFrame.getX(), > firstFrame.getY() + firstFrame.getWidth() + 8); > } I gave a try to get PassFailFrame position but some error occured and then hard coded. I agree hard-coding is not a best solution and thanks for suggesting the other way around. A bit of correction in setting the testFrame location, y co-ordinate should be firstFrame.getY() + firstFrame.getHeight() + 8 else the gap is more between firstFrame and testFrame. > test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 103: > >> 101: } >> 102: >> 103: class TestFrame extends Frame { > > Could you please make `TestFrame` a static nested class inside `LotsOfMenuItemsTest`. > > I avoids conflicts when you mark a folder as Test Source in an IDE and that folder contains multiple tests. > > In fact, you don't need to extend `Frame` at all: create an instance of the `Frame` class and add menu bar and set the size of the frame. However, I agree, keeping this stuff in constructor simplifies test. Updated. > test/jdk/java/awt/MenuItem/MenuSetFontTest.java line 54: > >> 52: .rows((int) INSTRUCTIONS.lines().count() + 2) >> 53: .columns(40) >> 54: .testTimeOut(5) > > You may omit the default timeout. Removed from all tests. >Wouldn't it be better to keep the logical and visual order of the buttons consistent? Or is the intention to set the label to "text" after null followed by ""? I Just left them as it was before conversion. > test/jdk/java/awt/MenuItem/UnicodeMenuItemTest.java line 81: > >> 79: >> 80: MenuItem mi6 = new MenuItem("\u012d"); >> 81: m.add(mi6); > > The numbering is weird here: 2, 6, 7 ? but there's no `mi1` or `m3`? Ok.. Updated. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764371719 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764370259 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764371347 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764369981 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764372023 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764372474 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764372546 From psadhukhan at openjdk.org Wed Sep 18 04:32:50 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 18 Sep 2024 04:32:50 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v3] In-Reply-To: References: Message-ID: <-SetXAnjt6NZPmvVPxUNqm09A2PZE3F8Hjo2iorxkcg=.81418686-ae75-4558-a7f0-0592f416ab04@github.com> > Opensource few Focus tests Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: jcheck ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21051/files - new: https://git.openjdk.org/jdk/pull/21051/files/0d9821fb..509ccf65 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21051&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21051&range=01-02 Stats: 4 lines in 1 file changed: 0 ins; 0 del; 4 mod Patch: https://git.openjdk.org/jdk/pull/21051.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21051/head:pull/21051 PR: https://git.openjdk.org/jdk/pull/21051 From psadhukhan at openjdk.org Wed Sep 18 04:36:14 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 18 Sep 2024 04:36:14 GMT Subject: Integrated: 8340015: Open source several AWT focus tests - series 7 In-Reply-To: References: Message-ID: On Mon, 16 Sep 2024 04:16:01 GMT, Prasanta Sadhukhan wrote: > Opensource few AWT focus tests This pull request has now been integrated. Changeset: 147e3007 Author: Prasanta Sadhukhan URL: https://git.openjdk.org/jdk/commit/147e30070d8adbe65453a3a9316b9324890ea25f Stats: 266 lines in 4 files changed: 266 ins; 0 del; 0 mod 8340015: Open source several AWT focus tests - series 7 Reviewed-by: honkar ------------- PR: https://git.openjdk.org/jdk/pull/21008 From abhiscxk at openjdk.org Wed Sep 18 04:43:50 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 04:43:50 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v3] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Add requires tag ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/e99e2bad..086c47b1 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=01-02 Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From abhiscxk at openjdk.org Wed Sep 18 06:22:34 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 06:22:34 GMT Subject: RFR: 8340084: Open source AWT Frame related tests Message-ID: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> Few AWT Frame related tests are converted from applet to manual and moved to open. ------------- Commit messages: - Tests converted from applet and open sourced Changes: https://git.openjdk.org/jdk/pull/21052/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21052&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340084 Stats: 396 lines in 5 files changed: 396 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21052.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21052/head:pull/21052 PR: https://git.openjdk.org/jdk/pull/21052 From jpai at openjdk.org Wed Sep 18 09:12:18 2024 From: jpai at openjdk.org (Jaikiran Pai) Date: Wed, 18 Sep 2024 09:12:18 GMT Subject: RFR: 8340360: Update -mx to -Xmx in UnninstallUIMemoryLeaks test Message-ID: Can I please get a review of this test-only change which replaces the use of the outdated "-mx" option with the "-Xmx" option when launching the java processes in this test? This test was missed out from one of the earlier integrated PR. The test continues to pass after this change. ------------- Commit messages: - 8340360:Update -mx to -Xmx in UnninstallUIMemoryLeaks test Changes: https://git.openjdk.org/jdk/pull/21053/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21053&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340360 Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/21053.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21053/head:pull/21053 PR: https://git.openjdk.org/jdk/pull/21053 From aivanov at openjdk.org Wed Sep 18 10:12:09 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 10:12:09 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v3] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <0KuII4A9thnWARW5tWmwaEOw0c91WSN0WmjDqxYAY4Y=.a4c6f377-e5a1-4302-b389-67fdbb4aa157@github.com> Message-ID: On Wed, 18 Sep 2024 04:25:55 GMT, Abhishek Kumar wrote: >> test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 98: >> >>> 96: firstFrame.setLocation(970, 350); >>> 97: testFrame.setLocation(970, 510); >>> 98: } >> >> Hard-coding coordinates is not the best solution. The workaround is to position the first frame using `PassFailJFrame` and then use the location of the first frame to position the second (test) frame. >> Suggestion: >> >> @Override >> public void componentShown(ComponentEvent e) { >> PassFailJFrame.positionTestWindow(firstFrame, >> PassFailJFrame.Position.HORIZONTAL); >> testFrame.setLocation(firstFrame.getX(), >> firstFrame.getY() + firstFrame.getWidth() + 8); >> } > > I gave a try to get PassFailFrame position but some error occured and then hard coded. I agree hard-coding is not a best solution and thanks for suggesting the other way around. A bit of correction in setting the testFrame location, y co-ordinate should be firstFrame.getY() + firstFrame.getHeight() + 8 else the gap is more between firstFrame and testFrame. Yes, it should be `getHeight()`. I initially used `getSize().height` and then changed it to `getHeight()` and must have selected the wrong suggestion in IDE and ended up with `getWidth()` instead. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764784210 From aivanov at openjdk.org Wed Sep 18 10:12:09 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 10:12:09 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v3] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <0KuII4A9thnWARW5tWmwaEOw0c91WSN0WmjDqxYAY4Y=.a4c6f377-e5a1-4302-b389-67fdbb4aa157@github.com> Message-ID: On Wed, 18 Sep 2024 10:07:13 GMT, Alexey Ivanov wrote: >> I gave a try to get PassFailFrame position but some error occured and then hard coded. I agree hard-coding is not a best solution and thanks for suggesting the other way around. A bit of correction in setting the testFrame location, y co-ordinate should be firstFrame.getY() + firstFrame.getHeight() + 8 else the gap is more between firstFrame and testFrame. > > Yes, it should be `getHeight()`. I initially used `getSize().height` and then changed it to `getHeight()` and must have selected the wrong suggestion in IDE and ended up with `getWidth()` instead. Actually, I thought `.positionTestWindow` would be called for the first window automatically, then you can position other windows based on the assigned location. Eventually, it's not called at all if a list of windows is created. I'll submit a bug for it. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764786778 From abhiscxk at openjdk.org Wed Sep 18 10:15:06 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 10:15:06 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v3] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <0KuII4A9thnWARW5tWmwaEOw0c91WSN0WmjDqxYAY4Y=.a4c6f377-e5a1-4302-b389-67fdbb4aa157@github.com> Message-ID: On Wed, 18 Sep 2024 10:09:09 GMT, Alexey Ivanov wrote: > Actually, I thought .positionTestWindow would be called for the first window automatically No. both window were overlapped near top-left corner. > I'll submit a bug for it. Ok. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764790896 From aivanov at openjdk.org Wed Sep 18 10:37:12 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 10:37:12 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v3] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Wed, 18 Sep 2024 04:43:50 GMT, Abhishek Kumar wrote: >> Few AWT MenuItem related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Add requires tag Marked as reviewed by aivanov (Reviewer). test/jdk/java/awt/MenuItem/GiantFontTest.java line 43: > 41: String INSTRUCTIONS = """ > 42: A frame with one menu will appear. > 43: On Solaris, the menu's font should be quite large (48 point). What about Linux? Solaris isn't supported by JDK any more. Here, you may want to clarify where it's referring to a menu (item) on the menu bar and where the instructions refer to popup menu shown after activating the item on the menu bar. Just to make the instructions clearer. test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 51: > 49: LotsOfMenuItemsTest obj = new LotsOfMenuItemsTest(); > 50: String INSTRUCTIONS = """ > 51: This test creates lots of frames with menubars. Suggestion: This test creates lots of frames with menu bars. It's usually spelt with a space. ------------- PR Review: https://git.openjdk.org/jdk/pull/21029#pullrequestreview-2312285523 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764818954 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764810457 From abhiscxk at openjdk.org Wed Sep 18 10:51:49 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 10:51:49 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v4] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: <_iAKIE0Ok4e_OjNBXwFLpABZJg3E54u93lO0_ovyVwc=.f5020b81-e55f-4360-bcc6-40b04ee194f4@github.com> > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Test instruction update ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/086c47b1..b13b2576 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=02-03 Stats: 5 lines in 2 files changed: 2 ins; 0 del; 3 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From abhiscxk at openjdk.org Wed Sep 18 10:51:50 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 10:51:50 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v3] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Wed, 18 Sep 2024 10:33:56 GMT, Alexey Ivanov wrote: > What about Linux? Solaris isn't supported by JDK any more. Tested on linux. Menu's font are large and on Windows it is normal size. > Here, you may want to clarify where it's referring to a menu (item) on the menu bar and where the instructions refer to popup menu shown after activating the item on the menu bar. Just to make the instructions clearer. It is about the menu present on menu bar. Modified the test instructions. > test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 51: > >> 49: LotsOfMenuItemsTest obj = new LotsOfMenuItemsTest(); >> 50: String INSTRUCTIONS = """ >> 51: This test creates lots of frames with menubars. > > Suggestion: > > This test creates lots of frames with menu bars. > > It's usually spelt with a space. Ok.. updated. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764836399 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764834778 From aivanov at openjdk.org Wed Sep 18 10:55:05 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 10:55:05 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v4] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <0KuII4A9thnWARW5tWmwaEOw0c91WSN0WmjDqxYAY4Y=.a4c6f377-e5a1-4302-b389-67fdbb4aa157@github.com> Message-ID: On Wed, 18 Sep 2024 10:12:27 GMT, Abhishek Kumar wrote: >> Actually, I thought `.positionTestWindow` would be called for the first window automatically, then you can position other windows based on the assigned location. Eventually, it's not called at all if a list of windows is created. >> >> I'll submit a bug for it. > >> Actually, I thought .positionTestWindow would be called for the first window automatically > > No. both window were overlapped near top-left corner. > >> I'll submit a bug for it. > > Ok. > Actually, I thought `.positionTestWindow` would be called for the first window automatically, then you can position other windows based on the assigned location. Eventually, it's not called at all if a list of windows is created. > > I'll submit a bug for it. Submitted [JDK-8340365](https://bugs.openjdk.org/browse/JDK-8340365): _Position the first window of a window list_. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764840936 From serb at openjdk.org Wed Sep 18 10:56:05 2024 From: serb at openjdk.org (Sergey Bylokhov) Date: Wed, 18 Sep 2024 10:56:05 GMT Subject: RFR: 8340360: Update -mx to -Xmx in UnninstallUIMemoryLeaks test In-Reply-To: References: Message-ID: <3ACnDuRZdnHN5vyAGo1-X3NXWe1StetPWeWzvFNnDHI=.e4b0582d-a373-4788-81cf-eb35899b3c0a@github.com> On Wed, 18 Sep 2024 09:06:04 GMT, Jaikiran Pai wrote: > Can I please get a review of this test-only change which replaces the use of the outdated "-mx" option with the "-Xmx" option when launching the java processes in this test? This test was missed out from one of the earlier integrated PR. > > The test continues to pass after this change. Marked as reviewed by serb (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21053#pullrequestreview-2312337736 From aivanov at openjdk.org Wed Sep 18 11:09:12 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 11:09:12 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v4] In-Reply-To: <_iAKIE0Ok4e_OjNBXwFLpABZJg3E54u93lO0_ovyVwc=.f5020b81-e55f-4360-bcc6-40b04ee194f4@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <_iAKIE0Ok4e_OjNBXwFLpABZJg3E54u93lO0_ovyVwc=.f5020b81-e55f-4360-bcc6-40b04ee194f4@github.com> Message-ID: On Wed, 18 Sep 2024 10:51:49 GMT, Abhishek Kumar wrote: >> Few AWT MenuItem related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Test instruction update Marked as reviewed by aivanov (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21029#pullrequestreview-2312364296 From nbenalla at openjdk.org Wed Sep 18 11:10:27 2024 From: nbenalla at openjdk.org (Nizar Benalla) Date: Wed, 18 Sep 2024 11:10:27 GMT Subject: Integrated: 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP In-Reply-To: References: Message-ID: On Fri, 13 Sep 2024 15:01:23 GMT, Nizar Benalla wrote: > Can I get a review for this doc-only change? I updated some links because the websites moved from HTTP to HTTPS. The redirects can cause some false-positives on tests. > > TIA This pull request has now been integrated. Changeset: 45e438f3 Author: Nizar Benalla URL: https://git.openjdk.org/jdk/commit/45e438f3f470c4af9d5066a4ae680f819bb3cde0 Stats: 9 lines in 5 files changed: 0 ins; 0 del; 9 mod 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP Reviewed-by: prr, honkar, aivanov ------------- PR: https://git.openjdk.org/jdk/pull/21001 From nbenalla at openjdk.org Wed Sep 18 11:10:27 2024 From: nbenalla at openjdk.org (Nizar Benalla) Date: Wed, 18 Sep 2024 11:10:27 GMT Subject: RFR: 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP In-Reply-To: References: Message-ID: On Fri, 13 Sep 2024 15:01:23 GMT, Nizar Benalla wrote: > Can I get a review for this doc-only change? I updated some links because the websites moved from HTTP to HTTPS. The redirects can cause some false-positives on tests. > > TIA I assumed this would be automatically merged once I became a committer. Thank you all for the reviews! ------------- PR Comment: https://git.openjdk.org/jdk/pull/21001#issuecomment-2358175639 From aivanov at openjdk.org Wed Sep 18 11:16:15 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 11:16:15 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v4] In-Reply-To: <_iAKIE0Ok4e_OjNBXwFLpABZJg3E54u93lO0_ovyVwc=.f5020b81-e55f-4360-bcc6-40b04ee194f4@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <_iAKIE0Ok4e_OjNBXwFLpABZJg3E54u93lO0_ovyVwc=.f5020b81-e55f-4360-bcc6-40b04ee194f4@github.com> Message-ID: On Wed, 18 Sep 2024 10:51:49 GMT, Abhishek Kumar wrote: >> Few AWT MenuItem related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Test instruction update test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 83: > 81: } > 82: > 83: public void componentShown(ComponentEvent e) { Suggestion: @Override public void componentShown(ComponentEvent e) { Please add `@Override` annotation where applicable. It makes it explicit that a method implements an interface or overrides a method of a superclass. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764865262 From aivanov at openjdk.org Wed Sep 18 11:24:06 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 11:24:06 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v4] In-Reply-To: <_iAKIE0Ok4e_OjNBXwFLpABZJg3E54u93lO0_ovyVwc=.f5020b81-e55f-4360-bcc6-40b04ee194f4@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <_iAKIE0Ok4e_OjNBXwFLpABZJg3E54u93lO0_ovyVwc=.f5020b81-e55f-4360-bcc6-40b04ee194f4@github.com> Message-ID: On Wed, 18 Sep 2024 10:51:49 GMT, Abhishek Kumar wrote: >> Few AWT MenuItem related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Test instruction update Changes requested by aivanov (Reviewer). test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 65: > 63: .rows((int) INSTRUCTIONS.lines().count() + 2) > 64: .columns(40) > 65: .testUI(obj.createAndShowUI()) Suggestion: .testUI(obj::createAndShowUI) You should pass a method reference to call `createAndShowUI` on EDT. When you pass a method reference, you delegate the job of calling the method to `PassFailJFrame` and it calls it on EDT. If you use `obj.createAndShowUI`, you pass the result of calling `obj.createAndShowUI` ? the list of windows ? to `PassFailJFrame`, the method gets called on the main thread. It's a subtle but important difference. I believe we're trying to ensure all components are created and accessed on EDT, both AWT and Swing, unless the test specifically verifies AWT components and needs to ensure these components behave as they should in a concurrent environment. ------------- PR Review: https://git.openjdk.org/jdk/pull/21029#pullrequestreview-2312386493 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764872438 From abhiscxk at openjdk.org Wed Sep 18 11:32:55 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 11:32:55 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v4] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <_iAKIE0Ok4e_OjNBXwFLpABZJg3E54u93lO0_ovyVwc=.f5020b81-e55f-4360-bcc6-40b04ee194f4@github.com> Message-ID: On Wed, 18 Sep 2024 11:18:19 GMT, Alexey Ivanov wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> Test instruction update > > test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 65: > >> 63: .rows((int) INSTRUCTIONS.lines().count() + 2) >> 64: .columns(40) >> 65: .testUI(obj.createAndShowUI()) > > Suggestion: > > .testUI(obj::createAndShowUI) > > You should pass a method reference to call `createAndShowUI` on EDT. > > When you pass a method reference, you delegate the job of calling the method to `PassFailJFrame` and it calls it on EDT. > > If you use `obj.createAndShowUI`, you pass the result of calling `obj.createAndShowUI` ? the list of windows ? to `PassFailJFrame`, the method gets called on the main thread. > > It's a subtle but important difference. I believe we're trying to ensure all components are created and accessed on EDT, both AWT and Swing, unless the test specifically verifies AWT components and needs to ensure these components behave as they should in a concurrent environment. Updated. > test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 83: > >> 81: } >> 82: >> 83: public void componentShown(ComponentEvent e) { > > Suggestion: > > @Override > public void componentShown(ComponentEvent e) { > > Please add `@Override` annotation where applicable. It makes it explicit that a method implements an interface or overrides a method of a superclass. Updated. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764885524 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764885276 From abhiscxk at openjdk.org Wed Sep 18 11:32:55 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 11:32:55 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v5] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Review comment update ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/b13b2576..02e1a2f9 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=04 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=03-04 Stats: 2 lines in 1 file changed: 1 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From aivanov at openjdk.org Wed Sep 18 11:43:25 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 11:43:25 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v5] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Wed, 18 Sep 2024 11:32:55 GMT, Abhishek Kumar wrote: >> Few AWT MenuItem related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Review comment update Looks good to me. There's still a question with Solaris/Linux and macOS. ------------- Marked as reviewed by aivanov (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21029#pullrequestreview-2312434941 From aivanov at openjdk.org Wed Sep 18 11:43:25 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 11:43:25 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v3] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Wed, 18 Sep 2024 10:48:23 GMT, Abhishek Kumar wrote: > > What about Linux? Solaris isn't supported by JDK any more. > > Tested on linux. Menu's font are large and on Windows it is normal size. I'm for replacing Solaris with Linux. There's no way a test would be run on Solaris using the most recent version of Java. When backporting, the text could be updated to ?on Linux _and Solaris_?. What about macOS? The test can be run there. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764901466 From abhiscxk at openjdk.org Wed Sep 18 11:55:05 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 11:55:05 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v3] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Wed, 18 Sep 2024 11:40:14 GMT, Alexey Ivanov wrote: >What about macOS? The test can be run there. On macOS, it is of the normal font like windows. Should I update the instructions for macOS as well? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764916147 From abhiscxk at openjdk.org Wed Sep 18 12:10:00 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 12:10:00 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v6] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: test instruction update ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/02e1a2f9..e1366aaa Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=05 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=04-05 Stats: 3 lines in 1 file changed: 1 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From abhiscxk at openjdk.org Wed Sep 18 12:10:01 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 12:10:01 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v3] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Wed, 18 Sep 2024 11:52:16 GMT, Abhishek Kumar wrote: >>> > What about Linux? Solaris isn't supported by JDK any more. >>> >>> Tested on linux. Menu's font are large and on Windows it is normal size. >> >> I'm for replacing Solaris with Linux. There's no way a test would be run on Solaris using the most recent version of Java. >> >> When backporting, the text could be updated to ?on Linux _and Solaris_?. >> >> What about macOS? The test can be run there. > >>What about macOS? The test can be run there. > > On macOS, it is of the normal font like windows. Should I update the instructions for macOS as well? >I'm for replacing Solaris with Linux. There's no way a test would be run on Solaris using the most recent version of Java. When backporting, the text could be updated to ?on Linux and Solaris?. What about macOS? The test can be run there. Replaced Solaris with Linux and updated the test instruction for MacOS as well. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764934721 From aivanov at openjdk.org Wed Sep 18 12:10:13 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 12:10:13 GMT Subject: RFR: 8340365: Position the first window of a window list Message-ID: Support of multiple test UI windows in `PassFailJFrame` is still evolving. After [JDK-8340210](https://bugs.openjdk.org/browse/JDK-8340210), the `Builder` has a method `positionTestUI` to supply an implementation of the `PositionWindows` interface which handles the positioning of all test UI windows created. If `PositionWindows` is not provided, all the test UI windows are left with the default coordinates: (0, 0). If `PassFailJFrame` called `positionTestWindow` for the first window, it would allow the test developer to position other windows based on the position of the first one. This issue was raised in #21029 in [this thread of comments](https://github.com/openjdk/jdk/pull/21029#discussion_r1763744407). To make it easier to position multiple test UI windows without implementing the `PositionWindows` interface, the `PassFailJFrame` should position the first window of the list. The `LotsOfMenuItemsTest.java` test in #21029 had to hard-code the coordinates or use `PassFailJFrame.positionTestWindow` explicitly in its `ComponentListener.componentShown`. With the proposed change in this pull request, the implementation would use `ComponentListener.componentMoved`: @Override public void componentMoved(ComponentEvent e) { testFrame.setLocation(firstFrame.getX(), firstFrame.getY() + firstFrame.getHeight() + 8); } This has the advantage in that the test UI windows don't flicker for a short time in the upper left corner of the screen; and the developer has to handle only positioning the second window (frame). However, this has a funny effect: if you move the first frame with mouse or in any other way, the second frame follows. To avoid such kind of behaviour, call `removeComponentListener` in the handler. @honkar-jdk, @azvegint, could you take a look? ------------- Commit messages: - 8340365: Position the first window of a window list Changes: https://git.openjdk.org/jdk/pull/21057/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21057&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340365 Stats: 3 lines in 1 file changed: 0 ins; 2 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21057.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21057/head:pull/21057 PR: https://git.openjdk.org/jdk/pull/21057 From aivanov at openjdk.org Wed Sep 18 12:13:06 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 12:13:06 GMT Subject: RFR: 8340365: Position the first window of a window list In-Reply-To: References: Message-ID: <0PgNbnZZEv-VkfG9LD2fS-VzvOAZxoRBp_So1_KJBoc=.03da7ba1-e5f5-472e-a2bb-1eda627eed45@github.com> On Wed, 18 Sep 2024 12:05:22 GMT, Alexey Ivanov wrote: > Support of multiple test UI windows in `PassFailJFrame` is still evolving. After [JDK-8340210](https://bugs.openjdk.org/browse/JDK-8340210), the `Builder` has a method `positionTestUI` to supply an implementation of the `PositionWindows` interface which handles the positioning of all test UI windows created. > > If `PositionWindows` is not provided, all the test UI windows are left with the default coordinates: (0, 0). > > If `PassFailJFrame` called `positionTestWindow` for the first window, it would allow the test developer to position other windows based on the position of the first one. > > This issue was raised in #21029 in [this thread of comments](https://github.com/openjdk/jdk/pull/21029#discussion_r1763744407). > > To make it easier to position multiple test UI windows without implementing the `PositionWindows` interface, the `PassFailJFrame` should position the first window of the list. > > The `LotsOfMenuItemsTest.java` test in #21029 had to hard-code the coordinates or use `PassFailJFrame.positionTestWindow` explicitly in its `ComponentListener.componentShown`. > > With the proposed change in this pull request, the implementation would use `ComponentListener.componentMoved`: > > > @Override > public void componentMoved(ComponentEvent e) { > testFrame.setLocation(firstFrame.getX(), > firstFrame.getY() + firstFrame.getHeight() + 8); > } > > > This has the advantage in that the test UI windows don't flicker for a short time in the upper left corner of the screen; and the developer has to handle only positioning the second window (frame). > > However, this has a funny effect: if you move the first frame with mouse or in any other way, the second frame follows. To avoid such kind of behaviour, call `removeComponentListener` in the handler. > > @honkar-jdk, @azvegint, could you take a look? test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 354: > 352: Window window = builder.testWindows.get(0); > 353: positionTestWindow(window, builder.position); > 354: } The previous `else` branch was used where `builder.testWindows` contained more than 1 window. This becomes redundant. The conditions `builder.testWindows.size() >= 1` or `!builder.testWindows.isEmpty()` are always `true` when this code is reached, therefore I used a simple `else`-block instead. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21057#discussion_r1764941102 From aivanov at openjdk.org Wed Sep 18 12:23:15 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 12:23:15 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v3] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: <5IgdkOJDsenENTPRYyePD-Y1psoJ3LkHm5NodWAziFc=.0651cc50-582e-4dc7-a599-50a0bf230763@github.com> On Wed, 18 Sep 2024 12:06:31 GMT, Abhishek Kumar wrote: >>>What about macOS? The test can be run there. >> >> On macOS, it is of the normal font like windows. Should I update the instructions for macOS as well? > >>I'm for replacing Solaris with Linux. There's no way a test would be run on Solaris using the most recent version of Java. > When backporting, the text could be updated to ?on Linux and Solaris?. > What about macOS? The test can be run there. > > Replaced Solaris with Linux and updated the test instruction for MacOS as well. > > What about macOS? The test can be run there. > > On macOS, it is of the normal font like windows. Should I update the instructions for macOS as well? Looks like the test isn't applicable to macOS at all. AWT menu bar integrates with the macOS native menu bar at the top, the application can't seem to control how menu is rendered there, so both the item on the menu bar and items in the popup menu remain of regular font size. On Windows, the menu items in the popup menu use the large font. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764954422 From abhiscxk at openjdk.org Wed Sep 18 12:29:08 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 12:29:08 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v3] In-Reply-To: <5IgdkOJDsenENTPRYyePD-Y1psoJ3LkHm5NodWAziFc=.0651cc50-582e-4dc7-a599-50a0bf230763@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <5IgdkOJDsenENTPRYyePD-Y1psoJ3LkHm5NodWAziFc=.0651cc50-582e-4dc7-a599-50a0bf230763@github.com> Message-ID: On Wed, 18 Sep 2024 12:20:21 GMT, Alexey Ivanov wrote: >>>I'm for replacing Solaris with Linux. There's no way a test would be run on Solaris using the most recent version of Java. >> When backporting, the text could be updated to ?on Linux and Solaris?. >> What about macOS? The test can be run there. >> >> Replaced Solaris with Linux and updated the test instruction for MacOS as well. > >> > What about macOS? The test can be run there. >> >> On macOS, it is of the normal font like windows. Should I update the instructions for macOS as well? > > Looks like the test isn't applicable to macOS at all. AWT menu bar integrates with the macOS native menu bar at the top, the application can't seem to control how menu is rendered there, so both the item on the menu bar and items in the popup menu remain of regular font size. > > On Windows, the menu items in the popup menu use the large font. Yes, by default apple uses native menu bar option to show the application menubar. >On Windows, the menu items in the popup menu use the large font. In Linux also, the menu items in the popup menu use the large font. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764964184 From aivanov at openjdk.org Wed Sep 18 12:29:10 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 12:29:10 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v6] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <0KuII4A9thnWARW5tWmwaEOw0c91WSN0WmjDqxYAY4Y=.a4c6f377-e5a1-4302-b389-67fdbb4aa157@github.com> Message-ID: On Wed, 18 Sep 2024 10:52:28 GMT, Alexey Ivanov wrote: > > Actually, I thought `.positionTestWindow` would be called for the first window automatically, then you can position other windows based on the assigned location. Eventually, it's not called at all if a list of windows is created. > > I'll submit a bug for it. > > Submitted [JDK-8340365](https://bugs.openjdk.org/browse/JDK-8340365): _Position the first window of a window list_. If that had been the case, you would've used `componentMoved` and the code would've been shorter by 1 line as shown in #21057: @Override public void componentMoved(ComponentEvent e) { testFrame.setLocation(firstFrame.getX(), firstFrame.getY() + firstFrame.getHeight() + 8); } ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764963245 From aivanov at openjdk.org Wed Sep 18 12:33:09 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 12:33:09 GMT Subject: RFR: 8339845: Update color.org and wapforum.org links to use HTTPS instead of HTTP In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 11:07:29 GMT, Nizar Benalla wrote: > I assumed this would be automatically merged once I became a committer. No, the Skara bots don't revisit the PRs after the OpenJDK Census is changed. You weren't a committer when you issued the `/integrate` command, so it required a sponsor. By the time I decided to sponsor, you're already a committer, and no one can sponsor integrating any more. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21001#issuecomment-2358341219 From abhiscxk at openjdk.org Wed Sep 18 12:35:35 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 12:35:35 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v7] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: test instruction update ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/e1366aaa..987ac818 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=06 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=05-06 Stats: 5 lines in 1 file changed: 4 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From abhiscxk at openjdk.org Wed Sep 18 12:35:35 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 12:35:35 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v3] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <5IgdkOJDsenENTPRYyePD-Y1psoJ3LkHm5NodWAziFc=.0651cc50-582e-4dc7-a599-50a0bf230763@github.com> Message-ID: <9T0kY99C99RxovPsHJprjNhFbXd2YK8ma8llY4YSAVs=.aceae5c8-e8a1-4e17-ab7d-5b86381a3972@github.com> On Wed, 18 Sep 2024 12:26:53 GMT, Abhishek Kumar wrote: >>> > What about macOS? The test can be run there. >>> >>> On macOS, it is of the normal font like windows. Should I update the instructions for macOS as well? >> >> Looks like the test isn't applicable to macOS at all. AWT menu bar integrates with the macOS native menu bar at the top, the application can't seem to control how menu is rendered there, so both the item on the menu bar and items in the popup menu remain of regular font size. >> >> On Windows, the menu items in the popup menu use the large font. > > Yes, by default apple uses native menu bar option to show the application menubar. > >>On Windows, the menu items in the popup menu use the large font. > > In Linux also, the menu items in the popup menu use the large font. Updated the test instruction and also captured menu items font size. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764967902 From abhiscxk at openjdk.org Wed Sep 18 12:35:35 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 12:35:35 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v7] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <0KuII4A9thnWARW5tWmwaEOw0c91WSN0WmjDqxYAY4Y=.a4c6f377-e5a1-4302-b389-67fdbb4aa157@github.com> Message-ID: On Wed, 18 Sep 2024 12:26:19 GMT, Alexey Ivanov wrote: >>> Actually, I thought `.positionTestWindow` would be called for the first window automatically, then you can position other windows based on the assigned location. Eventually, it's not called at all if a list of windows is created. >>> >>> I'll submit a bug for it. >> >> Submitted [JDK-8340365](https://bugs.openjdk.org/browse/JDK-8340365): _Position the first window of a window list_. > >> > Actually, I thought `.positionTestWindow` would be called for the first window automatically, then you can position other windows based on the assigned location. Eventually, it's not called at all if a list of windows is created. >> > I'll submit a bug for it. >> >> Submitted [JDK-8340365](https://bugs.openjdk.org/browse/JDK-8340365): _Position the first window of a window list_. > > If that had been the case, you would've used `componentMoved` and the code would've been shorter by 1 line as shown in #21057: > > > @Override > public void componentMoved(ComponentEvent e) { > testFrame.setLocation(firstFrame.getX(), > firstFrame.getY() + firstFrame.getHeight() + 8); > } I saw your PR and to reflect the changes here https://github.com/openjdk/jdk/pull/21057 should get integrated first. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1764971651 From abhiscxk at openjdk.org Wed Sep 18 12:38:34 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 12:38:34 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v8] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: added requires jtreg tag ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/987ac818..71ff7c28 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=07 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=06-07 Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From psadhukhan at openjdk.org Wed Sep 18 13:32:40 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 18 Sep 2024 13:32:40 GMT Subject: RFR: 8340271: Open source several AWT Robot tests Message-ID: Opensource few Robot tests ------------- Commit messages: - 8340271: Open source several AWT Robot tests - 8340271: Open source several AWT Robot tests Changes: https://git.openjdk.org/jdk/pull/21062/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21062&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340271 Stats: 184 lines in 2 files changed: 184 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21062.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21062/head:pull/21062 PR: https://git.openjdk.org/jdk/pull/21062 From aivanov at openjdk.org Wed Sep 18 14:55:07 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 14:55:07 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v8] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Wed, 18 Sep 2024 12:38:34 GMT, Abhishek Kumar wrote: >> Few AWT MenuItem related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > added requires jtreg tag The instructions now look good to me. There are lots of trailing whitespace characters though. test/jdk/java/awt/MenuItem/GiantFontTest.java line 2: > 1: /* > 2: * Copyright (c) 2007, 2024, Oracle and/or its affiliates. All rights reserved. Suggestion: * Copyright (c) 2002, 2024, Oracle and/or its affiliates. All rights reserved. This test was written in 2002 for [JDK-4700350](https://bugs.openjdk.org/browse/JDK-4700350). Could you also add `@bug 4700350` to jtreg tags? https://github.com/openjdk/jdk/blob/ae39a6603c6c33a36dce30c3290a634b08a6bf05/src/java.desktop/windows/native/libawt/windows/awt_MenuItem.cpp#L513-L516 ------------- Changes requested by aivanov (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21029#pullrequestreview-2312945687 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1765206356 From abhiscxk at openjdk.org Wed Sep 18 15:00:39 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 15:00:39 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v9] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: copyright year, whitespace error and bugid update ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/71ff7c28..f39bb5b4 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=08 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=07-08 Stats: 3 lines in 1 file changed: 1 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From abhiscxk at openjdk.org Wed Sep 18 15:00:39 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 15:00:39 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v8] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Wed, 18 Sep 2024 14:50:51 GMT, Alexey Ivanov wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> added requires jtreg tag > > test/jdk/java/awt/MenuItem/GiantFontTest.java line 2: > >> 1: /* >> 2: * Copyright (c) 2007, 2024, Oracle and/or its affiliates. All rights reserved. > > Suggestion: > > * Copyright (c) 2002, 2024, Oracle and/or its affiliates. All rights reserved. > > This test was written in 2002 for [JDK-4700350](https://bugs.openjdk.org/browse/JDK-4700350). > > Could you also add `@bug 4700350` to jtreg tags? > > https://github.com/openjdk/jdk/blob/ae39a6603c6c33a36dce30c3290a634b08a6bf05/src/java.desktop/windows/native/libawt/windows/awt_MenuItem.cpp#L513-L516 Thanks for finding the bugId. I was unable to find the details. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1765225031 From aivanov at openjdk.org Wed Sep 18 15:00:39 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 15:00:39 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v8] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Wed, 18 Sep 2024 12:38:34 GMT, Abhishek Kumar wrote: >> Few AWT MenuItem related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > added requires jtreg tag test/jdk/java/awt/MenuItem/GiantFontTest.java line 49: > 47: > 48: On Windows, the menu's (present on menu bar) font > 49: should be normal size. I believe, ?If the menu text is clipped by the title bar, or is painted over the title bar or client area?? belongs here. (I forgot to click *Add comment* button.) ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1765225984 From abhiscxk at openjdk.org Wed Sep 18 15:07:58 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 15:07:58 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v8] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: <4BdOzW_AI5TxDGWWmDudWijFCcH88OtrgqnPTOz02eI=.90711a3a-9dec-4ee5-8271-0687ecfe8e97@github.com> On Wed, 18 Sep 2024 14:57:50 GMT, Alexey Ivanov wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> added requires jtreg tag > > test/jdk/java/awt/MenuItem/GiantFontTest.java line 49: > >> 47: >> 48: On Windows, the menu's (present on menu bar) font >> 49: should be normal size. > > I believe, ?If the menu text is clipped by the title bar, or is painted over the title bar or client area?? belongs here. > > (I forgot to click *Add comment* button.) Moved the test instructions. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1765237338 From abhiscxk at openjdk.org Wed Sep 18 15:07:57 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 15:07:57 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v10] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: <9-YKdoILkE1Q7CAxEuCBd8oCFu8zvxzSVGsnblN_CLY=.1b2cf110-99c2-47d7-b7a1-2518917733fd@github.com> > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Test instruction update ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/f39bb5b4..4eb80036 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=09 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=08-09 Stats: 5 lines in 1 file changed: 2 ins; 2 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From aivanov at openjdk.org Wed Sep 18 15:14:07 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 15:14:07 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v10] In-Reply-To: <9-YKdoILkE1Q7CAxEuCBd8oCFu8zvxzSVGsnblN_CLY=.1b2cf110-99c2-47d7-b7a1-2518917733fd@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <9-YKdoILkE1Q7CAxEuCBd8oCFu8zvxzSVGsnblN_CLY=.1b2cf110-99c2-47d7-b7a1-2518917733fd@github.com> Message-ID: <9Kg5uDSTVCz_dtdKby2RpCbjjDuD0k1nAYBXoUiJhHw=.0e9a977e-1569-465f-810a-c26c37f37ef6@github.com> On Wed, 18 Sep 2024 15:07:57 GMT, Abhishek Kumar wrote: >> Few AWT MenuItem related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Test instruction update Marked as reviewed by aivanov (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21029#pullrequestreview-2313020282 From aivanov at openjdk.org Wed Sep 18 15:30:14 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 15:30:14 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v10] In-Reply-To: <9-YKdoILkE1Q7CAxEuCBd8oCFu8zvxzSVGsnblN_CLY=.1b2cf110-99c2-47d7-b7a1-2518917733fd@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <9-YKdoILkE1Q7CAxEuCBd8oCFu8zvxzSVGsnblN_CLY=.1b2cf110-99c2-47d7-b7a1-2518917733fd@github.com> Message-ID: <8-INsYpf0d3rZLtwPQhNPrVdSgFpOvzm0fh5NZUyVSw=.0c84e608-4613-4f7e-adfb-f32355aa33fc@github.com> On Wed, 18 Sep 2024 15:07:57 GMT, Abhishek Kumar wrote: >> Few AWT MenuItem related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Test instruction update Huh, I found another issue. test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 107: > 105: setMenuBar(mb); > 106: setSize(450, 150); > 107: } The original test had `setVisible(true);` here. This is why the loop contains `setVisible(false)`. Without showing the frames, the test may not reproduce the original problem reported in [JDK-4175790](https://bugs.openjdk.org/browse/JDK-4175790). ------------- Changes requested by aivanov (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21029#pullrequestreview-2313064053 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1765278585 From rgupta at openjdk.org Wed Sep 18 15:34:02 2024 From: rgupta at openjdk.org (Ravi Gupta) Date: Wed, 18 Sep 2024 15:34:02 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v10] In-Reply-To: References: Message-ID: > This testcase checks for the following assertions for Component events: > > 1. When components are resized, moved, hidden and shown the respective events are triggered. > 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. > 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. > 4. When a window is minimized/restored then hidden and shown component events should be triggered. > > Testing: > Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: 8333403: Review Comments Fixed ------------- Changes: - all: https://git.openjdk.org/jdk/pull/19521/files - new: https://git.openjdk.org/jdk/pull/19521/files/acaee1a6..9633a03a Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=19521&range=09 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=19521&range=08-09 Stats: 689 lines in 2 files changed: 356 ins; 333 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/19521.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/19521/head:pull/19521 PR: https://git.openjdk.org/jdk/pull/19521 From abhiscxk at openjdk.org Wed Sep 18 15:42:10 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 18 Sep 2024 15:42:10 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v10] In-Reply-To: <8-INsYpf0d3rZLtwPQhNPrVdSgFpOvzm0fh5NZUyVSw=.0c84e608-4613-4f7e-adfb-f32355aa33fc@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <9-YKdoILkE1Q7CAxEuCBd8oCFu8zvxzSVGsnblN_CLY=.1b2cf110-99c2-47d7-b7a1-2518917733fd@github.com> <8-INsYpf0d3rZLtwPQhNPrVdSgFpOvzm0fh5NZUyVSw=.0c84e608-4613-4f7e-adfb-f32355aa33fc@github.com> Message-ID: On Wed, 18 Sep 2024 15:26:51 GMT, Alexey Ivanov wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> Test instruction update > > test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 107: > >> 105: setMenuBar(mb); >> 106: setSize(450, 150); >> 107: } > > The original test had `setVisible(true);` here. This is why the loop contains `setVisible(false)`. > > Without showing the frames, the test may not reproduce the original problem reported in [JDK-4175790](https://bugs.openjdk.org/browse/JDK-4175790). I think the testFrame's are made invisible and disposed just after creating. Only the last frame and first frame is visible. After the test update, **testFrame and firstFrame is setVisible by PassFailJFrame**. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1765299255 From rgupta at openjdk.org Wed Sep 18 16:28:08 2024 From: rgupta at openjdk.org (Ravi Gupta) Date: Wed, 18 Sep 2024 16:28:08 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v10] In-Reply-To: References: Message-ID: <7nOZS0_7wlnmMkoAyVrjb-HYWDaS_arXkUrib5TVwig=.9bb092ac-a343-4784-bc1f-b3a3f1fbc842@github.com> On Wed, 18 Sep 2024 15:34:02 GMT, Ravi Gupta wrote: >> This testcase checks for the following assertions for Component events: >> >> 1. When components are resized, moved, hidden and shown the respective events are triggered. >> 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. >> 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. >> 4. When a window is minimized/restored then hidden and shown component events should be triggered. >> >> Testing: >> Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. > > Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: > > 8333403: Review Comments Fixed moved test to java/awt/Component ------------- PR Comment: https://git.openjdk.org/jdk/pull/19521#issuecomment-2358911741 From prr at openjdk.org Wed Sep 18 17:32:06 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 18 Sep 2024 17:32:06 GMT Subject: RFR: 8340306: Add border around instructions in PassFailJFrame In-Reply-To: References: Message-ID: <5DiY0H_hQK6q62OP2ppCr7zCbc_UllhGMxlYQVDiHE8=.9a22abba-826e-49fc-9532-210662454c3c@github.com> On Tue, 17 Sep 2024 12:39:20 GMT, Alexey Ivanov wrote: > A trivial change which adds border around instruction text. It makes the text easier to read. > > (In some tests, people added leading spaces to each line to make the instructions easier to read; with the added border, there's no need for this trick.) Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21038#pullrequestreview-2313340695 From prr at openjdk.org Wed Sep 18 17:42:09 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 18 Sep 2024 17:42:09 GMT Subject: RFR: 8340078: Open source several 2D tests In-Reply-To: References: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> Message-ID: On Tue, 17 Sep 2024 20:10:17 GMT, Alexander Zvegintsev wrote: >> Open source 5 Java2D related rendering tests. > > test/jdk/sun/java2d/GdiRendering/GdiLockTest.java line 28: > >> 26: * @bug 4693644 >> 27: * @summary verifies that there are no artifacts due to copying with GDI >> 28: * @library java/awt/regtesthelpers > > `test result: Error. Can't find library: java/awt/regtesthelpers` > > Suggestion: > > * @library /java/awt/regtesthelpers fixed ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1765461337 From prr at openjdk.org Wed Sep 18 17:46:16 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 18 Sep 2024 17:46:16 GMT Subject: RFR: 8340078: Open source several 2D tests In-Reply-To: References: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> Message-ID: On Wed, 18 Sep 2024 00:48:59 GMT, Harshitha Onkar wrote: >> Open source 5 Java2D related rendering tests. > > test/jdk/sun/java2d/SunGraphics2D/RevalidateBug.java line 34: > >> 32: */ >> 33: >> 34: import java.awt.Color; > > Unused import. ? I use Color multiple times. > test/jdk/sun/java2d/SunGraphics2D/ScaledPolyTest.java line 31: > >> 29: >> 30: import java.awt.Color; >> 31: import static java.awt.Color.*; > > static import redudant here. fixed > test/jdk/sun/java2d/SunGraphics2D/ScaledPolyTest.java line 38: > >> 36: public class ScaledPolyTest { >> 37: >> 38: public static void main(String argv[]) { > > Suggestion: > > public static void main(String[] argv) { either is OK but since I'm updating the file anyway ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1765466132 PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1765466027 PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1765467367 From prr at openjdk.org Wed Sep 18 17:51:52 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 18 Sep 2024 17:51:52 GMT Subject: RFR: 8340078: Open source several 2D tests [v2] In-Reply-To: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> References: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> Message-ID: > Open source 5 Java2D related rendering tests. Phil Race has updated the pull request incrementally with one additional commit since the last revision: 8340078 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21045/files - new: https://git.openjdk.org/jdk/pull/21045/files/92a846e5..2bf854f2 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21045&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21045&range=00-01 Stats: 3 lines in 2 files changed: 0 ins; 1 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/21045.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21045/head:pull/21045 PR: https://git.openjdk.org/jdk/pull/21045 From honkar at openjdk.org Wed Sep 18 18:26:12 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 18 Sep 2024 18:26:12 GMT Subject: RFR: 8340078: Open source several 2D tests [v2] In-Reply-To: References: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> Message-ID: <8cQKQmE7mYcIukHZzSnwrlxlxcuv2yKUYr-W8JrIDeQ=.c489bae0-6fa4-4653-9767-50dff6e80fef@github.com> On Wed, 18 Sep 2024 17:51:52 GMT, Phil Race wrote: >> Open source 5 Java2D related rendering tests. > > Phil Race has updated the pull request incrementally with one additional commit since the last revision: > > 8340078 Changes requested by honkar (Reviewer). test/jdk/sun/java2d/SunGraphics2D/DrawRoundRect0Bug.java line 31: > 29: > 30: import java.awt.Color; > 31: import static java.awt.Color.*; Only static import might be required here based on its usage in test. test/jdk/sun/java2d/SunGraphics2D/ScaledPolyTest.java line 37: > 35: public class ScaledPolyTest { > 36: > 37: public static void main(String[] arg]) { Extra bracket Suggestion: public static void main(String[] args) { test/jdk/sun/java2d/SunGraphics2D/ScaledPolyTest.java line 67: > 65: int bluePix = blue.getRGB(); > 66: int yellowPix = yellow.getRGB(); > 67: int whitePix = white.getRGB(); Sorry for the mix-up with the tests. Somehow the comments got added to the wrong test. This test uses both static and non-static usage for Color. Currently it doesn't compile because the static import was removed. It might be better to follow one pattern throughout - either non-static or static? ------------- PR Review: https://git.openjdk.org/jdk/pull/21045#pullrequestreview-2313420538 PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1765499341 PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1765509992 PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1765508604 From honkar at openjdk.org Wed Sep 18 18:26:13 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 18 Sep 2024 18:26:13 GMT Subject: RFR: 8340078: Open source several 2D tests [v2] In-Reply-To: References: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> Message-ID: On Wed, 18 Sep 2024 17:43:08 GMT, Phil Race wrote: >> test/jdk/sun/java2d/SunGraphics2D/RevalidateBug.java line 34: >> >>> 32: */ >>> 33: >>> 34: import java.awt.Color; >> >> Unused import. > > ? I use Color multiple times. I probably added it to the wrong test by mistake. It was for DrawRoundRect0Bug.java test which has the double Color imports - static and non-static. >> test/jdk/sun/java2d/SunGraphics2D/ScaledPolyTest.java line 31: >> >>> 29: >>> 30: import java.awt.Color; >>> 31: import static java.awt.Color.*; >> >> static import redudant here. > > fixed Sorry somehow the comments got added to the wrong test. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1765499597 PR Review Comment: https://git.openjdk.org/jdk/pull/21045#discussion_r1765502560 From prr at openjdk.org Wed Sep 18 18:39:14 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 18 Sep 2024 18:39:14 GMT Subject: RFR: 8340360: Update -mx to -Xmx in UnninstallUIMemoryLeaks test In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 09:06:04 GMT, Jaikiran Pai wrote: > Can I please get a review of this test-only change which replaces the use of the outdated "-mx" option with the "-Xmx" option when launching the java processes in this test? This test was missed out from one of the earlier integrated PR. > > The test continues to pass after this change. Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21053#pullrequestreview-2313485139 From prr at openjdk.org Wed Sep 18 18:43:34 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 18 Sep 2024 18:43:34 GMT Subject: RFR: 8340078: Open source several 2D tests [v3] In-Reply-To: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> References: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> Message-ID: > Open source 5 Java2D related rendering tests. Phil Race has updated the pull request incrementally with one additional commit since the last revision: 8340078 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21045/files - new: https://git.openjdk.org/jdk/pull/21045/files/2bf854f2..abb8caf5 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21045&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21045&range=01-02 Stats: 2 lines in 1 file changed: 1 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21045.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21045/head:pull/21045 PR: https://git.openjdk.org/jdk/pull/21045 From dnguyen at openjdk.org Wed Sep 18 19:08:05 2024 From: dnguyen at openjdk.org (Damon Nguyen) Date: Wed, 18 Sep 2024 19:08:05 GMT Subject: RFR: JDK-8339962 : Open source AWT TextField tests - Set1 [v3] In-Reply-To: References: Message-ID: On Mon, 16 Sep 2024 22:59:35 GMT, Harshitha Onkar wrote: >> Following test are open-sourced. >> >> 1. test/jdk/java/awt/Label/ContainerValidateTest.java - Automated >> 2. test/jdk/java/awt/TextField/SetEchoCharTest.java - Automated >> 3. test/jdk/java/awt/TextField/SetEchoCharWordOpsTest.java - PassFailJFrame manual test > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > typo fix Marked as reviewed by dnguyen (Committer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21005#pullrequestreview-2313538787 From honkar at openjdk.org Wed Sep 18 19:16:04 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 18 Sep 2024 19:16:04 GMT Subject: RFR: 8340078: Open source several 2D tests [v3] In-Reply-To: References: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> Message-ID: On Wed, 18 Sep 2024 18:43:34 GMT, Phil Race wrote: >> Open source 5 Java2D related rendering tests. > > Phil Race has updated the pull request incrementally with one additional commit since the last revision: > > 8340078 Marked as reviewed by honkar (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21045#pullrequestreview-2313552945 From honkar at openjdk.org Wed Sep 18 19:28:12 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 18 Sep 2024 19:28:12 GMT Subject: Integrated: JDK-8339962 : Open source AWT TextField tests - Set1 In-Reply-To: References: Message-ID: On Fri, 13 Sep 2024 22:04:24 GMT, Harshitha Onkar wrote: > Following test are open-sourced. > > 1. test/jdk/java/awt/Label/ContainerValidateTest.java - Automated > 2. test/jdk/java/awt/TextField/SetEchoCharTest.java - Automated > 3. test/jdk/java/awt/TextField/SetEchoCharWordOpsTest.java - PassFailJFrame manual test This pull request has now been integrated. Changeset: 31849127 Author: Harshitha Onkar URL: https://git.openjdk.org/jdk/commit/31849127a06e448c705a61c536f51fc037bc4979 Stats: 437 lines in 3 files changed: 437 ins; 0 del; 0 mod 8339962: Open source AWT TextField tests - Set1 Reviewed-by: jdv, dnguyen, prr ------------- PR: https://git.openjdk.org/jdk/pull/21005 From prr at openjdk.org Wed Sep 18 19:45:04 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 18 Sep 2024 19:45:04 GMT Subject: RFR: 8340365: Position the first window of a window list In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 12:05:22 GMT, Alexey Ivanov wrote: > Support of multiple test UI windows in `PassFailJFrame` is still evolving. After [JDK-8340210](https://bugs.openjdk.org/browse/JDK-8340210), the `Builder` has a method `positionTestUI` to supply an implementation of the `PositionWindows` interface which handles the positioning of all test UI windows created. > > If `PositionWindows` is not provided, all the test UI windows are left with the default coordinates: (0, 0). > > If `PassFailJFrame` called `positionTestWindow` for the first window, it would allow the test developer to position other windows based on the position of the first one. > > This issue was raised in #21029 in [this thread of comments](https://github.com/openjdk/jdk/pull/21029#discussion_r1763744407). > > To make it easier to position multiple test UI windows without implementing the `PositionWindows` interface, the `PassFailJFrame` should position the first window of the list. > > The `LotsOfMenuItemsTest.java` test in #21029 had to hard-code the coordinates or use `PassFailJFrame.positionTestWindow` explicitly in its `ComponentListener.componentShown`. > > With the proposed change in this pull request, the implementation would use `ComponentListener.componentMoved`: > > > @Override > public void componentMoved(ComponentEvent e) { > testFrame.setLocation(firstFrame.getX(), > firstFrame.getY() + firstFrame.getHeight() + 8); > } > > > This has the advantage in that the test UI windows don't flicker for a short time in the upper left corner of the screen; and the developer has to handle only positioning the second window (frame). > > However, this has a funny effect: if you move the first frame with mouse or in any other way, the second frame follows. To avoid such kind of behaviour, call `removeComponentListener` in the handler. > > @honkar-jdk, @azvegint, could you take a look? "With the proposed change in this pull request, the implementation would use ComponentListener.componentMoved:" you mean the implementation of the test ? Perhaps adding the required pattern in the examples would be a good idea. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21057#issuecomment-2359268838 From aivanov at openjdk.org Wed Sep 18 20:28:01 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 20:28:01 GMT Subject: RFR: 8340365: Position the first window of a window list In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 19:42:08 GMT, Phil Race wrote: > > With the proposed change in this pull request, the implementation would use ComponentListener.componentMoved: > > you mean the implementation of the test ? Perhaps adding the required pattern in the examples would be a good idea. @prrace Yes, I referred to the implementation of the `LotsOfMenuItemsTest.java` test. This is more of a workaround until we add better layout options. Yet it looks simple and works well. It still requires the test developer to save references to frames. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21057#issuecomment-2359320527 From prr at openjdk.org Wed Sep 18 20:42:56 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 18 Sep 2024 20:42:56 GMT Subject: Integrated: 8340078: Open source several 2D tests In-Reply-To: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> References: <_G3hZfUAcdUgOwd-cOfvVpLMogQlU2fRZP48zN6SoA8=.3101fd27-6d6d-46e5-badf-7a17b484d5b6@github.com> Message-ID: On Tue, 17 Sep 2024 18:27:58 GMT, Phil Race wrote: > Open source 5 Java2D related rendering tests. This pull request has now been integrated. Changeset: 88a1c055 Author: Phil Race URL: https://git.openjdk.org/jdk/commit/88a1c0550e435888c571d32c577fd697652e5620 Stats: 484 lines in 5 files changed: 484 ins; 0 del; 0 mod 8340078: Open source several 2D tests Reviewed-by: honkar ------------- PR: https://git.openjdk.org/jdk/pull/21045 From aivanov at openjdk.org Wed Sep 18 20:54:44 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 18 Sep 2024 20:54:44 GMT Subject: RFR: 8340365: Position the first window of a window list In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 20:12:08 GMT, Alexey Ivanov wrote: > Perhaps adding the required pattern in the examples would be a good idea. Yes, it's a good idea. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21057#issuecomment-2359383555 From honkar at openjdk.org Wed Sep 18 23:48:35 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 18 Sep 2024 23:48:35 GMT Subject: RFR: 8340084: Open source AWT Frame related tests In-Reply-To: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> Message-ID: On Wed, 18 Sep 2024 06:18:03 GMT, Abhishek Kumar wrote: > Few AWT Frame related tests are converted from applet to manual and moved to open. Changes requested by honkar (Reviewer). test/jdk/java/awt/Frame/FrameSetMinimumSizeTest.java line 61: > 59: if (!passed) { > 60: throw new RuntimeException("Frame's setMinimumSize not honoured"); > 61: } The test condition does not seem right. For instance if `passed` was false in one of the previous checks and the final case results in true then the test passes, which seems to be incorrect. test/jdk/java/awt/Frame/FrameSetMinimumSizeTest.java line 80: > 78: private static boolean verifyFrameSize(Dimension expected) { > 79: > 80: if (f.getSize().width != expected.width || f.getSize().height != expected.height) { Do we need to wrap calls to `verifyFrameSize()` in EDT, since we are accessing frame.getSize() ? test/jdk/java/awt/Frame/PackTwiceTest.java line 56: > 54: > 55: private static Frame createUI() { > 56: Frame f = new Frame("TestFrame"); Title of the frame can be renamed to something more specific to the test. Suggestion: Frame f = new Frame("PackTwiceTest TestFrame"); ------------- PR Review: https://git.openjdk.org/jdk/pull/21052#pullrequestreview-2314031722 PR Review Comment: https://git.openjdk.org/jdk/pull/21052#discussion_r1765883111 PR Review Comment: https://git.openjdk.org/jdk/pull/21052#discussion_r1765884441 PR Review Comment: https://git.openjdk.org/jdk/pull/21052#discussion_r1765885855 From honkar at openjdk.org Wed Sep 18 23:51:35 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 18 Sep 2024 23:51:35 GMT Subject: RFR: 8340084: Open source AWT Frame related tests In-Reply-To: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> Message-ID: On Wed, 18 Sep 2024 06:18:03 GMT, Abhishek Kumar wrote: > Few AWT Frame related tests are converted from applet to manual and moved to open. test/jdk/java/awt/Frame/EmptyFrameTest.java line 51: > 49: private static final int TOLERANCE = 5; > 50: public static void main(String[] args) throws Exception { > 51: Extra newline ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21052#discussion_r1765887824 From honkar at openjdk.org Wed Sep 18 23:55:34 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 18 Sep 2024 23:55:34 GMT Subject: RFR: 8340271: Open source several AWT Robot tests In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 13:26:35 GMT, Prasanta Sadhukhan wrote: > Opensource few Robot tests test/jdk/java/awt/Robot/RobotScrollTest.java line 47: > 45: private static final String INSTRUCTIONS = """ > 46: 0. DON'T TOUCH ANYTHING! > 47: 1. This test is for Win32 and Linux only. Suggestion: 1. This test is for Win and Linux only. test/jdk/java/awt/Robot/RobotScrollTest.java line 82: > 80: Point taAt = ta.getLocationOnScreen(); > 81: // get bounds of button > 82: Rectangle bounds = ta.getBounds(); Should they be in EDT? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1765889419 PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1765889868 From jpai at openjdk.org Thu Sep 19 01:47:42 2024 From: jpai at openjdk.org (Jaikiran Pai) Date: Thu, 19 Sep 2024 01:47:42 GMT Subject: RFR: 8340360: Update -mx to -Xmx in UnninstallUIMemoryLeaks test In-Reply-To: References: Message-ID: <7GCtJrZS_E9CDkTgRN2XTwD3RtrwmiJqQpJU5yCZFX0=.61b71fea-3c33-4834-a26e-2dbf7267ccb1@github.com> On Wed, 18 Sep 2024 09:06:04 GMT, Jaikiran Pai wrote: > Can I please get a review of this test-only change which replaces the use of the outdated "-mx" option with the "-Xmx" option when launching the java processes in this test? This test was missed out from one of the earlier integrated PR. > > The test continues to pass after this change. Thank you Phil and Sergey for the reviews. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21053#issuecomment-2359793882 From jpai at openjdk.org Thu Sep 19 01:47:42 2024 From: jpai at openjdk.org (Jaikiran Pai) Date: Thu, 19 Sep 2024 01:47:42 GMT Subject: Integrated: 8340360: Update -mx to -Xmx in UnninstallUIMemoryLeaks test In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 09:06:04 GMT, Jaikiran Pai wrote: > Can I please get a review of this test-only change which replaces the use of the outdated "-mx" option with the "-Xmx" option when launching the java processes in this test? This test was missed out from one of the earlier integrated PR. > > The test continues to pass after this change. This pull request has now been integrated. Changeset: d9c67443 Author: Jaikiran Pai URL: https://git.openjdk.org/jdk/commit/d9c67443f7d7f03efb2837b63ee2acc6113f737f Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod 8340360: Update -mx to -Xmx in UnninstallUIMemoryLeaks test Reviewed-by: serb, prr ------------- PR: https://git.openjdk.org/jdk/pull/21053 From psadhukhan at openjdk.org Thu Sep 19 04:00:30 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Thu, 19 Sep 2024 04:00:30 GMT Subject: RFR: 8340271: Open source several AWT Robot tests [v2] In-Reply-To: References: Message-ID: > Opensource few Robot tests Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: minor review ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21062/files - new: https://git.openjdk.org/jdk/pull/21062/files/14afd0d0..1eeb6826 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21062&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21062&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21062.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21062/head:pull/21062 PR: https://git.openjdk.org/jdk/pull/21062 From psadhukhan at openjdk.org Thu Sep 19 04:00:32 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Thu, 19 Sep 2024 04:00:32 GMT Subject: RFR: 8340271: Open source several AWT Robot tests [v2] In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 23:52:34 GMT, Harshitha Onkar wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> minor review > > test/jdk/java/awt/Robot/RobotScrollTest.java line 47: > >> 45: private static final String INSTRUCTIONS = """ >> 46: 0. DON'T TOUCH ANYTHING! >> 47: 1. This test is for Win32 and Linux only. > > Suggestion: > > 1. This test is for Win and Linux only. done > test/jdk/java/awt/Robot/RobotScrollTest.java line 82: > >> 80: Point taAt = ta.getLocationOnScreen(); >> 81: // get bounds of button >> 82: Rectangle bounds = ta.getBounds(); > > Should they be in EDT? manual test, not needed ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1766112199 PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1766112387 From abhiscxk at openjdk.org Thu Sep 19 04:56:13 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 19 Sep 2024 04:56:13 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v11] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Test restructured and test frames set visible true ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/4eb80036..ed39f24a Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=10 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=09-10 Stats: 23 lines in 1 file changed: 12 ins; 9 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From abhiscxk at openjdk.org Thu Sep 19 04:56:13 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 19 Sep 2024 04:56:13 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v10] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> <9-YKdoILkE1Q7CAxEuCBd8oCFu8zvxzSVGsnblN_CLY=.1b2cf110-99c2-47d7-b7a1-2518917733fd@github.com> <8-INsYpf0d3rZLtwPQhNPrVdSgFpOvzm0fh5NZUyVSw=.0c84e608-4613-4f7e-adfb-f32355aa33fc@github.com> Message-ID: On Wed, 18 Sep 2024 15:39:04 GMT, Abhishek Kumar wrote: >> test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 107: >> >>> 105: setMenuBar(mb); >>> 106: setSize(450, 150); >>> 107: } >> >> The original test had `setVisible(true);` here. This is why the loop contains `setVisible(false)`. >> >> Without showing the frames, the test may not reproduce the original problem reported in [JDK-4175790](https://bugs.openjdk.org/browse/JDK-4175790). > > I think the testFrame's are made invisible and disposed just after creating. Only the last frame and first frame is visible. > After the test update, **testFrame and firstFrame is setVisible by PassFailJFrame**. Updated the test to set the test frames visible, `setVisible(true)`; ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1766156261 From abhiscxk at openjdk.org Thu Sep 19 05:21:02 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 19 Sep 2024 05:21:02 GMT Subject: RFR: 8340084: Open source AWT Frame related tests [v2] In-Reply-To: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> Message-ID: <3F2xejJLH59rCU6yMgISA16Dff7fWPgx5BgZu-eZzHw=.e84e44f1-28e3-4dcc-9bdb-d917899ee3dc@github.com> > Few AWT Frame related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Review comment fix ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21052/files - new: https://git.openjdk.org/jdk/pull/21052/files/6c662c99..c5de5524 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21052&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21052&range=00-01 Stats: 33 lines in 3 files changed: 11 ins; 6 del; 16 mod Patch: https://git.openjdk.org/jdk/pull/21052.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21052/head:pull/21052 PR: https://git.openjdk.org/jdk/pull/21052 From abhiscxk at openjdk.org Thu Sep 19 05:27:35 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 19 Sep 2024 05:27:35 GMT Subject: RFR: 8340084: Open source AWT Frame related tests [v2] In-Reply-To: References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> Message-ID: <35KUYcieQEU13dIvg0MpdVCvvyvVg3-YUrosb1Yuxrs=.d5b59b71-2ca1-4f58-a76c-e13f1a8fe1df@github.com> On Wed, 18 Sep 2024 23:40:16 GMT, Harshitha Onkar wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> Review comment fix > > test/jdk/java/awt/Frame/FrameSetMinimumSizeTest.java line 61: > >> 59: if (!passed) { >> 60: throw new RuntimeException("Frame's setMinimumSize not honoured"); >> 61: } > > The test condition does not seem right. > For instance if `passed` was false in one of the previous checks and the final case results in true then the test passes, which seems to be incorrect. Yes, you are right. Modified the condition to check after every frame resize. > test/jdk/java/awt/Frame/FrameSetMinimumSizeTest.java line 80: > >> 78: private static boolean verifyFrameSize(Dimension expected) { >> 79: >> 80: if (f.getSize().width != expected.width || f.getSize().height != expected.height) { > > Do we need to wrap calls to `verifyFrameSize()` in EDT, since we are accessing frame.getSize() ? Updated. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21052#discussion_r1766177491 PR Review Comment: https://git.openjdk.org/jdk/pull/21052#discussion_r1766177586 From psadhukhan at openjdk.org Thu Sep 19 05:30:58 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Thu, 19 Sep 2024 05:30:58 GMT Subject: RFR: 8339995: Open source several AWT focus tests - series 6 Message-ID: Opensource few Focus tests ------------- Commit messages: - windows - InitialFocusTest - 8339995: Open source several AWT focus tests - series 6 Changes: https://git.openjdk.org/jdk/pull/21079/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21079&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339995 Stats: 580 lines in 5 files changed: 580 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21079.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21079/head:pull/21079 PR: https://git.openjdk.org/jdk/pull/21079 From psadhukhan at openjdk.org Thu Sep 19 05:34:48 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Thu, 19 Sep 2024 05:34:48 GMT Subject: RFR: 8339995: Open source several AWT focus tests - series 6 [v2] In-Reply-To: References: Message-ID: > Opensource few Focus tests Prasanta Sadhukhan has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits: - Merge master - windows - InitialFocusTest - 8339995: Open source several AWT focus tests - series 6 ------------- Changes: https://git.openjdk.org/jdk/pull/21079/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21079&range=01 Stats: 580 lines in 5 files changed: 580 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21079.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21079/head:pull/21079 PR: https://git.openjdk.org/jdk/pull/21079 From abhiscxk at openjdk.org Thu Sep 19 05:39:40 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 19 Sep 2024 05:39:40 GMT Subject: RFR: 8340271: Open source several AWT Robot tests [v2] In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 04:00:30 GMT, Prasanta Sadhukhan wrote: >> Opensource few Robot tests > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > minor review test/jdk/java/awt/Robot/CreateScreenCapture.java line 44: > 42: > 43: static Robot robot; > 44: static Dialog dialog; may be declared as local variable. test/jdk/java/awt/Robot/CreateScreenCapture.java line 62: > 60: PassFailJFrame passFail = new PassFailJFrame(INSTRUCTIONS); > 61: dialog = new Dialog(new Frame(), "Instructions"); > 62: messageText = new TextArea( "", 5, 80, TextArea.SCROLLBARS_BOTH); Suggestion: messageText = new TextArea("", 5, 80, TextArea.SCROLLBARS_BOTH); test/jdk/java/awt/Robot/CreateScreenCapture.java line 74: > 72: image = null; > 73: robot.delay(200); > 74: log("step #"+i); Suggestion: log("step #" + i); test/jdk/java/awt/Robot/CreateScreenCapture.java line 80: > 78: > 79: private static void log(String messageIn) { > 80: messageText.append( messageIn + "\n" ); Suggestion: messageText.append(messageIn + "\n"); test/jdk/java/awt/Robot/RobotScrollTest.java line 51: > 49: 3. Once the pointer is on the text area, the Robot will use the mouse wheel > 50: to scroll the text. > 51: If the text scrolled, hit PASS, else, hit fail."""; Suggestion: If the text scrolled, hit PASS, else, hit FAIL."""; test/jdk/java/awt/Robot/RobotScrollTest.java line 95: > 93: > 94: for (int k = 0; k < 5; k++) { > 95: robot.mouseWheel(-1*j); Suggestion: robot.mouseWheel(-1 * j); ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1766182287 PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1766183229 PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1766184151 PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1766184379 PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1766185467 PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1766186486 From psadhukhan at openjdk.org Thu Sep 19 05:59:21 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Thu, 19 Sep 2024 05:59:21 GMT Subject: RFR: 8340271: Open source several AWT Robot tests [v3] In-Reply-To: References: Message-ID: <4lGXxaqjfLNx5K8JMvNuKSaq3BHUVd3-DCwrCS_laNo=.c4a7ddb3-65db-452d-92c3-347152f21b31@github.com> > Opensource few Robot tests Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Formatting ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21062/files - new: https://git.openjdk.org/jdk/pull/21062/files/1eeb6826..e5111877 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21062&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21062&range=01-02 Stats: 7 lines in 2 files changed: 0 ins; 1 del; 6 mod Patch: https://git.openjdk.org/jdk/pull/21062.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21062/head:pull/21062 PR: https://git.openjdk.org/jdk/pull/21062 From azvegint at openjdk.org Thu Sep 19 06:46:04 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Thu, 19 Sep 2024 06:46:04 GMT Subject: RFR: 8340393: Open source closed choice tests #2 Message-ID: few manual tests to open source Tested on all platforms, all looks good. ------------- Commit messages: - initial Changes: https://git.openjdk.org/jdk/pull/21081/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21081&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340393 Stats: 322 lines in 4 files changed: 322 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21081.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21081/head:pull/21081 PR: https://git.openjdk.org/jdk/pull/21081 From azvegint at openjdk.org Thu Sep 19 06:48:36 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Thu, 19 Sep 2024 06:48:36 GMT Subject: RFR: 8340365: Position the first window of a window list In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 12:05:22 GMT, Alexey Ivanov wrote: > Support of multiple test UI windows in `PassFailJFrame` is still evolving. After [JDK-8340210](https://bugs.openjdk.org/browse/JDK-8340210), the `Builder` has a method `positionTestUI` to supply an implementation of the `PositionWindows` interface which handles the positioning of all test UI windows created. > > If `PositionWindows` is not provided, all the test UI windows are left with the default coordinates: (0, 0). > > If `PassFailJFrame` called `positionTestWindow` for the first window, it would allow the test developer to position other windows based on the position of the first one. > > This issue was raised in #21029 in [this thread of comments](https://github.com/openjdk/jdk/pull/21029#discussion_r1763744407). > > To make it easier to position multiple test UI windows without implementing the `PositionWindows` interface, the `PassFailJFrame` should position the first window of the list. > > The `LotsOfMenuItemsTest.java` test in #21029 had to hard-code the coordinates or use `PassFailJFrame.positionTestWindow` explicitly in its `ComponentListener.componentShown`. > > With the proposed change in this pull request, the implementation would use `ComponentListener.componentMoved`: > > > @Override > public void componentMoved(ComponentEvent e) { > testFrame.setLocation(firstFrame.getX(), > firstFrame.getY() + firstFrame.getHeight() + 8); > } > > > This has the advantage in that the test UI windows don't flicker for a short time in the upper left corner of the screen; and the developer has to handle only positioning the second window (frame). > > However, this has a funny effect: if you move the first frame with mouse or in any other way, the second frame follows. To avoid such kind of behaviour, call `removeComponentListener` in the handler. > > @honkar-jdk, @azvegint, could you take a look? Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21057#pullrequestreview-2314554177 From abhiscxk at openjdk.org Thu Sep 19 09:10:37 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 19 Sep 2024 09:10:37 GMT Subject: RFR: 8340271: Open source several AWT Robot tests [v3] In-Reply-To: <4lGXxaqjfLNx5K8JMvNuKSaq3BHUVd3-DCwrCS_laNo=.c4a7ddb3-65db-452d-92c3-347152f21b31@github.com> References: <4lGXxaqjfLNx5K8JMvNuKSaq3BHUVd3-DCwrCS_laNo=.c4a7ddb3-65db-452d-92c3-347152f21b31@github.com> Message-ID: On Thu, 19 Sep 2024 05:59:21 GMT, Prasanta Sadhukhan wrote: >> Opensource few Robot tests > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Formatting test/jdk/java/awt/Robot/CreateScreenCapture.java line 43: > 41: public class CreateScreenCapture { > 42: > 43: static Robot robot; `robot` var also can be moved inside main. test/jdk/java/awt/Robot/CreateScreenCapture.java line 79: > 77: > 78: private static void log(String messageIn) { > 79: messageText.append( messageIn + "\n"); Suggestion: messageText.append(messageIn + "\n"); test/jdk/java/awt/Robot/RobotScrollTest.java line 47: > 45: private static final String INSTRUCTIONS = """ > 46: 0. DON'T TOUCH ANYTHING! > 47: 1. This test is for Windown and Linux only. Suggestion: 1. This test is for Windows and Linux only. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1766463911 PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1766464170 PR Review Comment: https://git.openjdk.org/jdk/pull/21062#discussion_r1766464530 From psadhukhan at openjdk.org Thu Sep 19 09:18:57 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Thu, 19 Sep 2024 09:18:57 GMT Subject: RFR: 8340271: Open source several AWT Robot tests [v4] In-Reply-To: References: Message-ID: > Opensource few Robot tests Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: review comment fix ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21062/files - new: https://git.openjdk.org/jdk/pull/21062/files/e5111877..189044b1 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21062&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21062&range=02-03 Stats: 4 lines in 2 files changed: 0 ins; 1 del; 3 mod Patch: https://git.openjdk.org/jdk/pull/21062.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21062/head:pull/21062 PR: https://git.openjdk.org/jdk/pull/21062 From abhiscxk at openjdk.org Thu Sep 19 09:18:57 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 19 Sep 2024 09:18:57 GMT Subject: RFR: 8340271: Open source several AWT Robot tests [v4] In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 09:15:55 GMT, Prasanta Sadhukhan wrote: >> Opensource few Robot tests > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > review comment fix Marked as reviewed by abhiscxk (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21062#pullrequestreview-2314932344 From aivanov at openjdk.org Thu Sep 19 09:47:09 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 19 Sep 2024 09:47:09 GMT Subject: RFR: 8340008: KeyEvent/KeyTyped/Numpad1KeyTyped.java has 15 seconds timeout Message-ID: I am open-sourcing the `Numpad1KeyTyped.java` test. I used `CountDownLatch` for synchronisation. The test passes in CI. ------------- Commit messages: - 8340008: KeyEvent/KeyTyped/Numpad1KeyTyped.java has 15 seconds timeout Changes: https://git.openjdk.org/jdk/pull/21085/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21085&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340008 Stats: 178 lines in 1 file changed: 178 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21085.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21085/head:pull/21085 PR: https://git.openjdk.org/jdk/pull/21085 From aivanov at openjdk.org Thu Sep 19 09:47:09 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 19 Sep 2024 09:47:09 GMT Subject: RFR: 8340008: KeyEvent/KeyTyped/Numpad1KeyTyped.java has 15 seconds timeout In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 09:40:56 GMT, Alexey Ivanov wrote: > I am open-sourcing the `Numpad1KeyTyped.java` test. > > I used `CountDownLatch` for synchronisation. > > The test passes in CI. The test is somewhat similar to #21013, it uses similar synchronisation logic. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21085#issuecomment-2360515586 From aivanov at openjdk.org Thu Sep 19 09:47:43 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 19 Sep 2024 09:47:43 GMT Subject: Integrated: 8340007: Refactor KeyEvent/FunctionKeyTest.java In-Reply-To: References: Message-ID: On Mon, 16 Sep 2024 09:55:19 GMT, Alexey Ivanov wrote: > This changeset refactors `java/awt/event/KeyEvent/FunctionKeyTest.java`. > > Key changes: > > - Use `CyclicBarrier` to verify whether a key is pressed and released; > - Use `CountDownLatch` for frame activation; > - Ensure thread-safety for keeping thrown exceptions. > > Other changes: > > - Made `FunctionKeyTester` a nested class inside `FunctionKeyTest`; > - Used constants for the key events rather than magic numbers. > > I ran the updated test a few times with `JTREG=REPEAT_COUNT=20`, the test has passed. > > The updated test executes somewhat quicker than the old one. > > @azvegint, you may want to take a look. This pull request has now been integrated. Changeset: 2faf8b8d Author: Alexey Ivanov URL: https://git.openjdk.org/jdk/commit/2faf8b8d582183275b1fdc92313a1c63c1753e80 Stats: 114 lines in 1 file changed: 62 ins; 15 del; 37 mod 8340007: Refactor KeyEvent/FunctionKeyTest.java Reviewed-by: azvegint ------------- PR: https://git.openjdk.org/jdk/pull/21013 From azvegint at openjdk.org Thu Sep 19 09:52:36 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Thu, 19 Sep 2024 09:52:36 GMT Subject: RFR: 8340008: KeyEvent/KeyTyped/Numpad1KeyTyped.java has 15 seconds timeout In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 09:40:56 GMT, Alexey Ivanov wrote: > I am open-sourcing the `Numpad1KeyTyped.java` test. > > I used `CountDownLatch` for synchronisation. > > The test passes in CI. Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21085#pullrequestreview-2315017807 From aivanov at openjdk.org Thu Sep 19 11:51:39 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 19 Sep 2024 11:51:39 GMT Subject: Integrated: 8340306: Add border around instructions in PassFailJFrame In-Reply-To: References: Message-ID: On Tue, 17 Sep 2024 12:39:20 GMT, Alexey Ivanov wrote: > A trivial change which adds border around instruction text. It makes the text easier to read. > > (In some tests, people added leading spaces to each line to make the instructions easier to read; with the added border, there's no need for this trick.) This pull request has now been integrated. Changeset: 0120d3ee Author: Alexey Ivanov URL: https://git.openjdk.org/jdk/commit/0120d3eed50bdc9fa53f2c41b31791620aeef613 Stats: 2 lines in 1 file changed: 2 ins; 0 del; 0 mod 8340306: Add border around instructions in PassFailJFrame Reviewed-by: honkar, prr ------------- PR: https://git.openjdk.org/jdk/pull/21038 From ngubarkov at openjdk.org Thu Sep 19 11:54:56 2024 From: ngubarkov at openjdk.org (Nikita Gubarkov) Date: Thu, 19 Sep 2024 11:54:56 GMT Subject: RFR: 8339341: SurfaceManager cacheMap retains strong references [v4] In-Reply-To: <1ecWvJLiG54e0saEz_Jjz46gzxXnqsNDagdPQ3y_BN4=.27116e44-886b-405f-9d87-ec5e82e2fd20@github.com> References: <1ecWvJLiG54e0saEz_Jjz46gzxXnqsNDagdPQ3y_BN4=.27116e44-886b-405f-9d87-ec5e82e2fd20@github.com> Message-ID: > I moved SurfaceDataProxy cache into a separate class. > Now caching level is determined by placement of the SurfaceManager.ProxyCache object instead of a "proxy key". This cache "owns" proxies and therefore strong refs via them do not prevent the cache and GraphicsConfig from being detected as weakly reachable. Nikita Gubarkov has updated the pull request incrementally with one additional commit since the last revision: Revert wildcard import in X11GraphicsDevice ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20825/files - new: https://git.openjdk.org/jdk/pull/20825/files/87866453..1a7a6d62 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20825&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20825&range=02-03 Stats: 6 lines in 1 file changed: 5 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/20825.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20825/head:pull/20825 PR: https://git.openjdk.org/jdk/pull/20825 From aturbanov at openjdk.org Thu Sep 19 14:14:41 2024 From: aturbanov at openjdk.org (Andrey Turbanov) Date: Thu, 19 Sep 2024 14:14:41 GMT Subject: RFR: 8339972: Make a few fields in SortingFocusTraversalPolicy static In-Reply-To: References: Message-ID: On Thu, 25 Jul 2024 11:17:23 GMT, Andrey Turbanov wrote: > 2 fields in javax.swing.SortingFocusTraversalPolicy could be made 'static': > 1. FORWARD_TRAVERSAL = 0 > 2. BACKWARD_TRAVERSAL = 1 Any more reviewers? I will integrate tomorrow. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20327#issuecomment-2361102283 From azvegint at openjdk.org Thu Sep 19 15:13:36 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Thu, 19 Sep 2024 15:13:36 GMT Subject: RFR: 8340308: PassFailJFrame: Make rows default to number of lines in instructions In-Reply-To: References: Message-ID: On Tue, 17 Sep 2024 13:45:06 GMT, Alexey Ivanov wrote: > It has become quite common to use the following code > > > .rows((int) INSTRUCTIONS.lines().count() + 1) > > > to set the number of rows for `PassFailJFrame`. > > Make this the default value. Newer tests could drop `.rows` from builder configuration if the new default works well. > > If a test needs customising the new default value, the newly added method `rowsAdd` could be used to increase the number of rows. As another improvement, we can also consider calculating the default number of columns (based on the widest string?) in a separate issue. ------------- Marked as reviewed by azvegint (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21039#pullrequestreview-2315852047 From abhiscxk at openjdk.org Thu Sep 19 15:47:27 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 19 Sep 2024 15:47:27 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v12] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Test update ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/ed39f24a..9dc4e922 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=11 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=10-11 Stats: 15 lines in 1 file changed: 8 ins; 2 del; 5 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From aivanov at openjdk.org Thu Sep 19 15:57:39 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 19 Sep 2024 15:57:39 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v11] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Thu, 19 Sep 2024 04:56:13 GMT, Abhishek Kumar wrote: >> Few AWT MenuItem related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Test restructured and test frames set visible true Changes requested by aivanov (Reviewer). test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 44: > 42: private static final int NUM_WINDOWS = 400; > 43: private static TestFrame firstFrame; > 44: private static TestFrame testFrame; `testFrame` field is no longer needed, it can be a local variable in `componentShown`. test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 77: > 75: public void componentShown(ComponentEvent e) { > 76: for (int i = 1; i < NUM_WINDOWS - 1; ++i) { > 77: testFrame = new TestFrame("Running(" + i + ")..."); Currently the created frames flicker at the upper left upper corner of the screen, I suggest displaying them below the first frame: public void componentShown(ComponentEvent e) { final int x = firstFrame.getX(); final int y = firstFrame.getY() + firstFrame.getHeight() + 8; for (int i = 1; i < NUM_WINDOWS - 1; ++i) { testFrame = new TestFrame("Running(" + i + ")...", x, y); You'll create the last frame using the same constructor as above in the loop. I find this way less distracting, and I can read the instructions while the test continues to perform its _initialisation_. test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 83: > 81: testFrame = new TestFrame("Last Frame"); > 82: testFrame.setLocation(firstFrame.getX(), > 83: firstFrame.getY() + firstFrame.getHeight() + 8); I mean, these two lines will become: testFrame = new TestFrame("Last Frame", x, y); test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 94: > 92: } > 93: > 94: public TestFrame(String title, boolean visible) { You'll need a constructor which accepts `x` and `y`: Suggestion: public TestFrame(String title) { this(title, 0, 0, false); } public TestFrame(String s, int x, int y) { this(s, x, y, true); } private TestFrame(String title, int x, int y, boolean visible) { Then you'll call `setLocation(x, y);` before calling `setSize`. ------------- PR Review: https://git.openjdk.org/jdk/pull/21029#pullrequestreview-2315786971 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1766976607 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1766983802 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1766985049 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1766989912 From abhiscxk at openjdk.org Thu Sep 19 16:08:09 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 19 Sep 2024 16:08:09 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v13] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: TestFrame var declared as local var ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/9dc4e922..421ef3ef Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=12 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=11-12 Stats: 2 lines in 1 file changed: 1 ins; 1 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From aivanov at openjdk.org Thu Sep 19 16:08:10 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 19 Sep 2024 16:08:10 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v11] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Thu, 19 Sep 2024 14:55:39 GMT, Alexey Ivanov wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> Test restructured and test frames set visible true > > test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 94: > >> 92: } >> 93: >> 94: public TestFrame(String title, boolean visible) { > > You'll need a constructor which accepts `x` and `y`: > Suggestion: > > public TestFrame(String title) { > this(title, 0, 0, false); > } > > public TestFrame(String s, int x, int y) { > this(s, x, y, true); > } > > private TestFrame(String title, > int x, int y, > boolean visible) { > > > Then you'll call `setLocation(x, y);` before calling `setSize`. Most of these comments are already resolved, except for > `testFrame` field is no longer needed, it can be a local variable in `componentShown`. I discussed it with Abhishek privately but I forgot to click the *Submit* button to post them. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1767098803 From honkar at openjdk.org Thu Sep 19 16:11:35 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Thu, 19 Sep 2024 16:11:35 GMT Subject: RFR: 8340271: Open source several AWT Robot tests [v4] In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 09:18:57 GMT, Prasanta Sadhukhan wrote: >> Opensource few Robot tests > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > review comment fix Marked as reviewed by honkar (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21062#pullrequestreview-2316010203 From aivanov at openjdk.org Thu Sep 19 16:15:39 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 19 Sep 2024 16:15:39 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v13] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Thu, 19 Sep 2024 16:08:09 GMT, Abhishek Kumar wrote: >> Few AWT MenuItem related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > TestFrame var declared as local var Except for the minor nit, looks good to me now. test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 75: > 73: @Override > 74: public void componentShown(ComponentEvent e) { > 75: TestFrame testFrame; I'd rather declare it before the loop ? it's where `testFrame` is used. ------------- Marked as reviewed by aivanov (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21029#pullrequestreview-2316017874 PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1767114783 From abhiscxk at openjdk.org Thu Sep 19 16:22:27 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 19 Sep 2024 16:22:27 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v14] In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Minor fix ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21029/files - new: https://git.openjdk.org/jdk/pull/21029/files/421ef3ef..5aa4f88f Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=13 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21029&range=12-13 Stats: 2 lines in 1 file changed: 0 ins; 1 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21029.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21029/head:pull/21029 PR: https://git.openjdk.org/jdk/pull/21029 From abhiscxk at openjdk.org Thu Sep 19 16:22:28 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 19 Sep 2024 16:22:28 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v13] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Thu, 19 Sep 2024 16:12:45 GMT, Alexey Ivanov wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> TestFrame var declared as local var > > test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java line 75: > >> 73: @Override >> 74: public void componentShown(ComponentEvent e) { >> 75: TestFrame testFrame; > > I'd rather declare it before the loop ? it's where `testFrame` is used. Ok... Need re-review. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21029#discussion_r1767121466 From psadhukhan at openjdk.org Thu Sep 19 16:24:44 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Thu, 19 Sep 2024 16:24:44 GMT Subject: Integrated: 8340271: Open source several AWT Robot tests In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 13:26:35 GMT, Prasanta Sadhukhan wrote: > Opensource few Robot tests This pull request has now been integrated. Changeset: bc36ace7 Author: Prasanta Sadhukhan URL: https://git.openjdk.org/jdk/commit/bc36ace72c1189dcd6d0c05d40d8c568acd89b01 Stats: 182 lines in 2 files changed: 182 ins; 0 del; 0 mod 8340271: Open source several AWT Robot tests Reviewed-by: abhiscxk, honkar ------------- PR: https://git.openjdk.org/jdk/pull/21062 From aivanov at openjdk.org Thu Sep 19 16:28:47 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 19 Sep 2024 16:28:47 GMT Subject: RFR: 8339984: Open source AWT MenuItem related tests [v14] In-Reply-To: References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Thu, 19 Sep 2024 16:22:27 GMT, Abhishek Kumar wrote: >> Few AWT MenuItem related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Minor fix Marked as reviewed by aivanov (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21029#pullrequestreview-2316045934 From aivanov at openjdk.org Thu Sep 19 16:57:35 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 19 Sep 2024 16:57:35 GMT Subject: RFR: 8340308: PassFailJFrame: Make rows default to number of lines in instructions In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 15:10:55 GMT, Alexander Zvegintsev wrote: > As another improvement, we can also consider calculating the default number of columns (based on the widest string?) in a separate issue. Yes! I added a comment in JBS: > This is part of a larger effort for providing better defaults for sizing the instructions which is tracked by [JDK-8328163](https://bugs.openjdk.org/browse/JDK-8328163): *Implement automatic instruction sizing for `PassFailJFrame`*. I quickly prototyped it in my [8328163-autoSize-passFail](https://github.com/aivanov-jdk/jdk/tree/8328163-autoSize-passFail) branch ([diff to master](https://github.com/openjdk/jdk/compare/master...aivanov-jdk:jdk:8328163-autoSize-passFail)) in March 2024, yet it proved to be not as simple. I guess if we disable word-wrapping on `JTextArea`, it becomes simpler; yet some tests already depend on word-wrapping. I or anyone else have to come up with a clever heuristics which works good in most cases. I thought about using something like this: disable word-wrapping and get text dimensions; if the width is too large (how large?), then enable word-wrapping and reduce the width of the text area, recalculate the preferred size again. If the height is too large (how large?), limit it to a value, the instructions are already in `JScrollPane`, yet it's best to avoid scroll bars ? seeing all the instruction text is always better compared to having to scroll. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21039#issuecomment-2361637062 From aivanov at openjdk.org Thu Sep 19 17:02:38 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 19 Sep 2024 17:02:38 GMT Subject: Integrated: 8340308: PassFailJFrame: Make rows default to number of lines in instructions In-Reply-To: References: Message-ID: On Tue, 17 Sep 2024 13:45:06 GMT, Alexey Ivanov wrote: > It has become quite common to use the following code > > > .rows((int) INSTRUCTIONS.lines().count() + 1) > > > to set the number of rows for `PassFailJFrame`. > > Make this the default value. Newer tests could drop `.rows` from builder configuration if the new default works well. > > If a test needs customising the new default value, the newly added method `rowsAdd` could be used to increase the number of rows. This pull request has now been integrated. Changeset: d1d82400 Author: Alexey Ivanov URL: https://git.openjdk.org/jdk/commit/d1d824008d1dc70029013820814fd03c40b4e309 Stats: 35 lines in 1 file changed: 34 ins; 0 del; 1 mod 8340308: PassFailJFrame: Make rows default to number of lines in instructions Reviewed-by: honkar, azvegint ------------- PR: https://git.openjdk.org/jdk/pull/21039 From honkar at openjdk.org Thu Sep 19 18:05:30 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Thu, 19 Sep 2024 18:05:30 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 Message-ID: Following tests are updated in this PR: 1. test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java 2. test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java 3. test/jdk/java/awt/Checkbox/CheckboxNullLabelTest.java 4. test/jdk/java/awt/Checkbox/CheckboxPreferredSizeTest.java ------------- Commit messages: - eof newline - checkbox tests Changes: https://git.openjdk.org/jdk/pull/21094/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21094&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340077 Stats: 409 lines in 4 files changed: 409 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21094.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21094/head:pull/21094 PR: https://git.openjdk.org/jdk/pull/21094 From kizune at openjdk.org Thu Sep 19 19:53:44 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Thu, 19 Sep 2024 19:53:44 GMT Subject: Integrated: 8339902: Open source couple TextField related tests In-Reply-To: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> References: <3eqU_lYBmHdKOD1J2VZxY519u95a2qPAfZaOalgAr-U=.ccbf6739-7c82-43fa-a77f-d729e3123e12@github.com> Message-ID: On Mon, 16 Sep 2024 23:02:58 GMT, Alexander Zuev wrote: > Clean up and open source five TextField related tests: > java/awt/TextField/CaretPositionTest; > java/awt/TextField/SetBoundsTest; > java/awt/TextField/SetEchoCharTest4; > java/awt/TextField/SetPasswordTest; > java/awt/TextField/ZeroEchoCharTest This pull request has now been integrated. Changeset: fde85083 Author: Alexander Zuev URL: https://git.openjdk.org/jdk/commit/fde8508379d2983fa70784faef60699c81f9c359 Stats: 527 lines in 5 files changed: 527 ins; 0 del; 0 mod 8339902: Open source couple TextField related tests Reviewed-by: honkar ------------- PR: https://git.openjdk.org/jdk/pull/21026 From prr at openjdk.org Thu Sep 19 22:23:06 2024 From: prr at openjdk.org (Phil Race) Date: Thu, 19 Sep 2024 22:23:06 GMT Subject: Integrated: 8340480: Bad copyright notices in changes from JDK-8339902 Message-ID: fix legal notices ------------- Commit messages: - 8340480 Changes: https://git.openjdk.org/jdk/pull/21095/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21095&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340480 Stats: 5 lines in 5 files changed: 0 ins; 5 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21095.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21095/head:pull/21095 PR: https://git.openjdk.org/jdk/pull/21095 From kcr at openjdk.org Thu Sep 19 22:23:06 2024 From: kcr at openjdk.org (Kevin Rushforth) Date: Thu, 19 Sep 2024 22:23:06 GMT Subject: Integrated: 8340480: Bad copyright notices in changes from JDK-8339902 In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 22:12:28 GMT, Phil Race wrote: > fix legal notices Marked as reviewed by kcr (Author). ------------- PR Review: https://git.openjdk.org/jdk/pull/21095#pullrequestreview-2316838873 From bpb at openjdk.org Thu Sep 19 22:23:06 2024 From: bpb at openjdk.org (Brian Burkhalter) Date: Thu, 19 Sep 2024 22:23:06 GMT Subject: Integrated: 8340480: Bad copyright notices in changes from JDK-8339902 In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 22:12:28 GMT, Phil Race wrote: > fix legal notices Looks okay. ------------- Marked as reviewed by bpb (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21095#pullrequestreview-2316841147 From kizune at openjdk.org Thu Sep 19 22:23:07 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Thu, 19 Sep 2024 22:23:07 GMT Subject: Integrated: 8340480: Bad copyright notices in changes from JDK-8339902 In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 22:12:28 GMT, Phil Race wrote: > fix legal notices Marked as reviewed by kizune (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21095#pullrequestreview-2316842102 From prr at openjdk.org Thu Sep 19 22:23:07 2024 From: prr at openjdk.org (Phil Race) Date: Thu, 19 Sep 2024 22:23:07 GMT Subject: Integrated: 8340480: Bad copyright notices in changes from JDK-8339902 In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 22:12:28 GMT, Phil Race wrote: > fix legal notices This pull request has now been integrated. Changeset: fdc16a37 Author: Phil Race URL: https://git.openjdk.org/jdk/commit/fdc16a373459cb2311316448c765b1bee5c73694 Stats: 5 lines in 5 files changed: 0 ins; 5 del; 0 mod 8340480: Bad copyright notices in changes from JDK-8339902 Reviewed-by: kcr, bpb, kizune ------------- PR: https://git.openjdk.org/jdk/pull/21095 From kizune at openjdk.org Thu Sep 19 22:35:54 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Thu, 19 Sep 2024 22:35:54 GMT Subject: RFR: 8340228: Open source couple more miscellaneous AWT tests Message-ID: Cleaning up and opensourcing three more tests. ------------- Commit messages: - 8340228: Open source couple more miscellaneous AWT tests Changes: https://git.openjdk.org/jdk/pull/21097/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21097&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340228 Stats: 321 lines in 3 files changed: 321 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21097.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21097/head:pull/21097 PR: https://git.openjdk.org/jdk/pull/21097 From prr at openjdk.org Thu Sep 19 22:49:36 2024 From: prr at openjdk.org (Phil Race) Date: Thu, 19 Sep 2024 22:49:36 GMT Subject: RFR: 8340008: KeyEvent/KeyTyped/Numpad1KeyTyped.java has 15 seconds timeout In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 09:40:56 GMT, Alexey Ivanov wrote: > I am open-sourcing the `Numpad1KeyTyped.java` test. > > I used `CountDownLatch` for synchronisation. > > The test passes in CI. Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21085#pullrequestreview-2316868433 From prr at openjdk.org Thu Sep 19 22:52:45 2024 From: prr at openjdk.org (Phil Race) Date: Thu, 19 Sep 2024 22:52:45 GMT Subject: RFR: 8339895: Open source several AWT focus tests - series 3 In-Reply-To: References: Message-ID: <0TfZRUlaR22cmFAYehh21Zijdtc68KQJFKmaNpZm1aA=.74c931d4-611a-4917-a5c8-55b0e4099609@github.com> On Wed, 18 Sep 2024 03:37:17 GMT, Prasanta Sadhukhan wrote: > Opensource few focus tests Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21050#pullrequestreview-2316870545 From prr at openjdk.org Thu Sep 19 22:53:38 2024 From: prr at openjdk.org (Phil Race) Date: Thu, 19 Sep 2024 22:53:38 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v3] In-Reply-To: <-SetXAnjt6NZPmvVPxUNqm09A2PZE3F8Hjo2iorxkcg=.81418686-ae75-4558-a7f0-0592f416ab04@github.com> References: <-SetXAnjt6NZPmvVPxUNqm09A2PZE3F8Hjo2iorxkcg=.81418686-ae75-4558-a7f0-0592f416ab04@github.com> Message-ID: On Wed, 18 Sep 2024 04:32:50 GMT, Prasanta Sadhukhan wrote: >> Opensource few Focus tests > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > jcheck Marked as reviewed by prr (Reviewer). test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 28: > 26: * @bug 4982943 > 27: * @key headful > 28: * @summary focus lost in text fields or text areas, unable to enter characters from keyboar keyboar -> keyboard ------------- PR Review: https://git.openjdk.org/jdk/pull/21051#pullrequestreview-2316871337 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767681367 From psadhukhan at openjdk.org Fri Sep 20 03:08:41 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 03:08:41 GMT Subject: Integrated: 8339895: Open source several AWT focus tests - series 3 In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 03:37:17 GMT, Prasanta Sadhukhan wrote: > Opensource few focus tests This pull request has now been integrated. Changeset: 94c33179 Author: Prasanta Sadhukhan URL: https://git.openjdk.org/jdk/commit/94c33179b6a1205100d7c125f3a7c11e29621db9 Stats: 644 lines in 5 files changed: 644 ins; 0 del; 0 mod 8339895: Open source several AWT focus tests - series 3 Reviewed-by: prr ------------- PR: https://git.openjdk.org/jdk/pull/21050 From psadhukhan at openjdk.org Fri Sep 20 03:15:06 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 03:15:06 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v4] In-Reply-To: References: Message-ID: <3yNHmOgVkZcfJZpewia9X0v-JIK0aaSj3TxO36G4Ya4=.54c0600d-09cf-4fb1-973b-449a8660a47b@github.com> > Opensource few Focus tests Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: typo ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21051/files - new: https://git.openjdk.org/jdk/pull/21051/files/509ccf65..c1a3daf6 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21051&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21051&range=02-03 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21051.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21051/head:pull/21051 PR: https://git.openjdk.org/jdk/pull/21051 From psadhukhan at openjdk.org Fri Sep 20 03:15:06 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 03:15:06 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v3] In-Reply-To: References: <-SetXAnjt6NZPmvVPxUNqm09A2PZE3F8Hjo2iorxkcg=.81418686-ae75-4558-a7f0-0592f416ab04@github.com> Message-ID: On Thu, 19 Sep 2024 22:50:22 GMT, Phil Race wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> jcheck > > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 28: > >> 26: * @bug 4982943 >> 27: * @key headful >> 28: * @summary focus lost in text fields or text areas, unable to enter characters from keyboar > > keyboar -> keyboard @prrace Fixed but it revokes the approval....Please reapprove or someone "R"eviewer awake in this TZ to approve this minor change.. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767893273 From psadhukhan at openjdk.org Fri Sep 20 03:28:15 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 03:28:15 GMT Subject: RFR: 8339935: Open source several AWT focus tests - series 5 Message-ID: <9CBDlYAA5yUeyovwlZ8wpQ5fEE6YIXMUUt53BVb-JbU=.9f8c5c39-2e90-4d6a-868f-734cea42367e@github.com> Opensource few AWT focus tests ------------- Commit messages: - 8339935: Open source several AWT focus tests - series 5 Changes: https://git.openjdk.org/jdk/pull/21103/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21103&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339935 Stats: 315 lines in 4 files changed: 315 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21103.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21103/head:pull/21103 PR: https://git.openjdk.org/jdk/pull/21103 From psadhukhan at openjdk.org Fri Sep 20 04:07:15 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 04:07:15 GMT Subject: RFR: 8340367: Opensource few AWT image tests Message-ID: Opensource few image tests ------------- Commit messages: - jcheck - 8340367: Opensource few AWT image tests - 8340367: Opensource few AWT image tests - 8340367: Opensource few AWT image tests Changes: https://git.openjdk.org/jdk/pull/21104/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21104&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340367 Stats: 513 lines in 5 files changed: 513 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21104.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21104/head:pull/21104 PR: https://git.openjdk.org/jdk/pull/21104 From abhiscxk at openjdk.org Fri Sep 20 04:16:39 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 20 Sep 2024 04:16:39 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v4] In-Reply-To: <3yNHmOgVkZcfJZpewia9X0v-JIK0aaSj3TxO36G4Ya4=.54c0600d-09cf-4fb1-973b-449a8660a47b@github.com> References: <3yNHmOgVkZcfJZpewia9X0v-JIK0aaSj3TxO36G4Ya4=.54c0600d-09cf-4fb1-973b-449a8660a47b@github.com> Message-ID: <44FJk5ELzbsAwVrkTt47tgSpzQN1sgFpEEEYnGn4Rro=.4fa7b325-f2cc-46b1-b743-db8dd37d97ec@github.com> On Fri, 20 Sep 2024 03:15:06 GMT, Prasanta Sadhukhan wrote: >> Opensource few Focus tests > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > typo test/jdk/java/awt/Focus/AltTabEventsTest.java line 61: > 59: 2. Press Alt-tab. > 60: In the messqge dialog area you should see that > 61: WINDOW_DEACTIVATED,WINDOW_LOST_FOCUS event were generated. Suggestion: WINDOW_DEACTIVATED, WINDOW_LOST_FOCUS event were generated. test/jdk/java/awt/Focus/AltTabEventsTest.java line 80: > 78: .rows((int) INSTRUCTIONS.lines().count() + 5) > 79: .columns(35) > 80: .testUI(AltTabEventsTest::createTestUI) can be changed to `new Test();` and thus leading to remove the `createTestUI()` method. test/jdk/java/awt/Focus/AltTabEventsTest.java line 104: > 102: WindowAdapter wa = new WindowAdapter() { > 103: public void windowActivated(WindowEvent e) { > 104: println(e.toString()); can be replaced with `PassFailJFrame.log` everywhere. Anyways there is a repetition of `println`. Suggestion: PassFailJFrame.log(e.toString()); test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 54: > 52: > 53: public ComponentLostFocusTest() { > 54: try{ Suggestion: try { test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 56: > 54: try{ > 55: r = new Robot(); > 56: } catch(Exception e){ Suggestion: } catch (Exception e) { test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 69: > 67: }); > 68: > 69: frame.setLayout (new FlowLayout ()); Suggestion: frame.setLayout (new FlowLayout()); test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 79: > 77: public void doTest() { > 78: // Do requesting focus to the modal dialog in order to after that > 79: // to do requesting focus to the frame Doesn't sound correct, can it be rephrased? test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 103: > 101: tf.addFocusListener(new FocusAdapter() { > 102: public void focusGained(FocusEvent e) { > 103: System.out.println("TextField gained focus: "+e); Suggestion: System.out.println("TextField gained focus: " + e); test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 111: > 109: > 110: System.out.println("Focused window: " + KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusedWindow()); > 111: System.out.println("Focus owner: " + KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner()); please limit it to 80 cols. test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 118: > 116: } > 117: > 118: private void doRequestFocusToTextField(){ Suggestion: private void doRequestFocusToTextField() { test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 121: > 119: // do activation using press title > 120: Point loc = frame.getLocationOnScreen(); > 121: r.mouseMove(loc.x + frame.getWidth()/2, loc.y + frame.getInsets().top/2); Suggestion: r.mouseMove(loc.x + frame.getWidth() / 2, loc.y + frame.getInsets().top / 2); test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 121: > 119: // do activation using press title > 120: Point loc = frame.getLocationOnScreen(); > 121: r.mouseMove(loc.x + frame.getWidth()/2, loc.y + frame.getInsets().top/2); Should it be accessed on EDT? test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 131: > 129: } > 130: > 131: public static final void main(String args[]){ Suggestion: public static final void main(String args[]) { ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767916449 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767916965 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767917411 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767919827 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767918226 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767918406 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767919134 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767919295 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767920580 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767920637 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767920840 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767921196 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767920918 From psadhukhan at openjdk.org Fri Sep 20 04:19:35 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 04:19:35 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 17:59:26 GMT, Harshitha Onkar wrote: > Following tests are updated in this PR: > > 1. test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java > 2. test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java > 3. test/jdk/java/awt/Checkbox/CheckboxNullLabelTest.java > 4. test/jdk/java/awt/Checkbox/CheckboxPreferredSizeTest.java Marked as reviewed by psadhukhan (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21094#pullrequestreview-2317190922 From abhiscxk at openjdk.org Fri Sep 20 04:21:50 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 20 Sep 2024 04:21:50 GMT Subject: Integrated: 8339984: Open source AWT MenuItem related tests In-Reply-To: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> References: <65-2xRE3aiuoK1Bi1CQR3abb-Km0mL-Gd03qNOd8eco=.0765fe63-3886-4e10-b07f-e1c249a8df87@github.com> Message-ID: On Tue, 17 Sep 2024 04:31:09 GMT, Abhishek Kumar wrote: > Few AWT MenuItem related tests are converted from applet to manual and moved to open. This pull request has now been integrated. Changeset: f4e40179 Author: Abhishek Kumar URL: https://git.openjdk.org/jdk/commit/f4e401791efb920b9773f2886b34904c95106727 Stats: 468 lines in 5 files changed: 468 ins; 0 del; 0 mod 8339984: Open source AWT MenuItem related tests Reviewed-by: aivanov ------------- PR: https://git.openjdk.org/jdk/pull/21029 From honkar at openjdk.org Fri Sep 20 05:07:34 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Fri, 20 Sep 2024 05:07:34 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 17:59:26 GMT, Harshitha Onkar wrote: > Following tests are updated in this PR: > > 1. test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java > 2. test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java > 3. test/jdk/java/awt/Checkbox/CheckboxNullLabelTest.java > 4. test/jdk/java/awt/Checkbox/CheckboxPreferredSizeTest.java test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java line 42: > 40: public class CheckboxBoxSizeTest { > 41: private static final String INSTRUCTIONS = """ > 42: This test must be run at UI Scale of 100% OR 150% or greater. @prsadhuk Tested at different UI Scales on windows and "the box" doesn't seem to scale properly and doesn't match windows native app (used Word -> Font settings to check). I think it is product bug. These tests weren't problemlisted so I may need to create a new JBS bug and problemlist this test and probably CheckboxIndicatorSizeTest on windows. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1767986862 From psadhukhan at openjdk.org Fri Sep 20 05:13:03 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 05:13:03 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v5] In-Reply-To: References: Message-ID: <9khMD1XZeuJHnMsYp2Xj1Yo5cI50RKQlFeGVQYdLeYk=.dcbcb46d-b89e-4aec-8c38-020c1083a073@github.com> > Opensource few Focus tests Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Formatting, EDT addition ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21051/files - new: https://git.openjdk.org/jdk/pull/21051/files/c1a3daf6..4b6795d8 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21051&range=04 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21051&range=03-04 Stats: 68 lines in 2 files changed: 30 ins; 21 del; 17 mod Patch: https://git.openjdk.org/jdk/pull/21051.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21051/head:pull/21051 PR: https://git.openjdk.org/jdk/pull/21051 From psadhukhan at openjdk.org Fri Sep 20 05:14:34 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 05:14:34 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 05:04:18 GMT, Harshitha Onkar wrote: >> Following tests are updated in this PR: >> >> 1. test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java >> 2. test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java >> 3. test/jdk/java/awt/Checkbox/CheckboxNullLabelTest.java >> 4. test/jdk/java/awt/Checkbox/CheckboxPreferredSizeTest.java > > test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java line 42: > >> 40: public class CheckboxBoxSizeTest { >> 41: private static final String INSTRUCTIONS = """ >> 42: This test must be run at UI Scale of 100% OR 150% or greater. > > @prsadhuk Tested at different UI Scales on windows and "the box" doesn't seem to scale properly and doesn't match windows native app (used Word -> Font settings to check). > I think it is product bug. These tests weren't problemlisted so I may need to create a new JBS bug and problemlist this test and probably CheckboxIndicatorSizeTest on windows. Looks to be similar to [JDK-8233068](https://bugs.openjdk.org/browse/JDK-8233068) ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1767992127 From psadhukhan at openjdk.org Fri Sep 20 05:17:38 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 05:17:38 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v4] In-Reply-To: <44FJk5ELzbsAwVrkTt47tgSpzQN1sgFpEEEYnGn4Rro=.4fa7b325-f2cc-46b1-b743-db8dd37d97ec@github.com> References: <3yNHmOgVkZcfJZpewia9X0v-JIK0aaSj3TxO36G4Ya4=.54c0600d-09cf-4fb1-973b-449a8660a47b@github.com> <44FJk5ELzbsAwVrkTt47tgSpzQN1sgFpEEEYnGn4Rro=.4fa7b325-f2cc-46b1-b743-db8dd37d97ec@github.com> Message-ID: <99zQrHIY81ZRXt_9lN9cScUVujJcyhhfXEnMtR00URI=.11d7d3e4-d9d9-4f2f-baa6-cd9a288995d0@github.com> On Fri, 20 Sep 2024 04:02:12 GMT, Abhishek Kumar wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> typo > > test/jdk/java/awt/Focus/AltTabEventsTest.java line 61: > >> 59: 2. Press Alt-tab. >> 60: In the messqge dialog area you should see that >> 61: WINDOW_DEACTIVATED,WINDOW_LOST_FOCUS event were generated. > > Suggestion: > > WINDOW_DEACTIVATED, WINDOW_LOST_FOCUS event were generated. ok > test/jdk/java/awt/Focus/AltTabEventsTest.java line 80: > >> 78: .rows((int) INSTRUCTIONS.lines().count() + 5) >> 79: .columns(35) >> 80: .testUI(AltTabEventsTest::createTestUI) > > can be changed to `new Test();` and thus leading to remove the `createTestUI()` method. ok > test/jdk/java/awt/Focus/AltTabEventsTest.java line 104: > >> 102: WindowAdapter wa = new WindowAdapter() { >> 103: public void windowActivated(WindowEvent e) { >> 104: println(e.toString()); > > can be replaced with `PassFailJFrame.log` everywhere. Anyways there is a repetition of `println`. > Suggestion: > > PassFailJFrame.log(e.toString()); it will be same.. > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 54: > >> 52: >> 53: public ComponentLostFocusTest() { >> 54: try{ > > Suggestion: > > try { ok > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 56: > >> 54: try{ >> 55: r = new Robot(); >> 56: } catch(Exception e){ > > Suggestion: > > } catch (Exception e) { ok > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 69: > >> 67: }); >> 68: >> 69: frame.setLayout (new FlowLayout ()); > > Suggestion: > > frame.setLayout (new FlowLayout()); ok > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 79: > >> 77: public void doTest() { >> 78: // Do requesting focus to the modal dialog in order to after that >> 79: // to do requesting focus to the frame > > Doesn't sound correct, can it be rephrased? removed > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 103: > >> 101: tf.addFocusListener(new FocusAdapter() { >> 102: public void focusGained(FocusEvent e) { >> 103: System.out.println("TextField gained focus: "+e); > > Suggestion: > > System.out.println("TextField gained focus: " + e); ok > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 111: > >> 109: >> 110: System.out.println("Focused window: " + KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusedWindow()); >> 111: System.out.println("Focus owner: " + KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner()); > > please limit it to 80 cols. ok > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 118: > >> 116: } >> 117: >> 118: private void doRequestFocusToTextField(){ > > Suggestion: > > private void doRequestFocusToTextField() { ok > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 121: > >> 119: // do activation using press title >> 120: Point loc = frame.getLocationOnScreen(); >> 121: r.mouseMove(loc.x + frame.getWidth()/2, loc.y + frame.getInsets().top/2); > > Suggestion: > > r.mouseMove(loc.x + frame.getWidth() / 2, loc.y + frame.getInsets().top / 2); ok > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 121: > >> 119: // do activation using press title >> 120: Point loc = frame.getLocationOnScreen(); >> 121: r.mouseMove(loc.x + frame.getWidth()/2, loc.y + frame.getInsets().top/2); > > Should it be accessed on EDT? modified test to put relevant portion under EDT and also added dispose.. > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 131: > >> 129: } >> 130: >> 131: public static final void main(String args[]){ > > Suggestion: > > public static final void main(String args[]) { ok ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767992547 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767992609 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767992742 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767993053 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767992807 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767992856 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767992946 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767993001 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767993094 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767993136 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767993175 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767993524 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767993207 From abhiscxk at openjdk.org Fri Sep 20 05:27:36 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 20 Sep 2024 05:27:36 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v4] In-Reply-To: <99zQrHIY81ZRXt_9lN9cScUVujJcyhhfXEnMtR00URI=.11d7d3e4-d9d9-4f2f-baa6-cd9a288995d0@github.com> References: <3yNHmOgVkZcfJZpewia9X0v-JIK0aaSj3TxO36G4Ya4=.54c0600d-09cf-4fb1-973b-449a8660a47b@github.com> <44FJk5ELzbsAwVrkTt47tgSpzQN1sgFpEEEYnGn4Rro=.4fa7b325-f2cc-46b1-b743-db8dd37d97ec@github.com> <99zQrHIY81ZRXt_9lN9cScUVujJcyhhfXEnMtR00URI=.11d7d3e4-d9d9-4f2f-baa6-cd9a288995d0@github.com> Message-ID: On Fri, 20 Sep 2024 05:13:03 GMT, Prasanta Sadhukhan wrote: >> test/jdk/java/awt/Focus/AltTabEventsTest.java line 80: >> >>> 78: .rows((int) INSTRUCTIONS.lines().count() + 5) >>> 79: .columns(35) >>> 80: .testUI(AltTabEventsTest::createTestUI) >> >> can be changed to `new Test();` and thus leading to remove the `createTestUI()` method. > > ok Looks like you missed this. >> test/jdk/java/awt/Focus/AltTabEventsTest.java line 104: >> >>> 102: WindowAdapter wa = new WindowAdapter() { >>> 103: public void windowActivated(WindowEvent e) { >>> 104: println(e.toString()); >> >> can be replaced with `PassFailJFrame.log` everywhere. Anyways there is a repetition of `println`. >> Suggestion: >> >> PassFailJFrame.log(e.toString()); > > it will be same.. `println` method can be removed if `PassFailJFrame.log` is used directly. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767997395 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767998311 From abhiscxk at openjdk.org Fri Sep 20 05:27:36 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 20 Sep 2024 05:27:36 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v4] In-Reply-To: References: <3yNHmOgVkZcfJZpewia9X0v-JIK0aaSj3TxO36G4Ya4=.54c0600d-09cf-4fb1-973b-449a8660a47b@github.com> <44FJk5ELzbsAwVrkTt47tgSpzQN1sgFpEEEYnGn4Rro=.4fa7b325-f2cc-46b1-b743-db8dd37d97ec@github.com> <99zQrHIY81ZRXt_9lN9cScUVujJcyhhfXEnMtR00URI=.11d7d3e4-d9d9-4f2f-baa6-cd9a288995d0@github.com> Message-ID: On Fri, 20 Sep 2024 05:20:54 GMT, Abhishek Kumar wrote: >> ok > > Looks like you missed this. Sorry, it was a mistake on my side. Don't know why but updated test was not shown. It is updated now. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1767999704 From honkar at openjdk.org Fri Sep 20 05:29:35 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Fri, 20 Sep 2024 05:29:35 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 05:12:22 GMT, Prasanta Sadhukhan wrote: >> test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java line 42: >> >>> 40: public class CheckboxBoxSizeTest { >>> 41: private static final String INSTRUCTIONS = """ >>> 42: This test must be run at UI Scale of 100% OR 150% or greater. >> >> @prsadhuk Tested at different UI Scales on windows and "the box" doesn't seem to scale properly and doesn't match windows native app (used Word -> Font settings to check). >> I think it is product bug. These tests weren't problemlisted so I may need to create a new JBS bug and problemlist this test and probably CheckboxIndicatorSizeTest on windows. > > Looks to be similar to [JDK-8233068](https://bugs.openjdk.org/browse/JDK-8233068) @prsadhuk Thanks for linking the issue. Yes it looks to be similar. Unlike XCheckboxPeer.java, WCheckboxPeer.java does not have paintCheckbox(), it is probably done somewhere else for windows. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1768001190 From psadhukhan at openjdk.org Fri Sep 20 05:35:35 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 05:35:35 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v4] In-Reply-To: References: <3yNHmOgVkZcfJZpewia9X0v-JIK0aaSj3TxO36G4Ya4=.54c0600d-09cf-4fb1-973b-449a8660a47b@github.com> <44FJk5ELzbsAwVrkTt47tgSpzQN1sgFpEEEYnGn4Rro=.4fa7b325-f2cc-46b1-b743-db8dd37d97ec@github.com> <99zQrHIY81ZRXt_9lN9cScUVujJcyhhfXEnMtR00URI=.11d7d3e4-d9d9-4f2f-baa6-cd9a288995d0@github.com> Message-ID: On Fri, 20 Sep 2024 05:22:33 GMT, Abhishek Kumar wrote: >> it will be same.. > > `println` method can be removed if `PassFailJFrame.log` is used directly. Then PassFailJFrame.log will be repeated, so it's same...dont think it's critical to change.. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1768003727 From abhiscxk at openjdk.org Fri Sep 20 05:35:35 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 20 Sep 2024 05:35:35 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v4] In-Reply-To: References: <3yNHmOgVkZcfJZpewia9X0v-JIK0aaSj3TxO36G4Ya4=.54c0600d-09cf-4fb1-973b-449a8660a47b@github.com> <44FJk5ELzbsAwVrkTt47tgSpzQN1sgFpEEEYnGn4Rro=.4fa7b325-f2cc-46b1-b743-db8dd37d97ec@github.com> <99zQrHIY81ZRXt_9lN9cScUVujJcyhhfXEnMtR00URI=.11d7d3e4-d9d9-4f2f-baa6-cd9a288995d0@github.com> Message-ID: On Fri, 20 Sep 2024 05:30:52 GMT, Prasanta Sadhukhan wrote: >> `println` method can be removed if `PassFailJFrame.log` is used directly. > > Then PassFailJFrame.log will be repeated, so it's same...dont think it's critical to change.. Yeah, not critical. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1768004981 From abhiscxk at openjdk.org Fri Sep 20 05:35:37 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 20 Sep 2024 05:35:37 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v5] In-Reply-To: <9khMD1XZeuJHnMsYp2Xj1Yo5cI50RKQlFeGVQYdLeYk=.dcbcb46d-b89e-4aec-8c38-020c1083a073@github.com> References: <9khMD1XZeuJHnMsYp2Xj1Yo5cI50RKQlFeGVQYdLeYk=.dcbcb46d-b89e-4aec-8c38-020c1083a073@github.com> Message-ID: <9js-98w3ESNvmE26nWCArUf4SQQt1M-IHgtrHwpSQ94=.ab02640b-88fa-4996-90fb-6f31aa2129cc@github.com> On Fri, 20 Sep 2024 05:13:03 GMT, Prasanta Sadhukhan wrote: >> Opensource few Focus tests > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Formatting, EDT addition test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 53: > 51: static Dialog dialog = null; > 52: static volatile boolean passed; > 53: static Point loc; Should it be volatile also? test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 107: > 105: private static void doRequestFocusToTextField() { > 106: // do activation using press title > 107: r.mouseMove(loc.x + frame.getWidth() / 2, loc.y + frame.getInsets().top / 2); `frame.getWidth` also should be on EDT ? test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 121: > 119: r.setAutoDelay(100); > 120: > 121: ComponentLostFocusTest test; Unused variable. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1768003653 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1768002428 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1768003421 From psadhukhan at openjdk.org Fri Sep 20 05:41:18 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 05:41:18 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v6] In-Reply-To: References: Message-ID: > Opensource few Focus tests Prasanta Sadhukhan has updated the pull request incrementally with two additional commits since the last revision: - volatile - EDT ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21051/files - new: https://git.openjdk.org/jdk/pull/21051/files/4b6795d8..2dcd760b Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21051&range=05 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21051&range=04-05 Stats: 7 lines in 1 file changed: 4 ins; 1 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/21051.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21051/head:pull/21051 PR: https://git.openjdk.org/jdk/pull/21051 From psadhukhan at openjdk.org Fri Sep 20 05:41:19 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 05:41:19 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v5] In-Reply-To: <9js-98w3ESNvmE26nWCArUf4SQQt1M-IHgtrHwpSQ94=.ab02640b-88fa-4996-90fb-6f31aa2129cc@github.com> References: <9khMD1XZeuJHnMsYp2Xj1Yo5cI50RKQlFeGVQYdLeYk=.dcbcb46d-b89e-4aec-8c38-020c1083a073@github.com> <9js-98w3ESNvmE26nWCArUf4SQQt1M-IHgtrHwpSQ94=.ab02640b-88fa-4996-90fb-6f31aa2129cc@github.com> Message-ID: On Fri, 20 Sep 2024 05:30:45 GMT, Abhishek Kumar wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> Formatting, EDT addition > > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 53: > >> 51: static Dialog dialog = null; >> 52: static volatile boolean passed; >> 53: static Point loc; > > Should it be volatile also? ok > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 107: > >> 105: private static void doRequestFocusToTextField() { >> 106: // do activation using press title >> 107: r.mouseMove(loc.x + frame.getWidth() / 2, loc.y + frame.getInsets().top / 2); > > `frame.getWidth` also should be on EDT ? ok > test/jdk/java/awt/Focus/ComponentLostFocusTest.java line 121: > >> 119: r.setAutoDelay(100); >> 120: >> 121: ComponentLostFocusTest test; > > Unused variable. removed ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1768008256 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1768007088 PR Review Comment: https://git.openjdk.org/jdk/pull/21051#discussion_r1768007142 From abhiscxk at openjdk.org Fri Sep 20 05:50:34 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 20 Sep 2024 05:50:34 GMT Subject: RFR: 8339906: Open source several AWT focus tests - series 4 [v6] In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 05:41:18 GMT, Prasanta Sadhukhan wrote: >> Opensource few Focus tests > > Prasanta Sadhukhan has updated the pull request incrementally with two additional commits since the last revision: > > - volatile > - EDT Hope you have run the automated test in CI. ------------- Marked as reviewed by abhiscxk (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21051#pullrequestreview-2317316384 From psadhukhan at openjdk.org Fri Sep 20 06:10:41 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 06:10:41 GMT Subject: Integrated: 8339906: Open source several AWT focus tests - series 4 In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 03:51:08 GMT, Prasanta Sadhukhan wrote: > Opensource few Focus tests This pull request has now been integrated. Changeset: 46b02f49 Author: Prasanta Sadhukhan URL: https://git.openjdk.org/jdk/commit/46b02f49bcc730d94e37cf17fa996fdd12bdb990 Stats: 526 lines in 4 files changed: 526 ins; 0 del; 0 mod 8339906: Open source several AWT focus tests - series 4 Reviewed-by: abhiscxk, prr ------------- PR: https://git.openjdk.org/jdk/pull/21051 From psadhukhan at openjdk.org Fri Sep 20 07:47:36 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 07:47:36 GMT Subject: RFR: 8340084: Open source AWT Frame related tests [v2] In-Reply-To: <3F2xejJLH59rCU6yMgISA16Dff7fWPgx5BgZu-eZzHw=.e84e44f1-28e3-4dcc-9bdb-d917899ee3dc@github.com> References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> <3F2xejJLH59rCU6yMgISA16Dff7fWPgx5BgZu-eZzHw=.e84e44f1-28e3-4dcc-9bdb-d917899ee3dc@github.com> Message-ID: On Thu, 19 Sep 2024 05:21:02 GMT, Abhishek Kumar wrote: >> Few AWT Frame related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Review comment fix test/jdk/java/awt/Frame/DefaultLocationTest.java line 59: > 57: EventQueue.invokeAndWait(() -> { > 58: if (f != null) { > 59: f.dispose(); We add "f" to PassFailJFrame through `addTestWIndow` so I would assume `awaitAndCheck` should dispose off the frame when we press Pass/Fail, no need to do it explicitly.. test/jdk/java/awt/Frame/FrameLayoutTest.java line 33: > 31: * @library /java/awt/regtesthelpers > 32: * @requires (os.family == "windows") > 33: * @build PassFailJFrame guess @library @build placement should be together, although not mandatory I presume.. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21052#discussion_r1768063691 PR Review Comment: https://git.openjdk.org/jdk/pull/21052#discussion_r1768140237 From abhiscxk at openjdk.org Fri Sep 20 08:04:30 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 20 Sep 2024 08:04:30 GMT Subject: RFR: 8340084: Open source AWT Frame related tests [v3] In-Reply-To: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> Message-ID: <3iLEo71PiOQcWkrWO7yQwGAeimfJAZ3mIVJ5eXTGpFA=.ff572634-949c-49b3-a16f-83f1959f6565@github.com> > Few AWT Frame related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: Review comment update ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21052/files - new: https://git.openjdk.org/jdk/pull/21052/files/c5de5524..523e410c Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21052&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21052&range=01-02 Stats: 10 lines in 1 file changed: 0 ins; 8 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/21052.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21052/head:pull/21052 PR: https://git.openjdk.org/jdk/pull/21052 From abhiscxk at openjdk.org Fri Sep 20 08:04:33 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 20 Sep 2024 08:04:33 GMT Subject: RFR: 8340084: Open source AWT Frame related tests [v2] In-Reply-To: References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> <3F2xejJLH59rCU6yMgISA16Dff7fWPgx5BgZu-eZzHw=.e84e44f1-28e3-4dcc-9bdb-d917899ee3dc@github.com> Message-ID: On Fri, 20 Sep 2024 06:36:24 GMT, Prasanta Sadhukhan wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> Review comment fix > > test/jdk/java/awt/Frame/DefaultLocationTest.java line 59: > >> 57: EventQueue.invokeAndWait(() -> { >> 58: if (f != null) { >> 59: f.dispose(); > > We add "f" to PassFailJFrame through `addTestWIndow` so I would assume `awaitAndCheck` should dispose off the frame when we press Pass/Fail, no need to do it explicitly.. Ok.. updated. > test/jdk/java/awt/Frame/FrameLayoutTest.java line 33: > >> 31: * @library /java/awt/regtesthelpers >> 32: * @requires (os.family == "windows") >> 33: * @build PassFailJFrame > > guess @library @build placement should be together, although not mandatory I presume.. Keeping it as it is. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21052#discussion_r1768167394 PR Review Comment: https://git.openjdk.org/jdk/pull/21052#discussion_r1768167699 From psadhukhan at openjdk.org Fri Sep 20 08:47:36 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 08:47:36 GMT Subject: RFR: 8340084: Open source AWT Frame related tests [v3] In-Reply-To: <3iLEo71PiOQcWkrWO7yQwGAeimfJAZ3mIVJ5eXTGpFA=.ff572634-949c-49b3-a16f-83f1959f6565@github.com> References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> <3iLEo71PiOQcWkrWO7yQwGAeimfJAZ3mIVJ5eXTGpFA=.ff572634-949c-49b3-a16f-83f1959f6565@github.com> Message-ID: <3jqAwnN7GJt0IDuI1_iS10L1PQhZIkmzU54GGB4Kg-E=.37b4f22c-f1a1-4650-a9b6-a5d054c56e84@github.com> On Fri, 20 Sep 2024 08:04:30 GMT, Abhishek Kumar wrote: >> Few AWT Frame related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Review comment update Marked as reviewed by psadhukhan (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21052#pullrequestreview-2317653132 From psadhukhan at openjdk.org Fri Sep 20 09:03:38 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 09:03:38 GMT Subject: RFR: 8340393: Open source closed choice tests #2 In-Reply-To: References: Message-ID: <6Ce-Nxs0__xuTHYjWSvXCPa3h-1J3X8624OyUsBcVv0=.46051e38-0445-4f9c-9f34-7d31e2268907@github.com> On Thu, 19 Sep 2024 06:39:40 GMT, Alexander Zvegintsev wrote: > few manual tests to open source > Tested on all platforms, all looks good. Marked as reviewed by psadhukhan (Reviewer). test/jdk/java/awt/Choice/CheckChoiceTest.java line 29: > 27: import java.awt.BorderLayout; > 28: import java.awt.Choice; > 29: import java.awt.Frame; I guess it was decided that java.awt will come before javax.swing... test/jdk/java/awt/Choice/DisabledList.java line 43: > 41: > 42: private static final String INSTRUCTIONS = """ > 43: 1) Switch checkbox Shouldn't it be "Enable checkbox"? ------------- PR Review: https://git.openjdk.org/jdk/pull/21081#pullrequestreview-2317656604 PR Review Comment: https://git.openjdk.org/jdk/pull/21081#discussion_r1768231187 PR Review Comment: https://git.openjdk.org/jdk/pull/21081#discussion_r1768250456 From azvegint at openjdk.org Fri Sep 20 09:18:20 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 20 Sep 2024 09:18:20 GMT Subject: RFR: 8340393: Open source closed choice tests #2 [v2] In-Reply-To: <6Ce-Nxs0__xuTHYjWSvXCPa3h-1J3X8624OyUsBcVv0=.46051e38-0445-4f9c-9f34-7d31e2268907@github.com> References: <6Ce-Nxs0__xuTHYjWSvXCPa3h-1J3X8624OyUsBcVv0=.46051e38-0445-4f9c-9f34-7d31e2268907@github.com> Message-ID: On Fri, 20 Sep 2024 08:46:32 GMT, Prasanta Sadhukhan wrote: >> Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: >> >> 8340433: Open source closed choice tests #3 > > test/jdk/java/awt/Choice/CheckChoiceTest.java line 29: > >> 27: import java.awt.BorderLayout; >> 28: import java.awt.Choice; >> 29: import java.awt.Frame; > > I guess it was decided that java.awt will come before javax.swing... updated. > test/jdk/java/awt/Choice/DisabledList.java line 43: > >> 41: >> 42: private static final String INSTRUCTIONS = """ >> 43: 1) Switch checkbox > > Shouldn't it be "Enable checkbox"? I would read the "Enable checkbox" as somehow related to `setEnabled`, but the component is already enabled. So I'll keep it as it is. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21081#discussion_r1768266361 PR Review Comment: https://git.openjdk.org/jdk/pull/21081#discussion_r1768266326 From azvegint at openjdk.org Fri Sep 20 09:18:20 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 20 Sep 2024 09:18:20 GMT Subject: RFR: 8340393: Open source closed choice tests #2 [v2] In-Reply-To: References: Message-ID: > few manual tests to open source > Tested on all platforms, all looks good. Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: 8340433: Open source closed choice tests #3 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21081/files - new: https://git.openjdk.org/jdk/pull/21081/files/fecc2f8c..29851a72 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21081&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21081&range=00-01 Stats: 6 lines in 1 file changed: 3 ins; 3 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21081.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21081/head:pull/21081 PR: https://git.openjdk.org/jdk/pull/21081 From psadhukhan at openjdk.org Fri Sep 20 09:21:38 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 09:21:38 GMT Subject: RFR: 8340393: Open source closed choice tests #2 [v2] In-Reply-To: References: <6Ce-Nxs0__xuTHYjWSvXCPa3h-1J3X8624OyUsBcVv0=.46051e38-0445-4f9c-9f34-7d31e2268907@github.com> Message-ID: On Fri, 20 Sep 2024 09:13:29 GMT, Alexander Zvegintsev wrote: >> test/jdk/java/awt/Choice/DisabledList.java line 43: >> >>> 41: >>> 42: private static final String INSTRUCTIONS = """ >>> 43: 1) Switch checkbox >> >> Shouldn't it be "Enable checkbox"? > > I would read the "Enable checkbox" as somehow related to `setEnabled`, but the component is already enabled. > So I'll keep it as it is. As per Checkbox spec "A check box is a graphical component that can be in either an "on" (true) or "off" (false) state" so I guess "Switch on checkbox" would be more apt.. To me atleast, "switch checkbox" doesn't sound perfect... ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21081#discussion_r1768273607 From azvegint at openjdk.org Fri Sep 20 09:35:31 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 20 Sep 2024 09:35:31 GMT Subject: RFR: 8340393: Open source closed choice tests #2 [v3] In-Reply-To: References: Message-ID: > few manual tests to open source > Tested on all platforms, all looks good. Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: instructions update ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21081/files - new: https://git.openjdk.org/jdk/pull/21081/files/29851a72..964075ea Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21081&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21081&range=01-02 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21081.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21081/head:pull/21081 PR: https://git.openjdk.org/jdk/pull/21081 From azvegint at openjdk.org Fri Sep 20 09:35:32 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 20 Sep 2024 09:35:32 GMT Subject: RFR: 8340393: Open source closed choice tests #2 [v3] In-Reply-To: References: <6Ce-Nxs0__xuTHYjWSvXCPa3h-1J3X8624OyUsBcVv0=.46051e38-0445-4f9c-9f34-7d31e2268907@github.com> Message-ID: <_7j2TAirDLXpnKkjHbcoRdgr-AERTKwRTDDqhs5eDbg=.607443c0-f534-4bfc-b4b9-3b474caf4b8d@github.com> On Fri, 20 Sep 2024 09:18:42 GMT, Prasanta Sadhukhan wrote: >> I would read the "Enable checkbox" as somehow related to `setEnabled`, but the component is already enabled. >> So I'll keep it as it is. > > As per Checkbox spec > "A check box is a graphical component that can be in either an "on" (true) or "off" (false) state" > so I guess "Switch on checkbox" would be more apt.. To me atleast, "switch checkbox" doesn't sound perfect... It is off by default in this test, so "switch" will set it to the desired selected state. So it should be OK. Anyway, updated to the "Select the checkbox" ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21081#discussion_r1768291260 From aivanov at openjdk.org Fri Sep 20 09:50:36 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 20 Sep 2024 09:50:36 GMT Subject: RFR: 8339972: Make a few fields in SortingFocusTraversalPolicy static In-Reply-To: References: Message-ID: On Thu, 25 Jul 2024 11:17:23 GMT, Andrey Turbanov wrote: > 2 fields in javax.swing.SortingFocusTraversalPolicy could be made 'static': > 1. FORWARD_TRAVERSAL = 0 > 2. BACKWARD_TRAVERSAL = 1 Marked as reviewed by aivanov (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/20327#pullrequestreview-2317790478 From psadhukhan at openjdk.org Fri Sep 20 09:50:36 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 20 Sep 2024 09:50:36 GMT Subject: RFR: 8340393: Open source closed choice tests #2 [v3] In-Reply-To: References: Message-ID: <7rYt4COxxiogUL6DQNhmtahmIokeRpxhk7bcGfxjuZA=.9e0a2199-c367-438e-8ce8-ed204d1558fe@github.com> On Fri, 20 Sep 2024 09:35:31 GMT, Alexander Zvegintsev wrote: >> few manual tests to open source >> Tested on all platforms, all looks good. > > Alexander Zvegintsev has updated the pull request incrementally with one additional commit since the last revision: > > instructions update Marked as reviewed by psadhukhan (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21081#pullrequestreview-2317791410 From azvegint at openjdk.org Fri Sep 20 09:58:13 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 20 Sep 2024 09:58:13 GMT Subject: RFR: 8340433: Open source closed choice tests #3 Message-ID: few more tests to open source Testing is good. ------------- Commit messages: - 8340433: Open source closed choice tests #3 Changes: https://git.openjdk.org/jdk/pull/21107/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21107&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340433 Stats: 341 lines in 3 files changed: 341 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21107.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21107/head:pull/21107 PR: https://git.openjdk.org/jdk/pull/21107 From aivanov at openjdk.org Fri Sep 20 10:02:38 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 20 Sep 2024 10:02:38 GMT Subject: RFR: 8339524: Clean up ExtendedRobot tests In-Reply-To: References: Message-ID: <8UBfUqA1QpTm7I9A-l0zarbWIU1TWEcex9os8w4gBko=.cbf24cac-4fed-4c6b-8773-836131bc3cd1@github.com> On Wed, 4 Sep 2024 03:34:34 GMT, Alisen Chung wrote: > Cleaning up tests building ExtendedRobot that shouldn't be. Changes requested by aivanov (Reviewer). test/jdk/javax/swing/JInternalFrame/6725409/bug6725409.java line 1: > 1: /* `frame` should be disposed of on EDT. `TestTitlePane` can be static. test/jdk/javax/swing/JInternalFrame/6725409/bug6725409.java line 44: > 42: private TestTitlePane testTitlePane; > 43: private boolean passed; > 44: private static Robot robot = createRobot(); Suggestion: private static final Robot robot = createRobot(); test/jdk/javax/swing/JInternalFrame/6725409/bug6725409.java line 153: > 151: Robot robot = new Robot(); > 152: return robot; > 153: }catch(Exception ex) { Suggestion: } catch(Exception ex) { And pass the caught exception as the `cause` parameter to `Error` ? `ex.printStackTrace()` becomes redundant. ------------- PR Review: https://git.openjdk.org/jdk/pull/20846#pullrequestreview-2317810835 PR Review Comment: https://git.openjdk.org/jdk/pull/20846#discussion_r1768331370 PR Review Comment: https://git.openjdk.org/jdk/pull/20846#discussion_r1768329617 PR Review Comment: https://git.openjdk.org/jdk/pull/20846#discussion_r1768328968 From aivanov at openjdk.org Fri Sep 20 10:05:35 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 20 Sep 2024 10:05:35 GMT Subject: RFR: 8339524: Clean up ExtendedRobot tests In-Reply-To: References: Message-ID: On Wed, 4 Sep 2024 03:34:34 GMT, Alisen Chung wrote: > Cleaning up tests building ExtendedRobot that shouldn't be. The title suggest a larger amount of clean-up. ?Clean up _a few_ tests? could be better. (Git recommends the use of imperative mood in titles: ?Clean up? instead of ?Cleaning up?, and it's shorter. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20846#issuecomment-2363346284 From aivanov at openjdk.org Fri Sep 20 10:09:44 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 20 Sep 2024 10:09:44 GMT Subject: Integrated: 8340008: KeyEvent/KeyTyped/Numpad1KeyTyped.java has 15 seconds timeout In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 09:40:56 GMT, Alexey Ivanov wrote: > I am open-sourcing the `Numpad1KeyTyped.java` test. > > I used `CountDownLatch` for synchronisation. > > The test passes in CI. This pull request has now been integrated. Changeset: 3c22d83c Author: Alexey Ivanov URL: https://git.openjdk.org/jdk/commit/3c22d83c0fb9eee2e2b87e607680b96363849c16 Stats: 178 lines in 1 file changed: 178 ins; 0 del; 0 mod 8340008: KeyEvent/KeyTyped/Numpad1KeyTyped.java has 15 seconds timeout Reviewed-by: azvegint, prr ------------- PR: https://git.openjdk.org/jdk/pull/21085 From aturbanov at openjdk.org Fri Sep 20 12:46:45 2024 From: aturbanov at openjdk.org (Andrey Turbanov) Date: Fri, 20 Sep 2024 12:46:45 GMT Subject: Integrated: 8339972: Make a few fields in SortingFocusTraversalPolicy static In-Reply-To: References: Message-ID: On Thu, 25 Jul 2024 11:17:23 GMT, Andrey Turbanov wrote: > 2 fields in javax.swing.SortingFocusTraversalPolicy could be made 'static': > 1. FORWARD_TRAVERSAL = 0 > 2. BACKWARD_TRAVERSAL = 1 This pull request has now been integrated. Changeset: fe80618b Author: Andrey Turbanov URL: https://git.openjdk.org/jdk/commit/fe80618bf3f80094a93239dd43d4a9b515c5fa18 Stats: 3 lines in 1 file changed: 0 ins; 0 del; 3 mod 8339972: Make a few fields in SortingFocusTraversalPolicy static Reviewed-by: azvegint, aivanov ------------- PR: https://git.openjdk.org/jdk/pull/20327 From prr at openjdk.org Fri Sep 20 17:13:15 2024 From: prr at openjdk.org (Phil Race) Date: Fri, 20 Sep 2024 17:13:15 GMT Subject: RFR: 8340411: open source several 2D imaging tests Message-ID: open source several 2d imaging related tests. ------------- Commit messages: - 8340411 Changes: https://git.openjdk.org/jdk/pull/21113/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21113&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340411 Stats: 485 lines in 4 files changed: 485 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21113.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21113/head:pull/21113 PR: https://git.openjdk.org/jdk/pull/21113 From aivanov at openjdk.org Fri Sep 20 17:51:39 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 20 Sep 2024 17:51:39 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v10] In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 15:34:02 GMT, Ravi Gupta wrote: >> This testcase checks for the following assertions for Component events: >> >> 1. When components are resized, moved, hidden and shown the respective events are triggered. >> 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. >> 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. >> 4. When a window is minimized/restored then hidden and shown component events should be triggered. >> >> Testing: >> Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. > > Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: > > 8333403: Review Comments Fixed Looks good to me except for minor nits. test/jdk/java/awt/Component/ComponentEventTest.java line 44: > 42: import java.awt.event.InputEvent; > 43: import java.lang.reflect.InvocationTargetException; > 44: import jdk.test.lib.Platform; Suggestion: import java.lang.reflect.InvocationTargetException; import jdk.test.lib.Platform; You should put a blank line to separate standard library imports from custom (internal) classes. test/jdk/java/awt/Component/ComponentEventTest.java line 167: > 165: System.out.println("Iconify frame"); > 166: resetValues(); > 167: iconifyFrame(); `testIconifyFrame`? test/jdk/java/awt/Component/ComponentEventTest.java line 171: > 169: System.out.println("Deiconify frame"); > 170: resetValues(); > 171: deiconifyFrame(); `testDeiconifyFrame`? ------------- Changes requested by aivanov (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/19521#pullrequestreview-2318886438 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1768976680 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1768980677 PR Review Comment: https://git.openjdk.org/jdk/pull/19521#discussion_r1768980977 From honkar at openjdk.org Fri Sep 20 18:13:39 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Fri, 20 Sep 2024 18:13:39 GMT Subject: RFR: 8340084: Open source AWT Frame related tests [v3] In-Reply-To: <3iLEo71PiOQcWkrWO7yQwGAeimfJAZ3mIVJ5eXTGpFA=.ff572634-949c-49b3-a16f-83f1959f6565@github.com> References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> <3iLEo71PiOQcWkrWO7yQwGAeimfJAZ3mIVJ5eXTGpFA=.ff572634-949c-49b3-a16f-83f1959f6565@github.com> Message-ID: <73NHZZqbNYlFP6rReDvvbYS9c5zpWpo45sApYC9ZMio=.f164947a-863b-4b59-808c-cda1eb2ff49a@github.com> On Fri, 20 Sep 2024 08:04:30 GMT, Abhishek Kumar wrote: >> Few AWT Frame related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Review comment update Updated changes LGTM ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21052#pullrequestreview-2318962652 From honkar at openjdk.org Fri Sep 20 19:16:37 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Fri, 20 Sep 2024 19:16:37 GMT Subject: RFR: 8340433: Open source closed choice tests #3 In-Reply-To: References: Message-ID: <_0MhCk10bAxTeKlDCmn0_zNhxSdheonZtYUEiOlNVB4=.6680aa81-854a-4d22-a2d2-07b8eb3e959f@github.com> On Fri, 20 Sep 2024 09:53:00 GMT, Alexander Zvegintsev wrote: > few more tests to open source > > Testing is good. test/jdk/java/awt/Choice/ChoicePosTest.java line 94: > 92: private static void captureAndTestChoices() { > 93: Point c1loc = c1.getLocationOnScreen(); > 94: Point c2loc = c2.getLocationOnScreen(); Does this require EDT? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21107#discussion_r1769092861 From azvegint at openjdk.org Fri Sep 20 19:31:33 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 20 Sep 2024 19:31:33 GMT Subject: RFR: 8340411: open source several 2D imaging tests In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 17:07:31 GMT, Phil Race wrote: > open source several 2d imaging related tests. Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21113#pullrequestreview-2319167876 From honkar at openjdk.org Fri Sep 20 19:36:36 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Fri, 20 Sep 2024 19:36:36 GMT Subject: RFR: 8340433: Open source closed choice tests #3 In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 09:53:00 GMT, Alexander Zvegintsev wrote: > few more tests to open source > > Testing is good. Marked as reviewed by honkar (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21107#pullrequestreview-2319189353 From azvegint at openjdk.org Fri Sep 20 19:36:37 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 20 Sep 2024 19:36:37 GMT Subject: RFR: 8340433: Open source closed choice tests #3 In-Reply-To: <_0MhCk10bAxTeKlDCmn0_zNhxSdheonZtYUEiOlNVB4=.6680aa81-854a-4d22-a2d2-07b8eb3e959f@github.com> References: <_0MhCk10bAxTeKlDCmn0_zNhxSdheonZtYUEiOlNVB4=.6680aa81-854a-4d22-a2d2-07b8eb3e959f@github.com> Message-ID: <31SBo7hk47dD32Si9bwm-YsXCteaw34uMbMQIzNgZrw=.023eb48d-267c-445a-bb80-f92288237960@github.com> On Fri, 20 Sep 2024 19:14:19 GMT, Harshitha Onkar wrote: >> few more tests to open source >> >> Testing is good. > > test/jdk/java/awt/Choice/ChoicePosTest.java line 94: > >> 92: private static void captureAndTestChoices() { >> 93: Point c1loc = c1.getLocationOnScreen(); >> 94: Point c2loc = c2.getLocationOnScreen(); > > Does this require EDT? In this case this is not necessary, we just read the values after a rather long delay after setVisible. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21107#discussion_r1769154049 From aturbanov at openjdk.org Fri Sep 20 19:38:35 2024 From: aturbanov at openjdk.org (Andrey Turbanov) Date: Fri, 20 Sep 2024 19:38:35 GMT Subject: RFR: 8340084: Open source AWT Frame related tests [v3] In-Reply-To: <3iLEo71PiOQcWkrWO7yQwGAeimfJAZ3mIVJ5eXTGpFA=.ff572634-949c-49b3-a16f-83f1959f6565@github.com> References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> <3iLEo71PiOQcWkrWO7yQwGAeimfJAZ3mIVJ5eXTGpFA=.ff572634-949c-49b3-a16f-83f1959f6565@github.com> Message-ID: On Fri, 20 Sep 2024 08:04:30 GMT, Abhishek Kumar wrote: >> Few AWT Frame related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > Review comment update test/jdk/java/awt/Frame/FrameLayoutTest.java line 65: > 63: f.add(new Button("East"),BorderLayout.EAST); > 64: f.add(new Button("West"),BorderLayout.WEST); > 65: f.add(new Button("Cent"),BorderLayout.CENTER); Suggestion: f.add(new Button("North"), BorderLayout.NORTH); f.add(new Button("South"), BorderLayout.SOUTH); f.add(new Button("East"), BorderLayout.EAST); f.add(new Button("West"), BorderLayout.WEST); f.add(new Button("Cent"), BorderLayout.CENTER); ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21052#discussion_r1769169427 From prr at openjdk.org Fri Sep 20 20:38:15 2024 From: prr at openjdk.org (Phil Race) Date: Fri, 20 Sep 2024 20:38:15 GMT Subject: RFR: 8340411: open source several 2D imaging tests [v2] In-Reply-To: References: Message-ID: > open source several 2d imaging related tests. Phil Race has updated the pull request incrementally with one additional commit since the last revision: 8340411 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21113/files - new: https://git.openjdk.org/jdk/pull/21113/files/828bd843..3c176ba4 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21113&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21113&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21113.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21113/head:pull/21113 PR: https://git.openjdk.org/jdk/pull/21113 From azvegint at openjdk.org Fri Sep 20 20:42:36 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 20 Sep 2024 20:42:36 GMT Subject: RFR: 8340411: open source several 2D imaging tests [v2] In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 20:38:15 GMT, Phil Race wrote: >> open source several 2d imaging related tests. > > Phil Race has updated the pull request incrementally with one additional commit since the last revision: > > 8340411 Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21113#pullrequestreview-2319302988 From duke at openjdk.org Fri Sep 20 20:49:34 2024 From: duke at openjdk.org (Abdelhak Zaaim) Date: Fri, 20 Sep 2024 20:49:34 GMT Subject: RFR: 8340411: open source several 2D imaging tests [v2] In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 20:38:15 GMT, Phil Race wrote: >> open source several 2d imaging related tests. > > Phil Race has updated the pull request incrementally with one additional commit since the last revision: > > 8340411 Marked as reviewed by abdelhak-zaaim at github.com (no known OpenJDK username). ------------- PR Review: https://git.openjdk.org/jdk/pull/21113#pullrequestreview-2319314802 From prr at openjdk.org Fri Sep 20 23:33:18 2024 From: prr at openjdk.org (Phil Race) Date: Fri, 20 Sep 2024 23:33:18 GMT Subject: RFR: 8340143: Open source several Java2D rendering loop tests. Message-ID: Open source some Java2d loop rendering tests. ------------- Commit messages: - 8340143 Changes: https://git.openjdk.org/jdk/pull/21114/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21114&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340143 Stats: 394 lines in 5 files changed: 394 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21114.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21114/head:pull/21114 PR: https://git.openjdk.org/jdk/pull/21114 From aivanov at openjdk.org Sun Sep 22 14:47:14 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Sun, 22 Sep 2024 14:47:14 GMT Subject: RFR: 8337287: Update image in javax.swing.text.Document.insert [v2] In-Reply-To: References: Message-ID: > This changeset updates the image in the documentation for the `Document.insert` method. The image in `Document.remove` was updated by [JDK-4622866](https://bugs.openjdk.org/browse/JDK-4622866) in PR #15701. > > Now the illustration of inserting looks similar to removing. The new image is in SVG format. > > For reference: > > - [`Document.insert` in JDK 22](https://docs.oracle.com/en/java/javase/22/docs/api/java.desktop/javax/swing/text/Document.html#insertString(int,java.lang.String,javax.swing.text.AttributeSet)); > - [Updated docs for JDK 24](https://cr.openjdk.org/~aivanov/8337287/api/java.desktop/javax/swing/text/Document.html#insertString(int,java.lang.String,javax.swing.text.AttributeSet)). > > As in the case with `remove`, I marked up to classes and members with {@code}. Alexey Ivanov has updated the pull request incrementally with one additional commit since the last revision: Describe inserting ?quick? into text ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20376/files - new: https://git.openjdk.org/jdk/pull/20376/files/697da25b..8077bde0 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20376&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20376&range=00-01 Stats: 7 lines in 1 file changed: 7 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/20376.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20376/head:pull/20376 PR: https://git.openjdk.org/jdk/pull/20376 From aivanov at openjdk.org Sun Sep 22 14:47:14 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Sun, 22 Sep 2024 14:47:14 GMT Subject: RFR: 8337287: Update image in javax.swing.text.Document.insert In-Reply-To: References: Message-ID: On Mon, 29 Jul 2024 13:43:42 GMT, Alexey Ivanov wrote: > This changeset updates the image in the documentation for the `Document.insert` method. The image in `Document.remove` was updated by [JDK-4622866](https://bugs.openjdk.org/browse/JDK-4622866) in PR #15701. > > Now the illustration of inserting looks similar to removing. The new image is in SVG format. > > For reference: > > - [`Document.insert` in JDK 22](https://docs.oracle.com/en/java/javase/22/docs/api/java.desktop/javax/swing/text/Document.html#insertString(int,java.lang.String,javax.swing.text.AttributeSet)); > - [Updated docs for JDK 24](https://cr.openjdk.org/~aivanov/8337287/api/java.desktop/javax/swing/text/Document.html#insertString(int,java.lang.String,javax.swing.text.AttributeSet)). > > As in the case with `remove`, I marked up to classes and members with {@code}. > > > Just curious why the chars are not in the middle of the boxes? > > > > The text is positioned in the middle of the box -0.5 pixels. > > Moving the text position by 0.5 seems to help, and the values become equal: 7 on either side. > > This needs to be done for the image in `remove` too, so I'd rather do that separately, at a later time. Submitted [JDK-8340580](https://bugs.openjdk.org/browse/JDK-8340580): *Characters in Document diagrams not in the middle*. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20376#issuecomment-2366822283 From alanb at openjdk.org Sun Sep 22 15:36:36 2024 From: alanb at openjdk.org (Alan Bateman) Date: Sun, 22 Sep 2024 15:36:36 GMT Subject: RFR: 8311530: Deprecate jdk.jsobject module for removal In-Reply-To: References: <_MLFl-Zir7vvv44qc5hGXChNRhuiwmvTYkXLxVIUFC0=.a6fd655a-6e1a-4704-b317-5a2553a86fd3@github.com> Message-ID: On Fri, 6 Sep 2024 13:16:34 GMT, Kevin Rushforth wrote: >> Looks good. I'll review the CSR when its ready. > >> Looks good. I'll review the CSR when its ready. > > Thanks. > >> The changes to make jdk.jsobject an upgradeable module looks right. > > Thanks for checking. My testing primarily focused on this aspect of the change, so it's pretty well tested. > >> I was initially surprised by the wording "will be delivered with JavaFX" but after playing with a few alternatives I concluded that what we have is okay. > > Yeah, I tried a few variants and couldn't come up with anything better. @kevinrushforth Is the CSR on your list to write? ------------- PR Comment: https://git.openjdk.org/jdk/pull/20555#issuecomment-2366841622 From rgupta at openjdk.org Mon Sep 23 04:19:20 2024 From: rgupta at openjdk.org (Ravi Gupta) Date: Mon, 23 Sep 2024 04:19:20 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v11] In-Reply-To: References: Message-ID: > This testcase checks for the following assertions for Component events: > > 1. When components are resized, moved, hidden and shown the respective events are triggered. > 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. > 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. > 4. When a window is minimized/restored then hidden and shown component events should be triggered. > > Testing: > Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: 8333403: Review Comments Fixed ------------- Changes: - all: https://git.openjdk.org/jdk/pull/19521/files - new: https://git.openjdk.org/jdk/pull/19521/files/9633a03a..fe35276b Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=19521&range=10 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=19521&range=09-10 Stats: 5 lines in 1 file changed: 1 ins; 0 del; 4 mod Patch: https://git.openjdk.org/jdk/pull/19521.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/19521/head:pull/19521 PR: https://git.openjdk.org/jdk/pull/19521 From abhiscxk at openjdk.org Mon Sep 23 04:21:27 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Mon, 23 Sep 2024 04:21:27 GMT Subject: RFR: 8340084: Open source AWT Frame related tests [v4] In-Reply-To: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> Message-ID: > Few AWT Frame related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: minor spacing ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21052/files - new: https://git.openjdk.org/jdk/pull/21052/files/523e410c..cdeb0647 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21052&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21052&range=02-03 Stats: 5 lines in 1 file changed: 0 ins; 0 del; 5 mod Patch: https://git.openjdk.org/jdk/pull/21052.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21052/head:pull/21052 PR: https://git.openjdk.org/jdk/pull/21052 From abhiscxk at openjdk.org Mon Sep 23 04:38:35 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Mon, 23 Sep 2024 04:38:35 GMT Subject: RFR: 8340084: Open source AWT Frame related tests [v3] In-Reply-To: <3jqAwnN7GJt0IDuI1_iS10L1PQhZIkmzU54GGB4Kg-E=.37b4f22c-f1a1-4650-a9b6-a5d054c56e84@github.com> References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> <3iLEo71PiOQcWkrWO7yQwGAeimfJAZ3mIVJ5eXTGpFA=.ff572634-949c-49b3-a16f-83f1959f6565@github.com> <3jqAwnN7GJt0IDuI1_iS10L1PQhZIkmzU54GGB4Kg-E=.37b4f22c-f1a1-4650-a9b6-a5d054c56e84@github.com> Message-ID: On Fri, 20 Sep 2024 08:44:59 GMT, Prasanta Sadhukhan wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> Review comment update > > Marked as reviewed by psadhukhan (Reviewer). @prsadhuk Please re-review this PR. There is a minor spacing change compared to last commit. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21052#issuecomment-2367222019 From tr at openjdk.org Mon Sep 23 05:03:58 2024 From: tr at openjdk.org (Tejesh R) Date: Mon, 23 Sep 2024 05:03:58 GMT Subject: RFR: 8339836: Open source several AWT Mouse tests - Batch 1 Message-ID: Open source these AWT Mouse tests: java/awt/Mouse/MouseEnterExitTest.java java/awt/Mouse/MouseEnterExitTest2.java java/awt/Mouse/MousePressedTest.java java/awt/Mouse/MouseEnterExitTest4.java java/awt/Mouse/MouseEnterExitTest3.java ------------- Commit messages: - jtreg updates - Open Source few Mouse Test Changes: https://git.openjdk.org/jdk/pull/21124/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21124&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339836 Stats: 607 lines in 5 files changed: 607 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21124.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21124/head:pull/21124 PR: https://git.openjdk.org/jdk/pull/21124 From tr at openjdk.org Mon Sep 23 06:46:21 2024 From: tr at openjdk.org (Tejesh R) Date: Mon, 23 Sep 2024 06:46:21 GMT Subject: RFR: 8339982: Open source several AWT Mouse tests - Batch 2 Message-ID: Open source these AWT Mouse and GraphicsEnvironment tests: java/awt/MouseClickCount/MouseClickCount.java java/awt/MouseDragEnterExitTest/MouseDragEnterExitTest.java java/awt/MouseDragTest/MouseDragTest.java java/awt/OpenWinDoubleClickTest/OpenWinDoubleClickTest.java java/awt/GraphicsEnvironment/DefaultScreenDeviceTest.java ------------- Commit messages: - Moved Graphics test - Open Source few Mouse Test - Open Source few Mouse Test Changes: https://git.openjdk.org/jdk/pull/21126/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21126&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339982 Stats: 676 lines in 6 files changed: 676 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21126.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21126/head:pull/21126 PR: https://git.openjdk.org/jdk/pull/21126 From psadhukhan at openjdk.org Mon Sep 23 07:08:36 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Mon, 23 Sep 2024 07:08:36 GMT Subject: RFR: 8340084: Open source AWT Frame related tests [v4] In-Reply-To: References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> Message-ID: On Mon, 23 Sep 2024 04:21:27 GMT, Abhishek Kumar wrote: >> Few AWT Frame related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > minor spacing Marked as reviewed by psadhukhan (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21052#pullrequestreview-2321276681 From abhiscxk at openjdk.org Mon Sep 23 08:05:46 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Mon, 23 Sep 2024 08:05:46 GMT Subject: Integrated: 8340084: Open source AWT Frame related tests In-Reply-To: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> References: <0YCOwo6vg8Op9ELdPFeWHh_iJtPdA-bn5DYqSLQb_Jc=.3df80134-bb45-4a43-a4bc-e9449db1450a@github.com> Message-ID: On Wed, 18 Sep 2024 06:18:03 GMT, Abhishek Kumar wrote: > Few AWT Frame related tests are converted from applet to manual and moved to open. This pull request has now been integrated. Changeset: bc7c0dc4 Author: Abhishek Kumar URL: https://git.openjdk.org/jdk/commit/bc7c0dc45dcd66d24ece8ebbd5c1b25e131eae67 Stats: 393 lines in 5 files changed: 393 ins; 0 del; 0 mod 8340084: Open source AWT Frame related tests Reviewed-by: psadhukhan, honkar ------------- PR: https://git.openjdk.org/jdk/pull/21052 From aivanov at openjdk.org Mon Sep 23 11:46:39 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 23 Sep 2024 11:46:39 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v11] In-Reply-To: References: Message-ID: On Mon, 23 Sep 2024 04:19:20 GMT, Ravi Gupta wrote: >> This testcase checks for the following assertions for Component events: >> >> 1. When components are resized, moved, hidden and shown the respective events are triggered. >> 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. >> 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. >> 4. When a window is minimized/restored then hidden and shown component events should be triggered. >> >> Testing: >> Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. > > Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: > > 8333403: Review Comments Fixed Looks good to me. I presume you've run the updated test in CI. ------------- Marked as reviewed by aivanov (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/19521#pullrequestreview-2321939823 From kcr at openjdk.org Mon Sep 23 12:51:38 2024 From: kcr at openjdk.org (Kevin Rushforth) Date: Mon, 23 Sep 2024 12:51:38 GMT Subject: RFR: 8311530: Deprecate jdk.jsobject module for removal In-Reply-To: References: Message-ID: On Mon, 12 Aug 2024 17:22:47 GMT, Kevin Rushforth wrote: > Deprecate the `jdk.jsobject` module for removal from the JDK, and ship it with JavaFX instead. > > See [JDK-8337280](https://bugs.openjdk.org/browse/JDK-8337280) / PR openjdk/jfx#1529 for the JavaFX PR that will include the module with JavaFX. That PR describes the needed test scenarios. > > This PR does two things: > > 1. Deprecates the `jdk.jsobject` module for removal; the javadoc indicates that the module will be delivered with JavaFX > 2. Makes `jdk.jsobject` an upgradeable module, which will facilitate the transition by allowing the version of the module shipped with JavaFX to be used in favor of the deprecated module in the JDK itself. Yes, this was on hold for a couple weeks; I plan to write the CSR this week. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20555#issuecomment-2368124430 From aivanov at openjdk.org Mon Sep 23 13:10:43 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 23 Sep 2024 13:10:43 GMT Subject: RFR: 7188058: Background of TextComponents are not changing colors to the default disabled color when set to uneditable [v5] In-Reply-To: <9N8EtzrVB-E5O4pEd-FsudqecadPPEreSGrIBPyTRRg=.b1fd306f-4b00-4872-8565-2fcefe2bbe08@github.com> References: <095gCTeexK0MP5AzEUrNwAOtXDzFiNDUIjd5LHbh-sY=.fb49a844-8568-4713-9f34-8e1641e11efe@github.com> <9N8EtzrVB-E5O4pEd-FsudqecadPPEreSGrIBPyTRRg=.b1fd306f-4b00-4872-8565-2fcefe2bbe08@github.com> Message-ID: <3YTKEFp8vOet2pT-FRKw3F72RoDNYN9mWmSWcTmBC2I=.3886e32f-46c2-4161-a3a8-4d6bb3160c8c@github.com> On Fri, 23 Aug 2024 04:26:30 GMT, Prasanta Sadhukhan wrote: > Also, since the testcase is just testing the background color, I think it can be made automated and even headless by using textfield/textarea rendering to BufferedImage AWT components cannot be created in headless environment. ------------- PR Comment: https://git.openjdk.org/jdk/pull/19876#issuecomment-2368176102 From aivanov at openjdk.org Mon Sep 23 13:17:43 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 23 Sep 2024 13:17:43 GMT Subject: RFR: 7188058: Background of TextComponents are not changing colors to the default disabled color when set to uneditable [v2] In-Reply-To: References: <77lt11qmN9Pift0gg2CmeN1v1CRSv4nP50d8hdNPynU=.f2f65d8a-293d-48c2-81d4-0b945cfcb158@github.com> Message-ID: <8MUR_6S1CHlM2K_qkrsklBYvrQAZWdgJugYDf0-KsXk=.6c6aa260-6f0e-4d2f-8342-ab998e413022@github.com> On Thu, 8 Aug 2024 01:19:55 GMT, Alisen Chung wrote: >> Yes, but as far I could see `TextArea.background` property is being set in >> `AquaLookAndFeel.java, MotifLookAndFeel.java, BasicLookAndFeel.java, XAWTLookAndFeel.java and WindowsLookAndFeel.java` >> and this L&F will not be set in AWT environment, if I am not wrong so you will either get garbage or wrong default color if you use UIManager.getColor..so I guess you need to use `TextComponent.getBackground()` which returns SystemColor.control if nothing is set > > i've made the change to use TextComponent.getBackground() instead to get the correct background color AWT components **must not depend on `javax.swing.UIManager`** ? pluggable Look and Feels and `UIManager` are features of Swing. Some AWT components are implemented using lightweight components from Swing, in this case it's appropriate to use `javax.swing` packages but *not in the common code* ? in the peers. As far as I can see, [JDK-7188058](https://bugs.openjdk.org/browse/JDK-7188058) references Linux and macOS only. AWT component on Mac use Swing components; not sure about Linux though. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19876#discussion_r1771403834 From sgehwolf at openjdk.org Mon Sep 23 13:20:37 2024 From: sgehwolf at openjdk.org (Severin Gehwolf) Date: Mon, 23 Sep 2024 13:20:37 GMT Subject: RFR: 8336382: Fixes error reporting in loading AWT and fonts [v3] In-Reply-To: References: Message-ID: On Fri, 13 Sep 2024 09:02:07 GMT, Karm Michal Babacek wrote: >> There is nothing in this PR that I would accept. It should be withdrawn. > > ping @prrace @Karm There are a few things that have not yet been addressed: - @avu mentioned [here](https://github.com/openjdk/jdk/pull/20169#discussion_r1677699984) that copyright years of the file need updating - There is a title mismatch between this PR and the JBS entry. Which one should it be if any? (and I'll help you fix that one). I'd also merge in latest master since x86 tests have since been disabled. That should fix the GHA issue. Thanks! ------------- PR Comment: https://git.openjdk.org/jdk/pull/20169#issuecomment-2368212843 From aivanov at openjdk.org Mon Sep 23 13:33:37 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 23 Sep 2024 13:33:37 GMT Subject: RFR: 7188058: Background of TextComponents are not changing colors to the default disabled color when set to uneditable [v5] In-Reply-To: <095gCTeexK0MP5AzEUrNwAOtXDzFiNDUIjd5LHbh-sY=.fb49a844-8568-4713-9f34-8e1641e11efe@github.com> References: <095gCTeexK0MP5AzEUrNwAOtXDzFiNDUIjd5LHbh-sY=.fb49a844-8568-4713-9f34-8e1641e11efe@github.com> Message-ID: On Tue, 20 Aug 2024 23:53:45 GMT, Alisen Chung wrote: >> Currently the bug described in the issue is that the colors of the TextComponents do not change when setting TextComponents to uneditable. The default uneditable color (SystemColor.control) happens to be the same as the default for the editable color for some L&Fs, so the fix may not be initially noticeable. However, the bug still exists where the the color is not being changed when changing between editable and uneditable. You can check by changing TextComponent.getBackground() code to return Color.GRAY on line 342 and you can see that TextComponents are not changing to a gray background when set to uneditable. >> >> This fix adds a private setBackground method in TextComponent so that TextArea and TextField can change the background color to the correct color (SystemColor.control) when set uneditable by overriding the TextComponent setEditable. You can verify the fix by changing this color to Color.GRAY and verifying the backgrounds change to gray when the TextComponents are disabled. > > Alisen Chung has updated the pull request incrementally with one additional commit since the last revision: > > fix import Changes requested by aivanov (Reviewer). src/java.desktop/share/classes/java/awt/TextComponent.java line 363: > 361: > 362: void setBackground(Color c, boolean setByClient) { > 363: backgroundSetByClientCode = setByClient; Assigning the passed value to `backgroundSetByClientCode` does not make sense to me: the code in `TextArea.setEditable` already depends on the value of `backgroundSetByClientCode`, and the field shouldn't change as the result. ------------- PR Review: https://git.openjdk.org/jdk/pull/19876#pullrequestreview-2322221456 PR Review Comment: https://git.openjdk.org/jdk/pull/19876#discussion_r1771424499 From aivanov at openjdk.org Mon Sep 23 13:33:38 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 23 Sep 2024 13:33:38 GMT Subject: RFR: 7188058: Background of TextComponents are not changing colors to the default disabled color when set to uneditable [v5] In-Reply-To: References: <095gCTeexK0MP5AzEUrNwAOtXDzFiNDUIjd5LHbh-sY=.fb49a844-8568-4713-9f34-8e1641e11efe@github.com> Message-ID: On Fri, 23 Aug 2024 05:24:16 GMT, Abhishek Kumar wrote: >> Alisen Chung has updated the pull request incrementally with one additional commit since the last revision: >> >> fix import > > src/java.desktop/share/classes/java/awt/TextArea.java line 610: > >> 608: >> 609: @Override >> 610: public synchronized void setEditable(boolean b) { > > `setEditable` method is overridden in both `TextArea` and `TextField` class and method implementation is same. Since both of them are inherited from `TextComponent` class, could we move the code to `TextComponent's setEditable` method and remove them from respective classes? This is a good suggestion. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/19876#discussion_r1771426903 From aivanov at openjdk.org Mon Sep 23 13:56:37 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 23 Sep 2024 13:56:37 GMT Subject: RFR: 7188058: Background of TextComponents are not changing colors to the default disabled color when set to uneditable [v5] In-Reply-To: <095gCTeexK0MP5AzEUrNwAOtXDzFiNDUIjd5LHbh-sY=.fb49a844-8568-4713-9f34-8e1641e11efe@github.com> References: <095gCTeexK0MP5AzEUrNwAOtXDzFiNDUIjd5LHbh-sY=.fb49a844-8568-4713-9f34-8e1641e11efe@github.com> Message-ID: <8LKkRLDLELCkF2tuLqf968QXC6MHzPtLfpfjH9UYfSE=.db30c343-224b-4ac4-9d6f-a8ae2dccf700@github.com> On Tue, 20 Aug 2024 23:53:45 GMT, Alisen Chung wrote: >> Currently the bug described in the issue is that the colors of the TextComponents do not change when setting TextComponents to uneditable. The default uneditable color (SystemColor.control) happens to be the same as the default for the editable color for some L&Fs, so the fix may not be initially noticeable. However, the bug still exists where the the color is not being changed when changing between editable and uneditable. You can check by changing TextComponent.getBackground() code to return Color.GRAY on line 342 and you can see that TextComponents are not changing to a gray background when set to uneditable. >> >> This fix adds a private setBackground method in TextComponent so that TextArea and TextField can change the background color to the correct color (SystemColor.control) when set uneditable by overriding the TextComponent setEditable. You can verify the fix by changing this color to Color.GRAY and verifying the backgrounds change to gray when the TextComponents are disabled. > > Alisen Chung has updated the pull request incrementally with one additional commit since the last revision: > > fix import Is it a bug? How do native text fields and areas behave on Linux and macOS? Does any of them change colours when it's switched into uneditable mode? AWT components should behave as native controls do. On Windows, uneditable text field and text area usually have a different background which corresponds to background of a dialog box. Is it the case on Linux and macOS? ------------- PR Comment: https://git.openjdk.org/jdk/pull/19876#issuecomment-2368341628 From azvegint at openjdk.org Mon Sep 23 14:00:52 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Mon, 23 Sep 2024 14:00:52 GMT Subject: Integrated: 8340393: Open source closed choice tests #2 In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 06:39:40 GMT, Alexander Zvegintsev wrote: > few manual tests to open source > Tested on all platforms, all looks good. This pull request has now been integrated. Changeset: a9b0f9cc Author: Alexander Zvegintsev URL: https://git.openjdk.org/jdk/commit/a9b0f9ccbf98c6b90626fcd7087fa8eeb0c168eb Stats: 322 lines in 4 files changed: 322 ins; 0 del; 0 mod 8340393: Open source closed choice tests #2 Reviewed-by: psadhukhan ------------- PR: https://git.openjdk.org/jdk/pull/21081 From aivanov at openjdk.org Mon Sep 23 14:35:36 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 23 Sep 2024 14:35:36 GMT Subject: RFR: 8340365: Position the first window of a window list In-Reply-To: References: Message-ID: <8mWQprTxNQEMMZ0nVDYNvfqXnPIVRHTeIsg0cSrgwZ4=.0254a87f-2b21-4d8b-a35a-df0b89c9b30c@github.com> On Wed, 18 Sep 2024 20:52:23 GMT, Alexey Ivanov wrote: > > Perhaps adding the required pattern in the examples would be a good idea. > > Yes, it's a good idea. Although, I support this, I feel it is out of scope for this change. I submitted [JDK-8340469](https://bugs.openjdk.org/browse/JDK-8340469): _Provide example of multiple test UI windows_, and I'm currently working on improving the docs for `PassFailJFrame`. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21057#issuecomment-2368469117 From aivanov at openjdk.org Mon Sep 23 14:38:07 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 23 Sep 2024 14:38:07 GMT Subject: RFR: 8340461: Amend description for logArea Message-ID: <1f-Y1noCKQ3rL7KSJOPRswNG4xpNGQoOYG0M3Dn1Y7s=.4666e474-e104-43cc-9680-9d980260ad12@github.com> Resolve the error: PassFailJFrame.java:161: error: text not allowed in

    element *
  • to add a log area
  • , ^ Shorten the rendered javadoc for `log`, `logClear` and `logSet`. @azvegint, could you take a look? ------------- Commit messages: - 8340461: Amend description for logArea Changes: https://git.openjdk.org/jdk/pull/21138/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21138&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340461 Stats: 9 lines in 1 file changed: 4 ins; 0 del; 5 mod Patch: https://git.openjdk.org/jdk/pull/21138.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21138/head:pull/21138 PR: https://git.openjdk.org/jdk/pull/21138 From azvegint at openjdk.org Mon Sep 23 14:38:07 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Mon, 23 Sep 2024 14:38:07 GMT Subject: RFR: 8340461: Amend description for logArea In-Reply-To: <1f-Y1noCKQ3rL7KSJOPRswNG4xpNGQoOYG0M3Dn1Y7s=.4666e474-e104-43cc-9680-9d980260ad12@github.com> References: <1f-Y1noCKQ3rL7KSJOPRswNG4xpNGQoOYG0M3Dn1Y7s=.4666e474-e104-43cc-9680-9d980260ad12@github.com> Message-ID: On Mon, 23 Sep 2024 14:30:30 GMT, Alexey Ivanov wrote: > Resolve the error: > > PassFailJFrame.java:161: error: text not allowed in
      element > *
    • to add a log area
    • , > ^ > > > Shorten the rendered javadoc for `log`, `logClear` and `logSet`. > > @azvegint, could you take a look? Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21138#pullrequestreview-2322478851 From aivanov at openjdk.org Mon Sep 23 14:40:36 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 23 Sep 2024 14:40:36 GMT Subject: RFR: 8340365: Position the first window of a window list In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 20:12:08 GMT, Alexey Ivanov wrote: > > > With the proposed change in this pull request, the implementation would use ComponentListener.componentMoved: > > > > > > you mean the implementation of the test ? Perhaps adding the required pattern in the examples would be a good idea. > > @prrace Yes, I referred to the implementation of the `LotsOfMenuItemsTest.java` test. > > This is more of a workaround until we add better layout options. Yet it looks simple and works well. It still requires the test developer to save references to frames. Eventually, @kumarabhi006 re-worked the test in #21029, and `LotsOfMenuItemsTest.java` no longer uses the feature of `PassFailJFrame` for creating multiple test windows. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21057#issuecomment-2368483198 From kcr at openjdk.org Mon Sep 23 16:32:23 2024 From: kcr at openjdk.org (Kevin Rushforth) Date: Mon, 23 Sep 2024 16:32:23 GMT Subject: RFR: 8311530: Deprecate jdk.jsobject module for removal [v2] In-Reply-To: References: Message-ID: > Deprecate the `jdk.jsobject` module for removal from the JDK, and ship it with JavaFX instead. > > See [JDK-8337280](https://bugs.openjdk.org/browse/JDK-8337280) / PR openjdk/jfx#1529 for the JavaFX PR that will include the module with JavaFX. That PR describes the needed test scenarios. > > This PR does two things: > > 1. Deprecates the `jdk.jsobject` module for removal; the javadoc indicates that the module will be delivered with JavaFX > 2. Makes `jdk.jsobject` an upgradeable module, which will facilitate the transition by allowing the version of the module shipped with JavaFX to be used in favor of the deprecated module in the JDK itself. Kevin Rushforth 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 branch 'master' into 8311530-depr-jsobject - Merge branch 'master' into 8311530-depr-jsobject - Merge branch 'master' into 8311530-depr-jsobject - Update javadoc - Update copyright years - Merge branch 'master' into 8311530-depr-jsobject - Add jdk.jsobject to list of UPGRADEABLE_MODULES in UpgradeableModules test - 8311530: Deprecate jdk.jsobject module for removal ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20555/files - new: https://git.openjdk.org/jdk/pull/20555/files/c3ee6ad3..d2ff851c Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20555&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20555&range=00-01 Stats: 168234 lines in 1172 files changed: 155508 ins; 7077 del; 5649 mod Patch: https://git.openjdk.org/jdk/pull/20555.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20555/head:pull/20555 PR: https://git.openjdk.org/jdk/pull/20555 From prr at openjdk.org Mon Sep 23 17:59:37 2024 From: prr at openjdk.org (Phil Race) Date: Mon, 23 Sep 2024 17:59:37 GMT Subject: RFR: 8340367: Opensource few AWT image tests In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 03:58:20 GMT, Prasanta Sadhukhan wrote: > Opensource few image tests Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21104#pullrequestreview-2322963148 From prr at openjdk.org Mon Sep 23 18:01:38 2024 From: prr at openjdk.org (Phil Race) Date: Mon, 23 Sep 2024 18:01:38 GMT Subject: RFR: 8339995: Open source several AWT focus tests - series 6 [v2] In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 05:34:48 GMT, Prasanta Sadhukhan wrote: >> Opensource few Focus tests > > Prasanta Sadhukhan has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits: > > - Merge master > - windows > - InitialFocusTest > - 8339995: Open source several AWT focus tests - series 6 Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21079#pullrequestreview-2322968024 From prr at openjdk.org Mon Sep 23 18:06:37 2024 From: prr at openjdk.org (Phil Race) Date: Mon, 23 Sep 2024 18:06:37 GMT Subject: RFR: 8339935: Open source several AWT focus tests - series 5 In-Reply-To: <9CBDlYAA5yUeyovwlZ8wpQ5fEE6YIXMUUt53BVb-JbU=.9f8c5c39-2e90-4d6a-868f-734cea42367e@github.com> References: <9CBDlYAA5yUeyovwlZ8wpQ5fEE6YIXMUUt53BVb-JbU=.9f8c5c39-2e90-4d6a-868f-734cea42367e@github.com> Message-ID: On Fri, 20 Sep 2024 03:23:26 GMT, Prasanta Sadhukhan wrote: > Opensource few AWT focus tests Changes requested by prr (Reviewer). test/jdk/java/awt/Focus/LightweightPopupTest.java line 27: > 25: * @test > 26: * @bug 4472032 > 27: * @summary Switching between lightweight menus by holizontal arrow key works incorrect holizontal -> horizontal test/jdk/java/awt/Focus/ProxiedWindowHideTest.java line 27: > 25: * @test > 26: * @bug 4396407 > 27: * @summary Tests that after proxied window were hidden focus is being restored correctly ... after a proxied window is hidden ... test/jdk/java/awt/Focus/ProxiedWindowHideTest.java line 43: > 41: > 42: private static final String INSTRUCTIONS = """ > 43: You will see JFrame with title 'TEST'. looks to me like the title is actually "ProxiedWindowHideTest frame". A tester might decide to fail the test because of this. ------------- PR Review: https://git.openjdk.org/jdk/pull/21103#pullrequestreview-2322970675 PR Review Comment: https://git.openjdk.org/jdk/pull/21103#discussion_r1771870228 PR Review Comment: https://git.openjdk.org/jdk/pull/21103#discussion_r1771874098 PR Review Comment: https://git.openjdk.org/jdk/pull/21103#discussion_r1771873321 From prr at openjdk.org Mon Sep 23 18:27:44 2024 From: prr at openjdk.org (Phil Race) Date: Mon, 23 Sep 2024 18:27:44 GMT Subject: RFR: 8340461: Amend description for logArea In-Reply-To: <1f-Y1noCKQ3rL7KSJOPRswNG4xpNGQoOYG0M3Dn1Y7s=.4666e474-e104-43cc-9680-9d980260ad12@github.com> References: <1f-Y1noCKQ3rL7KSJOPRswNG4xpNGQoOYG0M3Dn1Y7s=.4666e474-e104-43cc-9680-9d980260ad12@github.com> Message-ID: On Mon, 23 Sep 2024 14:30:30 GMT, Alexey Ivanov wrote: > Resolve the error: > > PassFailJFrame.java:161: error: text not allowed in
        element > *
      • to add a log area
      • , > ^ > > > Shorten the rendered javadoc for `log`, `logClear` and `logSet`. > > @azvegint, could you take a look? Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21138#pullrequestreview-2323012627 From aivanov at openjdk.org Mon Sep 23 18:27:45 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 23 Sep 2024 18:27:45 GMT Subject: Integrated: 8340461: Amend description for logArea In-Reply-To: <1f-Y1noCKQ3rL7KSJOPRswNG4xpNGQoOYG0M3Dn1Y7s=.4666e474-e104-43cc-9680-9d980260ad12@github.com> References: <1f-Y1noCKQ3rL7KSJOPRswNG4xpNGQoOYG0M3Dn1Y7s=.4666e474-e104-43cc-9680-9d980260ad12@github.com> Message-ID: On Mon, 23 Sep 2024 14:30:30 GMT, Alexey Ivanov wrote: > Resolve the error: > > PassFailJFrame.java:161: error: text not allowed in
          element > *
        • to add a log area
        • , > ^ > > > Shorten the rendered javadoc for `log`, `logClear` and `logSet`. > > @azvegint, could you take a look? This pull request has now been integrated. Changeset: 833ff299 Author: Alexey Ivanov URL: https://git.openjdk.org/jdk/commit/833ff29983e0d433ccd4c7e946b15e42045faeaa Stats: 9 lines in 1 file changed: 4 ins; 0 del; 5 mod 8340461: Amend description for logArea Reviewed-by: azvegint, prr ------------- PR: https://git.openjdk.org/jdk/pull/21138 From prr at openjdk.org Mon Sep 23 18:29:43 2024 From: prr at openjdk.org (Phil Race) Date: Mon, 23 Sep 2024 18:29:43 GMT Subject: Integrated: 8340411: open source several 2D imaging tests In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 17:07:31 GMT, Phil Race wrote: > open source several 2d imaging related tests. This pull request has now been integrated. Changeset: 8dcf7b8f Author: Phil Race URL: https://git.openjdk.org/jdk/commit/8dcf7b8fa7b17bf34c62c561c6ed78e8080df1ff Stats: 485 lines in 4 files changed: 485 ins; 0 del; 0 mod 8340411: open source several 2D imaging tests Reviewed-by: azvegint ------------- PR: https://git.openjdk.org/jdk/pull/21113 From prr at openjdk.org Mon Sep 23 18:31:37 2024 From: prr at openjdk.org (Phil Race) Date: Mon, 23 Sep 2024 18:31:37 GMT Subject: RFR: 8340365: Position the first window of a window list In-Reply-To: References: Message-ID: <5h-0TuymzAYRn8c7HLxBUtHzmDP0FRcSMbnmpNhXlZs=.f1bc9cbf-f4f0-45ec-9393-74f43aec7b45@github.com> On Wed, 18 Sep 2024 12:05:22 GMT, Alexey Ivanov wrote: > Support of multiple test UI windows in `PassFailJFrame` is still evolving. After [JDK-8340210](https://bugs.openjdk.org/browse/JDK-8340210), the `Builder` has a method `positionTestUI` to supply an implementation of the `PositionWindows` interface which handles the positioning of all test UI windows created. > > If `PositionWindows` is not provided, all the test UI windows are left with the default coordinates: (0, 0). > > If `PassFailJFrame` called `positionTestWindow` for the first window, it would allow the test developer to position other windows based on the position of the first one. > > This issue was raised in #21029 in [this thread of comments](https://github.com/openjdk/jdk/pull/21029#discussion_r1763744407). > > To make it easier to position multiple test UI windows without implementing the `PositionWindows` interface, the `PassFailJFrame` should position the first window of the list. > > The `LotsOfMenuItemsTest.java` test in #21029 had to hard-code the coordinates or use `PassFailJFrame.positionTestWindow` explicitly in its `ComponentListener.componentShown`. > > With the proposed change in this pull request, the implementation would use `ComponentListener.componentMoved`: > > > @Override > public void componentMoved(ComponentEvent e) { > testFrame.setLocation(firstFrame.getX(), > firstFrame.getY() + firstFrame.getHeight() + 8); > } > > > This has the advantage in that the test UI windows don't flicker for a short time in the upper left corner of the screen; and the developer has to handle only positioning the second window (frame). > > However, this has a funny effect: if you move the first frame with mouse or in any other way, the second frame follows. To avoid such kind of behaviour, call `removeComponentListener` in the handler. > > @honkar-jdk, @azvegint, could you take a look? Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21057#pullrequestreview-2323024259 From aivanov at openjdk.org Mon Sep 23 18:34:38 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 23 Sep 2024 18:34:38 GMT Subject: Integrated: 8340365: Position the first window of a window list In-Reply-To: References: Message-ID: On Wed, 18 Sep 2024 12:05:22 GMT, Alexey Ivanov wrote: > Support of multiple test UI windows in `PassFailJFrame` is still evolving. After [JDK-8340210](https://bugs.openjdk.org/browse/JDK-8340210), the `Builder` has a method `positionTestUI` to supply an implementation of the `PositionWindows` interface which handles the positioning of all test UI windows created. > > If `PositionWindows` is not provided, all the test UI windows are left with the default coordinates: (0, 0). > > If `PassFailJFrame` called `positionTestWindow` for the first window, it would allow the test developer to position other windows based on the position of the first one. > > This issue was raised in #21029 in [this thread of comments](https://github.com/openjdk/jdk/pull/21029#discussion_r1763744407). > > To make it easier to position multiple test UI windows without implementing the `PositionWindows` interface, the `PassFailJFrame` should position the first window of the list. > > The `LotsOfMenuItemsTest.java` test in #21029 had to hard-code the coordinates or use `PassFailJFrame.positionTestWindow` explicitly in its `ComponentListener.componentShown`. > > With the proposed change in this pull request, the implementation would use `ComponentListener.componentMoved`: > > > @Override > public void componentMoved(ComponentEvent e) { > testFrame.setLocation(firstFrame.getX(), > firstFrame.getY() + firstFrame.getHeight() + 8); > } > > > This has the advantage in that the test UI windows don't flicker for a short time in the upper left corner of the screen; and the developer has to handle only positioning the second window (frame). > > However, this has a funny effect: if you move the first frame with mouse or in any other way, the second frame follows. To avoid such kind of behaviour, call `removeComponentListener` in the handler. > > @honkar-jdk, @azvegint, could you take a look? This pull request has now been integrated. Changeset: e97f0fe1 Author: Alexey Ivanov URL: https://git.openjdk.org/jdk/commit/e97f0fe1b4046bfcc40e85ba1bee4f4c40053300 Stats: 3 lines in 1 file changed: 0 ins; 2 del; 1 mod 8340365: Position the first window of a window list Reviewed-by: azvegint, prr ------------- PR: https://git.openjdk.org/jdk/pull/21057 From prr at openjdk.org Mon Sep 23 18:37:35 2024 From: prr at openjdk.org (Phil Race) Date: Mon, 23 Sep 2024 18:37:35 GMT Subject: RFR: 8340228: Open source couple more miscellaneous AWT tests In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 22:31:24 GMT, Alexander Zuev wrote: > Cleaning up and opensourcing three more tests. Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21097#pullrequestreview-2323036132 From prr at openjdk.org Mon Sep 23 18:44:35 2024 From: prr at openjdk.org (Phil Race) Date: Mon, 23 Sep 2024 18:44:35 GMT Subject: RFR: 8340433: Open source closed choice tests #3 In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 09:53:00 GMT, Alexander Zvegintsev wrote: > few more tests to open source > > Testing is good. Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21107#pullrequestreview-2323049215 From aivanov at openjdk.org Mon Sep 23 20:45:44 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Mon, 23 Sep 2024 20:45:44 GMT Subject: RFR: 8340466: Add descriptions for PassFailJFrame constructors Message-ID: I added description to all the constructors available in `PassFailJFrame`. I generated the javadoc for it: [`PassFailJFrame/api`](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html) which is easier to read. This hosted javadoc could be used as a reference to its API. The constructor with the largest number of parameters contains a short description of how to use the `PassFailJFrame` object. Shall we deprecate the constructors in favour of `Builder`? The builder provides a more streamlined experience, therefore new tests should use it instead of constructors. We may update the tests which use the constructors, after which the constructors can be removed. ------------- Commit messages: - Describe the remaining PassFailJFrame constructors - Describe PassFailJFrame(title, instructions, timeOut) - Put EDT into tags where it's introduced - Re-flow constructor parameters at timeout, wrap entire throws clause - Re-write description of PassFailJFrame constructor without screenshots - Re-write description of PassFailJFrame constructor with screenshots - Replace plain `&` in javadocs with `&` Changes: https://git.openjdk.org/jdk/pull/21145/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21145&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340466 Stats: 154 lines in 1 file changed: 97 ins; 14 del; 43 mod Patch: https://git.openjdk.org/jdk/pull/21145.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21145/head:pull/21145 PR: https://git.openjdk.org/jdk/pull/21145 From prr at openjdk.org Mon Sep 23 20:52:35 2024 From: prr at openjdk.org (Phil Race) Date: Mon, 23 Sep 2024 20:52:35 GMT Subject: RFR: 8339836: Open source several AWT Mouse tests - Batch 1 In-Reply-To: References: Message-ID: On Mon, 23 Sep 2024 04:56:43 GMT, Tejesh R wrote: > Open source these AWT Mouse tests: > > java/awt/Mouse/MouseEnterExitTest.java > java/awt/Mouse/MouseEnterExitTest2.java > java/awt/Mouse/MousePressedTest.java > java/awt/Mouse/MouseEnterExitTest4.java > java/awt/Mouse/MouseEnterExitTest3.java test/jdk/java/awt/Mouse/MouseEnterExitTest.java line 46: > 44: * @summary Test to verify Lightweight components don't get > 45: * enter/exit during drags > 46: * @library /java/awt/regtesthelpers Can't the drag be done by Robot to make this an automated test ? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21124#discussion_r1772059227 From duke at openjdk.org Tue Sep 24 00:59:37 2024 From: duke at openjdk.org (toshiogata) Date: Tue, 24 Sep 2024 00:59:37 GMT Subject: RFR: 8337851: Some tests have name which confuse jtreg [v3] In-Reply-To: References: Message-ID: On Fri, 23 Aug 2024 22:36:51 GMT, Jonathan Gibbons wrote: >> Moving files from one directory to another can sometimes be a bit risky, especially for `javac` tests, because that implies moving the classes from one unnamed package to a different unnamed package. >> >> Please confirm that all tests under `test/langtools/tools/javac` continue to pass after the files have been moved. You can either run just those tests, or run all langtools `tier1` tests if that is easier. > >> > @jonathan-gibbons Is this a bug in jtreg, or where these files actually improperly named? >> >> Not a bug as such, but maybe a little-known misfeature. `jtreg` has always had problems with filenames that could cause confusion, and the general sense has generally been, "if it hurts, don't do it!". That being said, our overall library API and infrastructure is way better these days than in times past, and it might be reasonable to file an Enhancement for `jtreg` to have a utility/check/test to detect these anomalous situations. >> >> In the meantime, renaming the files to avoid the problem is the recommended solution. > > Filed https://bugs.openjdk.org/browse/CODETOOLS-7903803 @jonathan-gibbons I was wondering if you have had a chance to see my response and aivanov-jdk's question. I would appreciate your reaction. Thank you. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20475#issuecomment-2369886576 From psadhukhan at openjdk.org Tue Sep 24 02:10:47 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Tue, 24 Sep 2024 02:10:47 GMT Subject: Integrated: 8339995: Open source several AWT focus tests - series 6 In-Reply-To: References: Message-ID: <4ELUqfhw-49Oy_3CunDT7Us4C85mdkttirXbVl0Keyk=.855dc3c4-dbf3-4c78-9372-c765482628c5@github.com> On Thu, 19 Sep 2024 05:25:17 GMT, Prasanta Sadhukhan wrote: > Opensource few Focus tests This pull request has now been integrated. Changeset: 3411f9df Author: Prasanta Sadhukhan URL: https://git.openjdk.org/jdk/commit/3411f9dff79c2e7cb7ce8ebf036f8b3fd9bb647d Stats: 580 lines in 5 files changed: 580 ins; 0 del; 0 mod 8339995: Open source several AWT focus tests - series 6 Reviewed-by: prr ------------- PR: https://git.openjdk.org/jdk/pull/21079 From psadhukhan at openjdk.org Tue Sep 24 02:12:45 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Tue, 24 Sep 2024 02:12:45 GMT Subject: Integrated: 8340367: Opensource few AWT image tests In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 03:58:20 GMT, Prasanta Sadhukhan wrote: > Opensource few image tests This pull request has now been integrated. Changeset: 6c91a16f Author: Prasanta Sadhukhan URL: https://git.openjdk.org/jdk/commit/6c91a16f16cbeb1bb0a79459e7db1fd9f576e743 Stats: 513 lines in 5 files changed: 513 ins; 0 del; 0 mod 8340367: Opensource few AWT image tests Reviewed-by: prr ------------- PR: https://git.openjdk.org/jdk/pull/21104 From psadhukhan at openjdk.org Tue Sep 24 02:17:26 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Tue, 24 Sep 2024 02:17:26 GMT Subject: RFR: 8339935: Open source several AWT focus tests - series 5 [v2] In-Reply-To: References: <9CBDlYAA5yUeyovwlZ8wpQ5fEE6YIXMUUt53BVb-JbU=.9f8c5c39-2e90-4d6a-868f-734cea42367e@github.com> Message-ID: On Mon, 23 Sep 2024 18:03:52 GMT, Phil Race wrote: >> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: >> >> Review fix > > test/jdk/java/awt/Focus/ProxiedWindowHideTest.java line 27: > >> 25: * @test >> 26: * @bug 4396407 >> 27: * @summary Tests that after proxied window were hidden focus is being restored correctly > > ... after a proxied window is hidden ... ok..fixed... ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21103#discussion_r1772468601 From psadhukhan at openjdk.org Tue Sep 24 02:17:26 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Tue, 24 Sep 2024 02:17:26 GMT Subject: RFR: 8339935: Open source several AWT focus tests - series 5 [v2] In-Reply-To: <9CBDlYAA5yUeyovwlZ8wpQ5fEE6YIXMUUt53BVb-JbU=.9f8c5c39-2e90-4d6a-868f-734cea42367e@github.com> References: <9CBDlYAA5yUeyovwlZ8wpQ5fEE6YIXMUUt53BVb-JbU=.9f8c5c39-2e90-4d6a-868f-734cea42367e@github.com> Message-ID: > Opensource few AWT focus tests Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: Review fix ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21103/files - new: https://git.openjdk.org/jdk/pull/21103/files/dfe88b09..df628978 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21103&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21103&range=00-01 Stats: 3 lines in 2 files changed: 0 ins; 0 del; 3 mod Patch: https://git.openjdk.org/jdk/pull/21103.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21103/head:pull/21103 PR: https://git.openjdk.org/jdk/pull/21103 From psadhukhan at openjdk.org Tue Sep 24 02:34:37 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Tue, 24 Sep 2024 02:34:37 GMT Subject: RFR: 8339982: Open source several AWT Mouse tests - Batch 2 In-Reply-To: References: Message-ID: On Mon, 23 Sep 2024 06:40:55 GMT, Tejesh R wrote: > Open source these AWT Mouse and GraphicsEnvironment tests: > > java/awt/MouseClickCount/MouseClickCount.java > java/awt/MouseDragEnterExitTest/MouseDragEnterExitTest.java > java/awt/MouseDragTest/MouseDragTest.java > java/awt/OpenWinDoubleClickTest/OpenWinDoubleClickTest.java > java/awt/GraphicsEnvironment/DefaultScreenDeviceTest.java test/jdk/java/awt/GraphicsEnvironment/DefaultScreenDeviceTest.java line 43: > 41: * returning first screen > 42: * @requires (os.family == "windows") > 43: * @library /open/test/jdk/java/awt/regtesthelpers Seems like you have not tested these tests after opensourcing...Please adjust to correct path for all the tests.. test/jdk/java/awt/Mouse/MouseDragEnterExitTest.java line 98: > 96: > 97: public void mousePressed(MouseEvent e) { > 98: } I guess if you use MouseAdapter instead of MouseListener, then you only have to provide implementation for the method you need, not for all.. test/jdk/java/awt/Mouse/MouseDragEnterExitTest.java line 128: > 126: if (e.getID() == MouseEvent.MOUSE_EXITED) > 127: type = "MOUSE_EXITED"; > 128: MOUSE_ENTERED is used twice...Also, it seems you are only printing MouseExit/Enter so other types can be deleted.. test/jdk/java/awt/Mouse/MouseDragEnterExitTest.java line 168: > 166: public void mouseClicked(MouseEvent e) { > 167: } > 168: same here...MouseAdapter... test/jdk/java/awt/Mouse/OpenWinDoubleClickTest.java line 38: > 36: * @library /open/test/jdk/java/awt/regtesthelpers > 37: * @build PassFailJFrame > 38: * @run main/manual OpenWinDoubleClickTest Guess we decided to rename this test... ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21126#discussion_r1772472012 PR Review Comment: https://git.openjdk.org/jdk/pull/21126#discussion_r1772475894 PR Review Comment: https://git.openjdk.org/jdk/pull/21126#discussion_r1772476755 PR Review Comment: https://git.openjdk.org/jdk/pull/21126#discussion_r1772477852 PR Review Comment: https://git.openjdk.org/jdk/pull/21126#discussion_r1772472446 From psadhukhan at openjdk.org Tue Sep 24 02:56:35 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Tue, 24 Sep 2024 02:56:35 GMT Subject: RFR: 8340143: Open source several Java2D rendering loop tests. In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 23:27:11 GMT, Phil Race wrote: > Open source some Java2d loop rendering tests. Marked as reviewed by psadhukhan (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21114#pullrequestreview-2323886695 From tr at openjdk.org Tue Sep 24 04:10:33 2024 From: tr at openjdk.org (Tejesh R) Date: Tue, 24 Sep 2024 04:10:33 GMT Subject: RFR: 8339982: Open source several AWT Mouse tests - Batch 2 [v2] In-Reply-To: References: Message-ID: > Open source these AWT Mouse and GraphicsEnvironment tests: > > java/awt/MouseClickCount/MouseClickCount.java > java/awt/MouseDragEnterExitTest/MouseDragEnterExitTest.java > java/awt/MouseDragTest/MouseDragTest.java > java/awt/OpenWinDoubleClickTest/OpenWinDoubleClickTest.java > java/awt/GraphicsEnvironment/DefaultScreenDeviceTest.java Tejesh R has updated the pull request incrementally with two additional commits since the last revision: - Renamed OpenWinDoubleClickTest to DoubleClickTest - jtreg updates ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21126/files - new: https://git.openjdk.org/jdk/pull/21126/files/0f491e0c..d2bd742e Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21126&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21126&range=00-01 Stats: 8 lines in 5 files changed: 0 ins; 0 del; 8 mod Patch: https://git.openjdk.org/jdk/pull/21126.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21126/head:pull/21126 PR: https://git.openjdk.org/jdk/pull/21126 From tr at openjdk.org Tue Sep 24 04:10:35 2024 From: tr at openjdk.org (Tejesh R) Date: Tue, 24 Sep 2024 04:10:35 GMT Subject: RFR: 8339982: Open source several AWT Mouse tests - Batch 2 [v2] In-Reply-To: References: Message-ID: On Tue, 24 Sep 2024 02:20:03 GMT, Prasanta Sadhukhan wrote: >> Tejesh R has updated the pull request incrementally with two additional commits since the last revision: >> >> - Renamed OpenWinDoubleClickTest to DoubleClickTest >> - jtreg updates > > test/jdk/java/awt/GraphicsEnvironment/DefaultScreenDeviceTest.java line 43: > >> 41: * returning first screen >> 42: * @requires (os.family == "windows") >> 43: * @library /open/test/jdk/java/awt/regtesthelpers > > Seems like you have not tested these tests after opensourcing...Please adjust to correct path for all the tests.. Had missed to commit and push here. > test/jdk/java/awt/Mouse/OpenWinDoubleClickTest.java line 38: > >> 36: * @library /open/test/jdk/java/awt/regtesthelpers >> 37: * @build PassFailJFrame >> 38: * @run main/manual OpenWinDoubleClickTest > > Guess we decided to rename this test... Updated. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21126#discussion_r1772553805 PR Review Comment: https://git.openjdk.org/jdk/pull/21126#discussion_r1772553955 From rgupta at openjdk.org Tue Sep 24 04:22:42 2024 From: rgupta at openjdk.org (Ravi Gupta) Date: Tue, 24 Sep 2024 04:22:42 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v11] In-Reply-To: References: Message-ID: On Mon, 23 Sep 2024 04:19:20 GMT, Ravi Gupta wrote: >> This testcase checks for the following assertions for Component events: >> >> 1. When components are resized, moved, hidden and shown the respective events are triggered. >> 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. >> 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. >> 4. When a window is minimized/restored then hidden and shown component events should be triggered. >> >> Testing: >> Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. > > Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: > > 8333403: Review Comments Fixed I ran CI job with the latest code it passes without failure. ------------- PR Comment: https://git.openjdk.org/jdk/pull/19521#issuecomment-2370118834 From duke at openjdk.org Tue Sep 24 04:31:36 2024 From: duke at openjdk.org (duke) Date: Tue, 24 Sep 2024 04:31:36 GMT Subject: RFR: 8333403: Write a test to check various components events are triggered properly [v11] In-Reply-To: References: Message-ID: <6s2YVn1i--3tECwgOHftmvquR3QopmNTPmp3eqHUdC8=.5c507dd6-827b-48b4-9462-3724180a2272@github.com> On Mon, 23 Sep 2024 04:19:20 GMT, Ravi Gupta wrote: >> This testcase checks for the following assertions for Component events: >> >> 1. When components are resized, moved, hidden and shown the respective events are triggered. >> 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. >> 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. >> 4. When a window is minimized/restored then hidden and shown component events should be triggered. >> >> Testing: >> Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. > > Ravi Gupta has updated the pull request incrementally with one additional commit since the last revision: > > 8333403: Review Comments Fixed @ravigupta30 Your change (at version fe35276b9185f2ac4cd54d73cecb0904c9dfb5d5) is now ready to be sponsored by a Committer. ------------- PR Comment: https://git.openjdk.org/jdk/pull/19521#issuecomment-2370126937 From tr at openjdk.org Tue Sep 24 04:38:05 2024 From: tr at openjdk.org (Tejesh R) Date: Tue, 24 Sep 2024 04:38:05 GMT Subject: RFR: 8339982: Open source several AWT Mouse tests - Batch 2 [v3] In-Reply-To: References: Message-ID: > Open source these AWT Mouse and GraphicsEnvironment tests: > > java/awt/MouseClickCount/MouseClickCount.java > java/awt/MouseDragEnterExitTest/MouseDragEnterExitTest.java > java/awt/MouseDragTest/MouseDragTest.java > java/awt/OpenWinDoubleClickTest/OpenWinDoubleClickTest.java > java/awt/GraphicsEnvironment/DefaultScreenDeviceTest.java Tejesh R has updated the pull request incrementally with one additional commit since the last revision: Review comments updated ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21126/files - new: https://git.openjdk.org/jdk/pull/21126/files/d2bd742e..6c274e31 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21126&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21126&range=01-02 Stats: 120 lines in 1 file changed: 21 ins; 93 del; 6 mod Patch: https://git.openjdk.org/jdk/pull/21126.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21126/head:pull/21126 PR: https://git.openjdk.org/jdk/pull/21126 From tr at openjdk.org Tue Sep 24 04:38:06 2024 From: tr at openjdk.org (Tejesh R) Date: Tue, 24 Sep 2024 04:38:06 GMT Subject: RFR: 8339982: Open source several AWT Mouse tests - Batch 2 [v3] In-Reply-To: References: Message-ID: On Tue, 24 Sep 2024 02:27:07 GMT, Prasanta Sadhukhan wrote: >> Tejesh R has updated the pull request incrementally with one additional commit since the last revision: >> >> Review comments updated > > test/jdk/java/awt/Mouse/MouseDragEnterExitTest.java line 98: > >> 96: >> 97: public void mousePressed(MouseEvent e) { >> 98: } > > I guess if you use MouseAdapter instead of MouseListener, then you only have to provide implementation for the method you need, not for all.. Yes, good one. Have updated. > test/jdk/java/awt/Mouse/MouseDragEnterExitTest.java line 128: > >> 126: if (e.getID() == MouseEvent.MOUSE_EXITED) >> 127: type = "MOUSE_EXITED"; >> 128: > > MOUSE_ENTERED is used twice...Also, it seems you are only printing MouseExit/Enter so other types can be deleted.. Updated. > test/jdk/java/awt/Mouse/MouseDragEnterExitTest.java line 168: > >> 166: public void mouseClicked(MouseEvent e) { >> 167: } >> 168: > > same here...MouseAdapter... Updated. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21126#discussion_r1772571883 PR Review Comment: https://git.openjdk.org/jdk/pull/21126#discussion_r1772571943 PR Review Comment: https://git.openjdk.org/jdk/pull/21126#discussion_r1772572019 From psadhukhan at openjdk.org Tue Sep 24 05:53:40 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Tue, 24 Sep 2024 05:53:40 GMT Subject: RFR: 8339982: Open source several AWT Mouse tests - Batch 2 [v3] In-Reply-To: References: Message-ID: On Tue, 24 Sep 2024 04:38:05 GMT, Tejesh R wrote: >> Open source these AWT Mouse and GraphicsEnvironment tests: >> >> java/awt/MouseClickCount/MouseClickCount.java >> java/awt/MouseDragEnterExitTest/MouseDragEnterExitTest.java >> java/awt/MouseDragTest/MouseDragTest.java >> java/awt/OpenWinDoubleClickTest/OpenWinDoubleClickTest.java >> java/awt/GraphicsEnvironment/DefaultScreenDeviceTest.java > > Tejesh R has updated the pull request incrementally with one additional commit since the last revision: > > Review comments updated Marked as reviewed by psadhukhan (Reviewer). test/jdk/java/awt/Mouse/MouseDragEnterExitTest.java line 68: > 66: > 67: addMouseListener(new MouseAdapter() { > 68: public void mouseEntered(MouseEvent e) { you can add @Override ------------- PR Review: https://git.openjdk.org/jdk/pull/21126#pullrequestreview-2324125907 PR Review Comment: https://git.openjdk.org/jdk/pull/21126#discussion_r1772667730 From tr at openjdk.org Tue Sep 24 06:07:19 2024 From: tr at openjdk.org (Tejesh R) Date: Tue, 24 Sep 2024 06:07:19 GMT Subject: RFR: 8339836: Open source several AWT Mouse tests - Batch 1 [v2] In-Reply-To: References: Message-ID: > Open source these AWT Mouse tests: > > java/awt/Mouse/MouseEnterExitTest.java > java/awt/Mouse/MouseEnterExitTest2.java > java/awt/Mouse/MousePressedTest.java > java/awt/Mouse/MouseEnterExitTest4.java > java/awt/Mouse/MouseEnterExitTest3.java Tejesh R has updated the pull request incrementally with one additional commit since the last revision: MouseEnterExitTest converted to automated ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21124/files - new: https://git.openjdk.org/jdk/pull/21124/files/8819524b..440905cb Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21124&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21124&range=00-01 Stats: 106 lines in 1 file changed: 24 ins; 60 del; 22 mod Patch: https://git.openjdk.org/jdk/pull/21124.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21124/head:pull/21124 PR: https://git.openjdk.org/jdk/pull/21124 From tr at openjdk.org Tue Sep 24 06:07:20 2024 From: tr at openjdk.org (Tejesh R) Date: Tue, 24 Sep 2024 06:07:20 GMT Subject: RFR: 8339836: Open source several AWT Mouse tests - Batch 1 [v2] In-Reply-To: References: Message-ID: On Mon, 23 Sep 2024 20:49:54 GMT, Phil Race wrote: >> Tejesh R has updated the pull request incrementally with one additional commit since the last revision: >> >> MouseEnterExitTest converted to automated > > test/jdk/java/awt/Mouse/MouseEnterExitTest.java line 46: > >> 44: * @summary Test to verify Lightweight components don't get >> 45: * enter/exit during drags >> 46: * @library /java/awt/regtesthelpers > > Can't the drag be done by Robot to make this an automated test ? Yes, converted to automated test. Tested in CI too. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21124#discussion_r1772680704 From tr at openjdk.org Tue Sep 24 06:29:21 2024 From: tr at openjdk.org (Tejesh R) Date: Tue, 24 Sep 2024 06:29:21 GMT Subject: RFR: 8339982: Open source several AWT Mouse tests - Batch 2 [v4] In-Reply-To: References: Message-ID: > Open source these AWT Mouse and GraphicsEnvironment tests: > > java/awt/MouseClickCount/MouseClickCount.java > java/awt/MouseDragEnterExitTest/MouseDragEnterExitTest.java > java/awt/MouseDragTest/MouseDragTest.java > java/awt/OpenWinDoubleClickTest/OpenWinDoubleClickTest.java > java/awt/GraphicsEnvironment/DefaultScreenDeviceTest.java Tejesh R has updated the pull request incrementally with one additional commit since the last revision: Review comments updated ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21126/files - new: https://git.openjdk.org/jdk/pull/21126/files/6c274e31..1c8c5efb Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21126&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21126&range=02-03 Stats: 2 lines in 1 file changed: 2 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21126.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21126/head:pull/21126 PR: https://git.openjdk.org/jdk/pull/21126 From tr at openjdk.org Tue Sep 24 06:29:21 2024 From: tr at openjdk.org (Tejesh R) Date: Tue, 24 Sep 2024 06:29:21 GMT Subject: RFR: 8339982: Open source several AWT Mouse tests - Batch 2 [v3] In-Reply-To: References: Message-ID: On Tue, 24 Sep 2024 05:49:39 GMT, Prasanta Sadhukhan wrote: >> Tejesh R has updated the pull request incrementally with one additional commit since the last revision: >> >> Review comments updated > > test/jdk/java/awt/Mouse/MouseDragEnterExitTest.java line 68: > >> 66: >> 67: addMouseListener(new MouseAdapter() { >> 68: public void mouseEntered(MouseEvent e) { > > you can add @Override Updated. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21126#discussion_r1772703060 From abhiscxk at openjdk.org Tue Sep 24 07:52:01 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Tue, 24 Sep 2024 07:52:01 GMT Subject: RFR: 8340605: Open source several AWT PopupMenu tests Message-ID: Several AWT PopupMEnu related tests are converted from applet to manual and moved to open. ------------- Commit messages: - Test moved to open Changes: https://git.openjdk.org/jdk/pull/21151/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21151&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340605 Stats: 432 lines in 5 files changed: 432 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21151.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21151/head:pull/21151 PR: https://git.openjdk.org/jdk/pull/21151 From duke at openjdk.org Tue Sep 24 12:19:37 2024 From: duke at openjdk.org (Daniel Gredler) Date: Tue, 24 Sep 2024 12:19:37 GMT Subject: RFR: 8339974: Graphics2D.drawString doesn't always work with Font derived from AffineTransform [v2] In-Reply-To: <8wAz3aLdxXQrWuQtLvRXEtJ7ODGOGsuDE2QW465A05k=.5ed6a47d-e07f-400d-9566-70e4f6ecb8b2@github.com> References: <8wAz3aLdxXQrWuQtLvRXEtJ7ODGOGsuDE2QW465A05k=.5ed6a47d-e07f-400d-9566-70e4f6ecb8b2@github.com> Message-ID: On Fri, 13 Sep 2024 14:41:48 GMT, Daniel Gredler wrote: >> There is a bug in `TextLayout.getOutline(AffineTransform)`, where the transformation is applied too early (before the layout path applies its mapping). The most obvious error caused by this bug is that `Graphics2D.drawString(...)` fails to draw the string when using a rotated + scaled `AffineTransform` (see minimal test case in the bug report). >> >> There are two uses of `TextLayout.getOutline(AffineTransform)`: the first one, triggered via a simple `Graphics2D.drawString(...)` was the one I ran into; the second one requires the use of a transformed font with a `PSPrinterJob`. Both are broken. This PR includes two test classes verifying that both scenarios were broken before the fix and are working after the fix. >> >> Two points which might require some discussion: >> 1. I've changed the signature of method `TextLine.getOutline(AffineTransform)`, to just `TextLine.getOutline()`; I'm assuming this is OK since `TextLine` is a package-private class. >> 2. I've added a fast path in `TextLayout.getOutline(AffineTransform)` to transform the shape in place if it is a `GeneralPath` (it should usually be, and avoids an extra `Shape` copy vs. the current code, which makes no copy). A bit more complex, but efficient. > > Daniel Gredler has updated the pull request incrementally with one additional commit since the last revision: > > Add bug ID and summary to test classes @prrace Do you have some time to review this PR? Would love to wrap this one up in the next week or two. Thanks! ------------- PR Comment: https://git.openjdk.org/jdk/pull/20993#issuecomment-2371107247 From aivanov at openjdk.org Tue Sep 24 15:56:17 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 24 Sep 2024 15:56:17 GMT Subject: RFR: 8340785: Update description of PassFailJFrame and samples Message-ID: <4U0oKfNqwC3u8g7SdPaeohdEGbrlCLG_sSruyRsRMvM=.70a2ab5f-38e6-49be-b01f-f4d213fc7980@github.com> I re-worked the entire description of `PassFailJFrame`: Add description of what UI elements it provides and how to interact with them. Add anchors for linking to the sections. Use `{@snippet}` instead of `
          {@code}
          ` for sample code. Use method references instead of lambdas in samples. Document required jtreg tags to use `PassFailJFrame`. Rename `SampleOldManualTest` to `ObsoleteManualTest`. Provide an overview of `Builder` methods to configure `PassFailJFrame`. As in #21145, the generated javadoc [PassFailJFrame.html](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html) could be easier to read and review. The current version of the generated docs contains changes from #21145 and this PR. The PRs can be integrated independently. ------------- Commit messages: - 8340785: Update description of PassFailJFrame and samples Changes: https://git.openjdk.org/jdk/pull/21162/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21162&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340785 Stats: 159 lines in 1 file changed: 126 ins; 0 del; 33 mod Patch: https://git.openjdk.org/jdk/pull/21162.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21162/head:pull/21162 PR: https://git.openjdk.org/jdk/pull/21162 From aivanov at openjdk.org Tue Sep 24 16:03:41 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 24 Sep 2024 16:03:41 GMT Subject: RFR: 8340785: Update description of PassFailJFrame and samples In-Reply-To: <4U0oKfNqwC3u8g7SdPaeohdEGbrlCLG_sSruyRsRMvM=.70a2ab5f-38e6-49be-b01f-f4d213fc7980@github.com> References: <4U0oKfNqwC3u8g7SdPaeohdEGbrlCLG_sSruyRsRMvM=.70a2ab5f-38e6-49be-b01f-f4d213fc7980@github.com> Message-ID: On Tue, 24 Sep 2024 15:51:09 GMT, Alexey Ivanov wrote: > I re-worked the entire description of `PassFailJFrame`: > > Add description of what UI elements it provides and how to interact with them. > Add anchors for linking to the sections. > > Use `{@snippet}` instead of `
          {@code}
          ` for sample code. > Use method references instead of lambdas in samples. > Document required jtreg tags to use `PassFailJFrame`. > Rename `SampleOldManualTest` to `ObsoleteManualTest`. > > Provide an overview of `Builder` methods to configure `PassFailJFrame`. > > As in #21145, the generated javadoc [PassFailJFrame.html](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html) could be easier to read and review. > > The current version of the generated docs contains changes from #21145 and this PR. The PRs can be integrated independently. There are still some missing parts, like more details on different kinds of `testUI` overloads and support for multiple windows. At the same time, the description is close to comprehensive, the javadoc comment for the `PassFailJFrame` takes more than 200 lines. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21162#issuecomment-2371711426 From aivanov at openjdk.org Tue Sep 24 16:12:29 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Tue, 24 Sep 2024 16:12:29 GMT Subject: RFR: 8340466: Add description for PassFailJFrame constructors [v2] In-Reply-To: References: Message-ID: > I added description to all the constructors available in `PassFailJFrame`. > > I generated the javadoc for it: [`PassFailJFrame` constructor details](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html#constructor-detail) which is easier to read. This hosted javadoc could be used as a reference to its API. > > The constructor with the largest number of parameters contains a short description of how to use the `PassFailJFrame` object. > > Shall we deprecate the constructors in favour of `Builder`? > > The builder provides a more streamlined experience, therefore new tests should use it instead of constructors. We may update the tests which use the constructors, after which the constructors can be removed. Alexey Ivanov has updated the pull request incrementally with one additional commit since the last revision: Use EDT abbreviation in constructor description The term EDT (Event Dispatch Thread) is introduced in the top-level doc comment. ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21145/files - new: https://git.openjdk.org/jdk/pull/21145/files/c36d4076..ff2e7f82 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21145&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21145&range=00-01 Stats: 3 lines in 1 file changed: 0 ins; 1 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/21145.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21145/head:pull/21145 PR: https://git.openjdk.org/jdk/pull/21145 From prr at openjdk.org Tue Sep 24 17:24:47 2024 From: prr at openjdk.org (Phil Race) Date: Tue, 24 Sep 2024 17:24:47 GMT Subject: RFR: 8340466: Add description for PassFailJFrame constructors [v2] In-Reply-To: References: Message-ID: On Tue, 24 Sep 2024 16:12:29 GMT, Alexey Ivanov wrote: >> I added description to all the constructors available in `PassFailJFrame`. >> >> I generated the javadoc for it: [`PassFailJFrame` constructor details](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html#constructor-detail) which is easier to read. This hosted javadoc could be used as a reference to its API. >> >> The constructor with the largest number of parameters contains a short description of how to use the `PassFailJFrame` object. >> >> Shall we deprecate the constructors in favour of `Builder`? >> >> The builder provides a more streamlined experience, therefore new tests should use it instead of constructors. We may update the tests which use the constructors, after which the constructors can be removed. > > Alexey Ivanov has updated the pull request incrementally with one additional commit since the last revision: > > Use EDT abbreviation in constructor description > > The term EDT (Event Dispatch Thread) is introduced in > the top-level doc comment. Marked as reviewed by prr (Reviewer). test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 328: > 326: *

          > 327: * After you create a test UI window, register the window using > 328: * {@link #addTestWindow(Window) addTestWindow} for disposing of, and disposing of -> disposal test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 351: > 349: * If you enable screenshots by setting the {@code screenCapture} > 350: * parameter to {@code true}, a Screenshot button is added. > 351: * Clicking the Screenshot button, takes screenshot of "screenshots" ------------- PR Review: https://git.openjdk.org/jdk/pull/21145#pullrequestreview-2325912386 PR Review Comment: https://git.openjdk.org/jdk/pull/21145#discussion_r1773746225 PR Review Comment: https://git.openjdk.org/jdk/pull/21145#discussion_r1773748489 From prr at openjdk.org Tue Sep 24 18:10:35 2024 From: prr at openjdk.org (Phil Race) Date: Tue, 24 Sep 2024 18:10:35 GMT Subject: RFR: 8340785: Update description of PassFailJFrame and samples In-Reply-To: <4U0oKfNqwC3u8g7SdPaeohdEGbrlCLG_sSruyRsRMvM=.70a2ab5f-38e6-49be-b01f-f4d213fc7980@github.com> References: <4U0oKfNqwC3u8g7SdPaeohdEGbrlCLG_sSruyRsRMvM=.70a2ab5f-38e6-49be-b01f-f4d213fc7980@github.com> Message-ID: On Tue, 24 Sep 2024 15:51:09 GMT, Alexey Ivanov wrote: > I re-worked the entire description of `PassFailJFrame`: > > Add description of what UI elements it provides and how to interact with them. > Add anchors for linking to the sections. > > Use `{@snippet}` instead of `

          {@code}
          ` for sample code. > Use method references instead of lambdas in samples. > Document required jtreg tags to use `PassFailJFrame`. > Rename `SampleOldManualTest` to `ObsoleteManualTest`. > > Provide an overview of `Builder` methods to configure `PassFailJFrame`. > > As in #21145, the generated javadoc [PassFailJFrame.html](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html) could be easier to read and review. > > The current version of the generated docs contains changes from #21145 and this PR. The PRs can be integrated independently. Marked as reviewed by prr (Reviewer). test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 85: > 83: * Pass / Fail buttons. The framework automatically > 84: * creates a frame to display the instructions, provides buttons > 85: * to select the test result, handles test timeout. "and handles" ------------- PR Review: https://git.openjdk.org/jdk/pull/21162#pullrequestreview-2325919120 PR Review Comment: https://git.openjdk.org/jdk/pull/21162#discussion_r1773750384 From prr at openjdk.org Tue Sep 24 18:10:43 2024 From: prr at openjdk.org (Phil Race) Date: Tue, 24 Sep 2024 18:10:43 GMT Subject: Integrated: 8340143: Open source several Java2D rendering loop tests. In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 23:27:11 GMT, Phil Race wrote: > Open source some Java2d loop rendering tests. This pull request has now been integrated. Changeset: 90c2c0b4 Author: Phil Race URL: https://git.openjdk.org/jdk/commit/90c2c0b4ad4ee7d2ea149aea771cf81bd666b1dc Stats: 394 lines in 5 files changed: 394 ins; 0 del; 0 mod 8340143: Open source several Java2D rendering loop tests. Reviewed-by: psadhukhan ------------- PR: https://git.openjdk.org/jdk/pull/21114 From prr at openjdk.org Tue Sep 24 18:12:38 2024 From: prr at openjdk.org (Phil Race) Date: Tue, 24 Sep 2024 18:12:38 GMT Subject: RFR: 8339935: Open source several AWT focus tests - series 5 [v2] In-Reply-To: References: <9CBDlYAA5yUeyovwlZ8wpQ5fEE6YIXMUUt53BVb-JbU=.9f8c5c39-2e90-4d6a-868f-734cea42367e@github.com> Message-ID: On Tue, 24 Sep 2024 02:17:26 GMT, Prasanta Sadhukhan wrote: >> Opensource few AWT focus tests > > Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: > > Review fix Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21103#pullrequestreview-2326020522 From honkar at openjdk.org Tue Sep 24 18:54:37 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 24 Sep 2024 18:54:37 GMT Subject: RFR: 8339836: Open source several AWT Mouse tests - Batch 1 [v2] In-Reply-To: References: Message-ID: <0edenVY5Ei9g7Op8k3lhl0cvQZZU9Q6jh2USRmiJ3SE=.2c956e75-12de-434a-baea-2c52ee799980@github.com> On Tue, 24 Sep 2024 06:07:19 GMT, Tejesh R wrote: >> Open source these AWT Mouse tests: >> >> java/awt/Mouse/MouseEnterExitTest.java >> java/awt/Mouse/MouseEnterExitTest2.java >> java/awt/Mouse/MousePressedTest.java >> java/awt/Mouse/MouseEnterExitTest4.java >> java/awt/Mouse/MouseEnterExitTest3.java > > Tejesh R has updated the pull request incrementally with one additional commit since the last revision: > > MouseEnterExitTest converted to automated LGTM other than few inline suggestions test/jdk/java/awt/Mouse/MouseEnterExitTest.java line 111: > 109: > 110: public class MouseEnterExitTest { > 111: static MouseFrame TestFrame; naming convention Suggestion: static MouseFrame testFrame; test/jdk/java/awt/Mouse/MouseEnterExitTest.java line 128: > 126: TestFrame.getLocationOnScreen().y + TestFrame.getSize().height / 2)); > 127: robot.delay(100); > 128: robot.waitForIdle(); Ideally waitForIdle() is called first then followed by delay. Suggestion: robot.waitForIdle(); robot.delay(100); test/jdk/java/awt/Mouse/MouseEnterExitTest3.java line 45: > 43: final static Button button = new Button("Button"); > 44: final static JButton jbutton = new JButton("JButton"); > 45: final static Frame frame = new Frame("Mouse Enter/Exit Test"); Modifier order, same for the other two Suggestion: static final Button button = new Button("Button"); ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21124#pullrequestreview-2326065123 PR Review Comment: https://git.openjdk.org/jdk/pull/21124#discussion_r1773835727 PR Review Comment: https://git.openjdk.org/jdk/pull/21124#discussion_r1773834527 PR Review Comment: https://git.openjdk.org/jdk/pull/21124#discussion_r1773840125 From azvegint at openjdk.org Tue Sep 24 18:59:41 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Tue, 24 Sep 2024 18:59:41 GMT Subject: Integrated: 8340433: Open source closed choice tests #3 In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 09:53:00 GMT, Alexander Zvegintsev wrote: > few more tests to open source > > Testing is good. This pull request has now been integrated. Changeset: 8c08c43a Author: Alexander Zvegintsev URL: https://git.openjdk.org/jdk/commit/8c08c43a34b7a237c0281ef58594af4f263ba3ca Stats: 341 lines in 3 files changed: 341 ins; 0 del; 0 mod 8340433: Open source closed choice tests #3 Reviewed-by: honkar, prr ------------- PR: https://git.openjdk.org/jdk/pull/21107 From honkar at openjdk.org Tue Sep 24 19:07:36 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 24 Sep 2024 19:07:36 GMT Subject: RFR: 8339836: Open source several AWT Mouse tests - Batch 1 [v2] In-Reply-To: References: Message-ID: On Tue, 24 Sep 2024 06:07:19 GMT, Tejesh R wrote: >> Open source these AWT Mouse tests: >> >> java/awt/Mouse/MouseEnterExitTest.java >> java/awt/Mouse/MouseEnterExitTest2.java >> java/awt/Mouse/MousePressedTest.java >> java/awt/Mouse/MouseEnterExitTest4.java >> java/awt/Mouse/MouseEnterExitTest3.java > > Tejesh R has updated the pull request incrementally with one additional commit since the last revision: > > MouseEnterExitTest converted to automated test/jdk/java/awt/Mouse/MouseEnterExitTest4.java line 37: > 35: * @bug 4431868 > 36: * @summary Tests that window totally obscured by its child doesn't receive > 37: * enter/exit events when located over another frame Suggestion: This test can be automated similar to MouseEnterExitTest.java with robot.mouseMove() and checking for mouseEntered and Exited events. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21124#discussion_r1773887674 From honkar at openjdk.org Tue Sep 24 23:38:37 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 24 Sep 2024 23:38:37 GMT Subject: RFR: 8340466: Add description for PassFailJFrame constructors [v2] In-Reply-To: References: Message-ID: On Tue, 24 Sep 2024 16:12:29 GMT, Alexey Ivanov wrote: >> I added description to all the constructors available in `PassFailJFrame`. >> >> I generated the javadoc for it: [`PassFailJFrame` constructor details](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html#constructor-detail) which is easier to read. This hosted javadoc could be used as a reference to its API. >> >> The constructor with the largest number of parameters contains a short description of how to use the `PassFailJFrame` object. >> >> Shall we deprecate the constructors in favour of `Builder`? >> >> The builder provides a more streamlined experience, therefore new tests should use it instead of constructors. We may update the tests which use the constructors, after which the constructors can be removed. > > Alexey Ivanov has updated the pull request incrementally with one additional commit since the last revision: > > Use EDT abbreviation in constructor description > > The term EDT (Event Dispatch Thread) is introduced in > the top-level doc comment. > Shall we deprecate the constructors in favor of Builder? >The builder provides a more streamlined experience, therefore new tests should use it instead of constructors. We may update the tests which use the constructors, after which the constructors can be removed. There are some cases where the builder approach may not work as expected especially modal dialog tests and in such instances the older constructor methods are used. ------------- PR Review: https://git.openjdk.org/jdk/pull/21145#pullrequestreview-2326697452 From honkar at openjdk.org Tue Sep 24 23:53:34 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Tue, 24 Sep 2024 23:53:34 GMT Subject: RFR: 8340466: Add description for PassFailJFrame constructors [v2] In-Reply-To: References: Message-ID: On Tue, 24 Sep 2024 16:12:29 GMT, Alexey Ivanov wrote: >> I added description to all the constructors available in `PassFailJFrame`. >> >> I generated the javadoc for it: [`PassFailJFrame` constructor details](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html#constructor-detail) which is easier to read. This hosted javadoc could be used as a reference to its API. >> >> The constructor with the largest number of parameters contains a short description of how to use the `PassFailJFrame` object. >> >> Shall we deprecate the constructors in favour of `Builder`? >> >> The builder provides a more streamlined experience, therefore new tests should use it instead of constructors. We may update the tests which use the constructors, after which the constructors can be removed. > > Alexey Ivanov has updated the pull request incrementally with one additional commit since the last revision: > > Use EDT abbreviation in constructor description > > The term EDT (Event Dispatch Thread) is introduced in > the top-level doc comment. Marked as reviewed by honkar (Reviewer). Doc changes looks good. ------------- PR Review: https://git.openjdk.org/jdk/pull/21145#pullrequestreview-2326708134 Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21145#pullrequestreview-2326708441 From psadhukhan at openjdk.org Wed Sep 25 03:11:41 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 25 Sep 2024 03:11:41 GMT Subject: Integrated: 8339935: Open source several AWT focus tests - series 5 In-Reply-To: <9CBDlYAA5yUeyovwlZ8wpQ5fEE6YIXMUUt53BVb-JbU=.9f8c5c39-2e90-4d6a-868f-734cea42367e@github.com> References: <9CBDlYAA5yUeyovwlZ8wpQ5fEE6YIXMUUt53BVb-JbU=.9f8c5c39-2e90-4d6a-868f-734cea42367e@github.com> Message-ID: On Fri, 20 Sep 2024 03:23:26 GMT, Prasanta Sadhukhan wrote: > Opensource few AWT focus tests This pull request has now been integrated. Changeset: b1f8d2ea Author: Prasanta Sadhukhan URL: https://git.openjdk.org/jdk/commit/b1f8d2ea76322a89eea84851a1e791f52c31261b Stats: 315 lines in 4 files changed: 315 ins; 0 del; 0 mod 8339935: Open source several AWT focus tests - series 5 Reviewed-by: prr ------------- PR: https://git.openjdk.org/jdk/pull/21103 From psadhukhan at openjdk.org Wed Sep 25 03:14:35 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 25 Sep 2024 03:14:35 GMT Subject: RFR: 8339982: Open source several AWT Mouse tests - Batch 2 [v4] In-Reply-To: References: Message-ID: On Tue, 24 Sep 2024 06:29:21 GMT, Tejesh R wrote: >> Open source these AWT Mouse and GraphicsEnvironment tests: >> >> java/awt/MouseClickCount/MouseClickCount.java >> java/awt/MouseDragEnterExitTest/MouseDragEnterExitTest.java >> java/awt/MouseDragTest/MouseDragTest.java >> java/awt/OpenWinDoubleClickTest/OpenWinDoubleClickTest.java >> java/awt/GraphicsEnvironment/DefaultScreenDeviceTest.java > > Tejesh R has updated the pull request incrementally with one additional commit since the last revision: > > Review comments updated Marked as reviewed by psadhukhan (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21126#pullrequestreview-2326885672 From honkar at openjdk.org Wed Sep 25 04:51:23 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 25 Sep 2024 04:51:23 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 [v2] In-Reply-To: References: Message-ID: > Following tests are updated in this PR: > > 1. test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java > 2. test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java > 3. test/jdk/java/awt/Checkbox/CheckboxNullLabelTest.java > 4. test/jdk/java/awt/Checkbox/CheckboxPreferredSizeTest.java Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: problemlist updated ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21094/files - new: https://git.openjdk.org/jdk/pull/21094/files/fd311363..ef0c9916 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21094&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21094&range=00-01 Stats: 3 lines in 1 file changed: 3 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21094.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21094/head:pull/21094 PR: https://git.openjdk.org/jdk/pull/21094 From honkar at openjdk.org Wed Sep 25 04:51:23 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 25 Sep 2024 04:51:23 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 [v2] In-Reply-To: References: Message-ID: On Fri, 20 Sep 2024 05:26:50 GMT, Harshitha Onkar wrote: >> Looks to be similar to [JDK-8233068](https://bugs.openjdk.org/browse/JDK-8233068) > > @prsadhuk Thanks for linking the issue. Yes it looks to be similar. > Unlike XCheckboxPeer.java, WCheckboxPeer.java does not have paintCheckbox(), it is probably done somewhere else for windows. Problemlisted the tests - CheckboxNullLabelTest.java, CheckboxIndicatorSizeTest.java, CheckboxBoxSizeTest.java on windows. [JDK-8340870](https://bugs.openjdk.org/browse/JDK-8340870) ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1774446288 From honkar at openjdk.org Wed Sep 25 05:11:49 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Wed, 25 Sep 2024 05:11:49 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 [v3] In-Reply-To: References: Message-ID: > Following tests are updated in this PR: > > 1. test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java > 2. test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java > 3. test/jdk/java/awt/Checkbox/CheckboxNullLabelTest.java > 4. test/jdk/java/awt/Checkbox/CheckboxPreferredSizeTest.java Harshitha Onkar has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits: - Merge master - problemlist updated - eof newline - checkbox tests ------------- Changes: https://git.openjdk.org/jdk/pull/21094/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21094&range=02 Stats: 412 lines in 5 files changed: 412 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21094.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21094/head:pull/21094 PR: https://git.openjdk.org/jdk/pull/21094 From tr at openjdk.org Wed Sep 25 07:25:04 2024 From: tr at openjdk.org (Tejesh R) Date: Wed, 25 Sep 2024 07:25:04 GMT Subject: RFR: 8340193: Open source several AWT Dialog tests - Batch 1 Message-ID: Open source these AWT Mouse tests: java/awt/Dialog/FileDialogIconTest/FileDialogIconTest.java java/awt/Dialog/FileDialogWrongNameCrash.java java/awt/Dialog/DialogResizeTest.java java/awt/Dialog/GetLocationTest_1.java java/awt/Dialog/DialogIconTest/DialogIconTest.java ------------- Commit messages: - Open source Changes: https://git.openjdk.org/jdk/pull/21174/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21174&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340193 Stats: 685 lines in 11 files changed: 685 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21174.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21174/head:pull/21174 PR: https://git.openjdk.org/jdk/pull/21174 From psadhukhan at openjdk.org Wed Sep 25 07:30:40 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Wed, 25 Sep 2024 07:30:40 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 [v3] In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 05:11:49 GMT, Harshitha Onkar wrote: >> Following tests are updated in this PR: >> >> 1. test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java >> 2. test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java >> 3. test/jdk/java/awt/Checkbox/CheckboxNullLabelTest.java >> 4. test/jdk/java/awt/Checkbox/CheckboxPreferredSizeTest.java > > Harshitha Onkar has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits: > > - Merge master > - problemlist updated > - eof newline > - checkbox tests test/jdk/ProblemList.txt line 797: > 795: java/awt/Checkbox/CheckboxBoxSizeTest.java 8340870 windows-all > 796: java/awt/Checkbox/CheckboxIndicatorSizeTest.java 8340870 windows-all > 797: java/awt/Checkbox/CheckboxBoxSizeTest.java 8340870 windows-all duplicate addition CheckboxBoxSizeTest test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java line 43: > 41: private static final String INSTRUCTIONS = """ > 42: This test must be run at UI Scale of 100% OR 150% or greater. > 43: Compare the size of box to any of native apps on Windows Maybe you can mention anyone of the native app for easy verification... Also, it seems if tester tests with 100%, it might look same and tester can pass it...I guess the problem comes with hidpi scale of 150% or more, so maybe we can remove 100% from instruction OR mention 100% AND 150% to check for both... test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java line 65: > 63: Verify that all indicators of checkboxes has the same size. > 64: Verify that all indicators of radio buttons has the same size. > 65: Press PASS if the above conditions are true else Press FAIL. I guess "Same size" is not correct here...I guess what we meant is the size should be proportionate to scaling or "size will change if font size is changed", it seems the size does not increase if we increase the scale.. but it still remains the "same", so some tester can consider it pass test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java line 167: > 165: testPanel.setFont(newFont); > 166: frame.invalidate(); > 167: frame.validate(); DO we need to invalidate and then validate? guess we can remove these 2 lines or does it have any impact on testing? test/jdk/java/awt/Checkbox/CheckboxPreferredSizeTest.java line 58: > 56: > 57: private static Frame createAndShowUI() { > 58: StrangeCheckbox cbox = new StrangeCheckbox(); I guess we can bring in the code in the StrangeCheckbox constructor and remove that class altogether as it's not doing anything particular rather than implicitly creating a Frame.. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1774671318 PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1774646697 PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1774653116 PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1774654287 PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1774680092 From tr at openjdk.org Wed Sep 25 07:31:37 2024 From: tr at openjdk.org (Tejesh R) Date: Wed, 25 Sep 2024 07:31:37 GMT Subject: RFR: 8340605: Open source several AWT PopupMenu tests In-Reply-To: References: Message-ID: On Tue, 24 Sep 2024 07:46:14 GMT, Abhishek Kumar wrote: > Several AWT PopupMEnu related tests are converted from applet to manual and moved to open. test/jdk/java/awt/PopupMenu/PopupLeadingSeparatorTest.java line 48: > 46: Press mouse button on the frame. Popup menu without leading > 47: separator should appear. > 48: If a PopupMenu behaves same, press Pass, else press Fail. Suggestion: If a PopupMenu behaves same press Pass, else press Fail. test/jdk/java/awt/PopupMenu/PopupMenuWithMenuBar.java line 43: > 41: > 42: public class PopupMenuWithMenuBar { > 43: Suggestion: test/jdk/java/awt/PopupMenu/PopupOnButton.java line 48: > 46: Right-click on the button. > 47: Popup Menu should appear and behave fine. > 48: If a PopupMenu appears, press Pass, else press Fail. Suggestion: If a PopupMenu appears press Pass, else press Fail. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21151#discussion_r1774682082 PR Review Comment: https://git.openjdk.org/jdk/pull/21151#discussion_r1774685425 PR Review Comment: https://git.openjdk.org/jdk/pull/21151#discussion_r1774686569 From abhiscxk at openjdk.org Wed Sep 25 07:42:03 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 25 Sep 2024 07:42:03 GMT Subject: RFR: 8340605: Open source several AWT PopupMenu tests [v2] In-Reply-To: References: Message-ID: > Several AWT PopupMEnu related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: remove blank line ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21151/files - new: https://git.openjdk.org/jdk/pull/21151/files/d696cbe9..8f6bbc27 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21151&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21151&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 1 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21151.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21151/head:pull/21151 PR: https://git.openjdk.org/jdk/pull/21151 From abhiscxk at openjdk.org Wed Sep 25 07:42:03 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Wed, 25 Sep 2024 07:42:03 GMT Subject: RFR: 8340605: Open source several AWT PopupMenu tests [v2] In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 07:26:12 GMT, Tejesh R wrote: >> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: >> >> remove blank line > > test/jdk/java/awt/PopupMenu/PopupLeadingSeparatorTest.java line 48: > >> 46: Press mouse button on the frame. Popup menu without leading >> 47: separator should appear. >> 48: If a PopupMenu behaves same, press Pass, else press Fail. > > Suggestion: > > If a PopupMenu behaves same press Pass, else press Fail. seems correct to me. > test/jdk/java/awt/PopupMenu/PopupOnButton.java line 48: > >> 46: Right-click on the button. >> 47: Popup Menu should appear and behave fine. >> 48: If a PopupMenu appears, press Pass, else press Fail. > > Suggestion: > > If a PopupMenu appears press Pass, else press Fail. same here. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21151#discussion_r1774702878 PR Review Comment: https://git.openjdk.org/jdk/pull/21151#discussion_r1774703670 From aivanov at openjdk.org Wed Sep 25 09:36:34 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 25 Sep 2024 09:36:34 GMT Subject: RFR: 8340466: Add description for PassFailJFrame constructors [v2] In-Reply-To: References: Message-ID: On Tue, 24 Sep 2024 23:36:17 GMT, Harshitha Onkar wrote: > > Shall we deprecate the constructors in favor of Builder? > > > > The builder provides a more streamlined experience, therefore new tests should use it instead of constructors. We may update the tests which use the constructors, after which the constructors can be removed. > > There are some cases where the builder approach may not work as expected especially modal dialog tests and in such instances the older constructor methods are used. I can't see how it's possible? Do you have an example? The builder provides the same features as constructors do. The only difference is that builder automatically shows all the registered windows. Just like with the `PassFailJFrame` constructors, you can do other stuff before you use builder to create an instance of `PassFailJFrame`; just like with the constructors, you can do other stuff after creating the instance and before calling `awaitAndCheck`. You can use `addTestWindow` and `positionTestWindow` during the test execution if needed. You also can employ (window) events to start or to synchronise other parts of running the test, `LotsOfMenuItemsTest.java` is a great example of such an approach. https://github.com/openjdk/jdk/blob/9806d2139cb5994effdee3f7bc6b23eb81858ed3/test/jdk/java/awt/MenuItem/LotsOfMenuItemsTest.java#L74-L85 I agree there could be shortcomings in the `PassFailJFrame` design where you have to write more code for an uncommon scenario. However, if the most common scenario lets you write less code, it is still a win. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21145#issuecomment-2373565416 From tr at openjdk.org Wed Sep 25 09:49:03 2024 From: tr at openjdk.org (Tejesh R) Date: Wed, 25 Sep 2024 09:49:03 GMT Subject: RFR: 8339836: Open source several AWT Mouse tests - Batch 1 [v3] In-Reply-To: References: Message-ID: > Open source these AWT Mouse tests: > > java/awt/Mouse/MouseEnterExitTest.java > java/awt/Mouse/MouseEnterExitTest2.java > java/awt/Mouse/MousePressedTest.java > java/awt/Mouse/MouseEnterExitTest4.java > java/awt/Mouse/MouseEnterExitTest3.java Tejesh R has updated the pull request incrementally with one additional commit since the last revision: Updated review comments ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21124/files - new: https://git.openjdk.org/jdk/pull/21124/files/440905cb..ccaf669d Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21124&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21124&range=01-02 Stats: 24 lines in 2 files changed: 5 ins; 5 del; 14 mod Patch: https://git.openjdk.org/jdk/pull/21124.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21124/head:pull/21124 PR: https://git.openjdk.org/jdk/pull/21124 From tr at openjdk.org Wed Sep 25 10:05:22 2024 From: tr at openjdk.org (Tejesh R) Date: Wed, 25 Sep 2024 10:05:22 GMT Subject: RFR: 8339836: Open source several AWT Mouse tests - Batch 1 [v4] In-Reply-To: References: Message-ID: > Open source these AWT Mouse tests: > > java/awt/Mouse/MouseEnterExitTest.java > java/awt/Mouse/MouseEnterExitTest2.java > java/awt/Mouse/MousePressedTest.java > java/awt/Mouse/MouseEnterExitTest4.java > java/awt/Mouse/MouseEnterExitTest3.java Tejesh R has updated the pull request incrementally with one additional commit since the last revision: Converted MouseEnterExitTest4 to automated ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21124/files - new: https://git.openjdk.org/jdk/pull/21124/files/ccaf669d..19a32d5c Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21124&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21124&range=02-03 Stats: 51 lines in 1 file changed: 20 ins; 10 del; 21 mod Patch: https://git.openjdk.org/jdk/pull/21124.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21124/head:pull/21124 PR: https://git.openjdk.org/jdk/pull/21124 From aivanov at openjdk.org Wed Sep 25 10:39:09 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 25 Sep 2024 10:39:09 GMT Subject: RFR: 8340466: Add description for PassFailJFrame constructors [v3] In-Reply-To: References: Message-ID: > I added description to all the constructors available in `PassFailJFrame`. > > I generated the javadoc for it: [`PassFailJFrame` constructor details](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html#constructor-detail) which is easier to read. This hosted javadoc could be used as a reference to its API. > > The constructor with the largest number of parameters contains a short description of how to use the `PassFailJFrame` object. > > Shall we deprecate the constructors in favour of `Builder`? > > The builder provides a more streamlined experience, therefore new tests should use it instead of constructors. We may update the tests which use the constructors, after which the constructors can be removed. Alexey Ivanov has updated the pull request incrementally with two additional commits since the last revision: - Takes screenshots... - disposing of -> disposal ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21145/files - new: https://git.openjdk.org/jdk/pull/21145/files/ff2e7f82..2bac4d48 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21145&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21145&range=01-02 Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/21145.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21145/head:pull/21145 PR: https://git.openjdk.org/jdk/pull/21145 From aivanov at openjdk.org Wed Sep 25 10:39:09 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 25 Sep 2024 10:39:09 GMT Subject: RFR: 8340466: Add description for PassFailJFrame constructors [v2] In-Reply-To: References: Message-ID: On Tue, 24 Sep 2024 17:20:57 GMT, Phil Race wrote: >> Alexey Ivanov has updated the pull request incrementally with one additional commit since the last revision: >> >> Use EDT abbreviation in constructor description >> >> The term EDT (Event Dispatch Thread) is introduced in >> the top-level doc comment. > > test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 351: > >> 349: * If you enable screenshots by setting the {@code screenCapture} >> 350: * parameter to {@code true}, a Screenshot button is added. >> 351: * Clicking the Screenshot button, takes screenshot of > > "screenshots" And the comma is not needed, it separates the subject from its verb. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21145#discussion_r1774990323 From aivanov at openjdk.org Wed Sep 25 10:54:09 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 25 Sep 2024 10:54:09 GMT Subject: RFR: 8340785: Update description of PassFailJFrame and samples [v2] In-Reply-To: <4U0oKfNqwC3u8g7SdPaeohdEGbrlCLG_sSruyRsRMvM=.70a2ab5f-38e6-49be-b01f-f4d213fc7980@github.com> References: <4U0oKfNqwC3u8g7SdPaeohdEGbrlCLG_sSruyRsRMvM=.70a2ab5f-38e6-49be-b01f-f4d213fc7980@github.com> Message-ID: <-_HSa6RcEvu35m9oU59M7tXGI6VD797Oa78Amn_gF7w=.d7d74752-eb53-4086-9329-b178462ac9af@github.com> > I re-worked the entire description of `PassFailJFrame`: > > Add description of what UI elements it provides and how to interact with them. > Add anchors for linking to the sections. > > Use `{@snippet}` instead of `
          {@code}
          ` for sample code. > Use method references instead of lambdas in samples. > Document required jtreg tags to use `PassFailJFrame`. > Rename `SampleOldManualTest` to `ObsoleteManualTest`. > > Provide an overview of `Builder` methods to configure `PassFailJFrame`. > > As in #21145, the generated javadoc [PassFailJFrame.html](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html) could be easier to read and review. > > The current version of the generated docs contains changes from #21145 and this PR. The PRs can be integrated independently. Alexey Ivanov has updated the pull request incrementally with one additional commit since the last revision: Amend: and handles timeout. ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21162/files - new: https://git.openjdk.org/jdk/pull/21162/files/cbb1464a..6ba944d1 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21162&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21162&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21162.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21162/head:pull/21162 PR: https://git.openjdk.org/jdk/pull/21162 From azvegint at openjdk.org Wed Sep 25 10:55:04 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Wed, 25 Sep 2024 10:55:04 GMT Subject: RFR: 8340687: Open source closed frame tests #1 Message-ID: few more tests to open source Testing looks good ------------- Commit messages: - 8340687: Open source closed frame tests #1 Changes: https://git.openjdk.org/jdk/pull/21180/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21180&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340687 Stats: 458 lines in 4 files changed: 458 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21180.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21180/head:pull/21180 PR: https://git.openjdk.org/jdk/pull/21180 From aivanov at openjdk.org Wed Sep 25 11:36:08 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 25 Sep 2024 11:36:08 GMT Subject: RFR: 8340899: Remove wildcard bound in PositionWindows.positionTestWindows Message-ID: Removes the wildcard bound from `PassFailJFrame.PositionWindows.positionTestWindows` so that implementing the interface is simpler as one don't have to remember to declare the `testWindows` parameter as `List` ? just use `List`. It is a backwards compatible change, all the tests which use `List` continue to compile successfully. ------------- Commit messages: - 8340899: Remove wildcard bound in PositionWindows.positionTestWindows Changes: https://git.openjdk.org/jdk/pull/21181/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21181&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340899 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21181.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21181/head:pull/21181 PR: https://git.openjdk.org/jdk/pull/21181 From aivanov at openjdk.org Wed Sep 25 11:41:34 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 25 Sep 2024 11:41:34 GMT Subject: RFR: 8340687: Open source closed frame tests #1 In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 10:48:53 GMT, Alexander Zvegintsev wrote: > few more tests to open source > > Testing looks good GitHub doesn't like `#1` in the subject of the JBS issue ? it links it to the first PR in the JDK project. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21180#issuecomment-2373841065 From mbaesken at openjdk.org Wed Sep 25 11:51:04 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Wed, 25 Sep 2024 11:51:04 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding Message-ID: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> It has been discussed that checking the return value of pthread_create should be done. See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . ------------- Commit messages: - JDK-8339475 Changes: https://git.openjdk.org/jdk/pull/21182/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21182&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339475 Stats: 7 lines in 2 files changed: 6 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21182.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21182/head:pull/21182 PR: https://git.openjdk.org/jdk/pull/21182 From azvegint at openjdk.org Wed Sep 25 11:53:35 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Wed, 25 Sep 2024 11:53:35 GMT Subject: RFR: 8340899: Remove wildcard bound in PositionWindows.positionTestWindows In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 11:31:38 GMT, Alexey Ivanov wrote: > Removes the wildcard bound from `PassFailJFrame.PositionWindows.positionTestWindows` so that implementing the interface is simpler as one don't have to remember to declare the `testWindows` parameter as `List` ? just use `List`. > > It is a backwards compatible change, all the tests which use `List` continue to compile successfully. Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21181#pullrequestreview-2328014811 From aivanov at openjdk.org Wed Sep 25 11:53:35 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 25 Sep 2024 11:53:35 GMT Subject: RFR: 8340899: Remove wildcard bound in PositionWindows.positionTestWindows In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 11:31:38 GMT, Alexey Ivanov wrote: > Removes the wildcard bound from `PassFailJFrame.PositionWindows.positionTestWindows` so that implementing the interface is simpler as one don't have to remember to declare the `testWindows` parameter as `List` ? just use `List`. > > It is a backwards compatible change, all the tests which use `List` continue to compile successfully. You can test this change with tests from #21180 `DefaultFrameIconTest.java` and/or `MenuCrash.java`. The tests declare the first parameter to `positionTestWindows` as `List testWindows`. If it were declared as `List testWindows`, the test would not compile with the current version of `PassFailJFrame`. Removing the wildcard lower bound from `PassFailJFrame.PositionWindows.positionTestWindows` makes it possible to use the `List` type in tests. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21181#issuecomment-2373864729 From mbaesken at openjdk.org Wed Sep 25 11:54:34 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Wed, 25 Sep 2024 11:54:34 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding In-Reply-To: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> Message-ID: On Wed, 25 Sep 2024 11:46:00 GMT, Matthias Baesken wrote: > It has been discussed that checking the return value of pthread_create should be done. > See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . I found some strange handling of the return value on macOS. Here we check already the return value of pthread_create ; but then it seems we add the errno twice when calling JLI_ReportErrorMessageSys, once in the calling params and once in JLI_ReportErrorMessageSys itself. Should we better call with the return value of pthread_create in the error case? Or just with a string without additional parameters? The comment about Solaris 8 is also very outdated, don't think we need that any more in jdk24. src/java.base/macosx/native/libjli/java_md_macosx.m 312 if (pthread_create(&main_thr, NULL, &apple_main, &args) != 0) { 313 JLI_ReportErrorMessageSys("Could not create main thread: %s\n", strerror(errno)); src/java.base/unix/native/libjli/java_md_common.c 244 JLI_ReportErrorMessageSys(const char* fmt, ...) { 245 va_list vl; 246 char *emsg; 247 248 /* 249 * TODO: its safer to use strerror_r but is not available on 250 * Solaris 8. Until then.... 251 */ 252 emsg = strerror(errno); 253 if (emsg != NULL) { 254 fprintf(stderr, "%s\n", emsg); 255 } ------------- PR Comment: https://git.openjdk.org/jdk/pull/21182#issuecomment-2373866698 From azvegint at openjdk.org Wed Sep 25 11:55:36 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Wed, 25 Sep 2024 11:55:36 GMT Subject: RFR: 8340687: Open source closed frame tests #1 In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 11:39:08 GMT, Alexey Ivanov wrote: > GitHub doesn't like `#1` in the subject of the JBS issue ? it links it to the first PR in the JDK project. I know, but it's just visual, the PR can be integrated without any issue ------------- PR Comment: https://git.openjdk.org/jdk/pull/21180#issuecomment-2373869146 From aivanov at openjdk.org Wed Sep 25 12:06:35 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 25 Sep 2024 12:06:35 GMT Subject: RFR: 8340687: Open source closed frame tests #1 In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 10:48:53 GMT, Alexander Zvegintsev wrote: > few more tests to open source > > Testing looks good Marked as reviewed by aivanov (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21180#pullrequestreview-2328048717 From aivanov at openjdk.org Wed Sep 25 12:06:36 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Wed, 25 Sep 2024 12:06:36 GMT Subject: RFR: 8340687: Open source closed frame tests #1 In-Reply-To: References: Message-ID: <_qJ66WTe1Xu7gjGOpMQQC3mIEVd4mS5LG7ejhDNeLfQ=.36e41c6a-6e8c-4d04-93f3-16c3961dba17@github.com> On Wed, 25 Sep 2024 11:53:23 GMT, Alexander Zvegintsev wrote: > > GitHub doesn't like `#1` in the subject of the JBS issue ? it links it to the first PR in the JDK project. > > I know, but it's just visual, the PR can be integrated without any issue But it looks frightening and confusing, especially with the red marker. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21180#issuecomment-2373889667 From mbaesken at openjdk.org Wed Sep 25 12:23:04 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Wed, 25 Sep 2024 12:23:04 GMT Subject: RFR: 8340801: Disable ubsan checks in some awt/2d coding Message-ID: There is some old awt/2d coding where warnings occur when running with ubsan enabled binaries. However at most of these locations the coding should work (at least on our supported platform set) so the warnings can be disabled at least for now. The change adds a macro ATTRIBUTE_NO_UBSAN similar to what we already use in Hotspot coding. ------------- Commit messages: - JDK-8340801 Changes: https://git.openjdk.org/jdk/pull/21184/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21184&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340801 Stats: 14 lines in 3 files changed: 14 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21184.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21184/head:pull/21184 PR: https://git.openjdk.org/jdk/pull/21184 From kizune at openjdk.org Wed Sep 25 16:50:44 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Wed, 25 Sep 2024 16:50:44 GMT Subject: Integrated: 8340228: Open source couple more miscellaneous AWT tests In-Reply-To: References: Message-ID: On Thu, 19 Sep 2024 22:31:24 GMT, Alexander Zuev wrote: > Cleaning up and opensourcing three more tests. This pull request has now been integrated. Changeset: f7bc9ba5 Author: Alexander Zuev URL: https://git.openjdk.org/jdk/commit/f7bc9ba552cf913eef2131b964c48f1b4b55131c Stats: 321 lines in 3 files changed: 321 ins; 0 del; 0 mod 8340228: Open source couple more miscellaneous AWT tests Reviewed-by: prr ------------- PR: https://git.openjdk.org/jdk/pull/21097 From prr at openjdk.org Wed Sep 25 17:19:35 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 25 Sep 2024 17:19:35 GMT Subject: RFR: 8339341: SurfaceManager cacheMap retains strong references [v4] In-Reply-To: References: <1ecWvJLiG54e0saEz_Jjz46gzxXnqsNDagdPQ3y_BN4=.27116e44-886b-405f-9d87-ec5e82e2fd20@github.com> Message-ID: On Thu, 19 Sep 2024 11:54:56 GMT, Nikita Gubarkov wrote: >> I moved SurfaceDataProxy cache into a separate class. >> Now caching level is determined by placement of the SurfaceManager.ProxyCache object instead of a "proxy key". This cache "owns" proxies and therefore strong refs via them do not prevent the cache and GraphicsConfig from being detected as weakly reachable. > > Nikita Gubarkov has updated the pull request incrementally with one additional commit since the last revision: > > Revert wildcard import in X11GraphicsDevice I ran the latest version of the PR through our automated test system and all looks good, although obviously that isn't detaching and reattaching monitors ... so I need to spend some time understanding the fix. Also this absolutely needs at least two reviewers. @jayathirthrao and @azvegint please review as well. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20825#issuecomment-2374694339 From avu at openjdk.org Wed Sep 25 18:34:39 2024 From: avu at openjdk.org (Alexey Ushakov) Date: Wed, 25 Sep 2024 18:34:39 GMT Subject: RFR: 8339341: SurfaceManager cacheMap retains strong references [v4] In-Reply-To: References: <1ecWvJLiG54e0saEz_Jjz46gzxXnqsNDagdPQ3y_BN4=.27116e44-886b-405f-9d87-ec5e82e2fd20@github.com> Message-ID: On Thu, 19 Sep 2024 11:54:56 GMT, Nikita Gubarkov wrote: >> I moved SurfaceDataProxy cache into a separate class. >> Now caching level is determined by placement of the SurfaceManager.ProxyCache object instead of a "proxy key". This cache "owns" proxies and therefore strong refs via them do not prevent the cache and GraphicsConfig from being detected as weakly reachable. > > Nikita Gubarkov has updated the pull request incrementally with one additional commit since the last revision: > > Revert wildcard import in X11GraphicsDevice I've reviewed the fix offline, and some of my suggestions were taken into account. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20825#issuecomment-2374872413 From prr at openjdk.org Wed Sep 25 20:35:00 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 25 Sep 2024 20:35:00 GMT Subject: RFR: 8340560: Open Source several AWT/2D font and rendering tests Message-ID: Open sourcing some rendering tests. ------------- Commit messages: - 8340560 Changes: https://git.openjdk.org/jdk/pull/21192/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21192&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340560 Stats: 578 lines in 4 files changed: 578 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21192.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21192/head:pull/21192 PR: https://git.openjdk.org/jdk/pull/21192 From prr at openjdk.org Wed Sep 25 20:57:38 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 25 Sep 2024 20:57:38 GMT Subject: RFR: 8340466: Add description for PassFailJFrame constructors [v3] In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 10:39:09 GMT, Alexey Ivanov wrote: >> I added description to all the constructors available in `PassFailJFrame`. >> >> I generated the javadoc for it: [`PassFailJFrame` constructor details](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html#constructor-detail) which is easier to read. This hosted javadoc could be used as a reference to its API. >> >> The constructor with the largest number of parameters contains a short description of how to use the `PassFailJFrame` object. >> >> Shall we deprecate the constructors in favour of `Builder`? >> >> The builder provides a more streamlined experience, therefore new tests should use it instead of constructors. We may update the tests which use the constructors, after which the constructors can be removed. > > Alexey Ivanov has updated the pull request incrementally with two additional commits since the last revision: > > - Takes screenshots... > - disposing of -> disposal Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21145#pullrequestreview-2329520645 From prr at openjdk.org Wed Sep 25 20:58:46 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 25 Sep 2024 20:58:46 GMT Subject: RFR: 8340899: Remove wildcard bound in PositionWindows.positionTestWindows In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 11:31:38 GMT, Alexey Ivanov wrote: > Removes the wildcard bound from `PassFailJFrame.PositionWindows.positionTestWindows` so that implementing the interface is simpler as one don't have to remember to declare the `testWindows` parameter as `List` ? just use `List`. > > It is a backwards compatible change, all the tests which use `List` continue to compile successfully. Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21181#pullrequestreview-2329522271 From prr at openjdk.org Wed Sep 25 20:58:38 2024 From: prr at openjdk.org (Phil Race) Date: Wed, 25 Sep 2024 20:58:38 GMT Subject: RFR: 8340785: Update description of PassFailJFrame and samples [v2] In-Reply-To: <-_HSa6RcEvu35m9oU59M7tXGI6VD797Oa78Amn_gF7w=.d7d74752-eb53-4086-9329-b178462ac9af@github.com> References: <4U0oKfNqwC3u8g7SdPaeohdEGbrlCLG_sSruyRsRMvM=.70a2ab5f-38e6-49be-b01f-f4d213fc7980@github.com> <-_HSa6RcEvu35m9oU59M7tXGI6VD797Oa78Amn_gF7w=.d7d74752-eb53-4086-9329-b178462ac9af@github.com> Message-ID: On Wed, 25 Sep 2024 10:54:09 GMT, Alexey Ivanov wrote: >> I re-worked the entire description of `PassFailJFrame`: >> >> Add description of what UI elements it provides and how to interact with them. >> Add anchors for linking to the sections. >> >> Use `{@snippet}` instead of `
          {@code}
          ` for sample code. >> Use method references instead of lambdas in samples. >> Document required jtreg tags to use `PassFailJFrame`. >> Rename `SampleOldManualTest` to `ObsoleteManualTest`. >> >> Provide an overview of `Builder` methods to configure `PassFailJFrame`. >> >> As in #21145, the generated javadoc [PassFailJFrame.html](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html) could be easier to read and review. >> >> The current version of the generated docs contains changes from #21145 and this PR. The PRs can be integrated independently. > > Alexey Ivanov has updated the pull request incrementally with one additional commit since the last revision: > > Amend: and handles timeout. Marked as reviewed by prr (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21162#pullrequestreview-2329521434 From achung at openjdk.org Thu Sep 26 01:17:38 2024 From: achung at openjdk.org (Alisen Chung) Date: Thu, 26 Sep 2024 01:17:38 GMT Subject: RFR: 8339879: Open some dialog swing tests Message-ID: First set of dialog swing tests to open during fall 2024 test sprint ------------- Commit messages: - library path change - moving tests to open Changes: https://git.openjdk.org/jdk/pull/21196/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21196&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8339879 Stats: 572 lines in 4 files changed: 572 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21196.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21196/head:pull/21196 PR: https://git.openjdk.org/jdk/pull/21196 From achung at openjdk.org Thu Sep 26 01:18:49 2024 From: achung at openjdk.org (Alisen Chung) Date: Thu, 26 Sep 2024 01:18:49 GMT Subject: Integrated: 8339271: giflib attribution correction In-Reply-To: <9bUf9UKVavgShir_2Z2Hfjelu4gLJUxoWCel8AntU_M=.2a57b6e4-dafa-45ec-97ba-a70da712b2f9@github.com> References: <9bUf9UKVavgShir_2Z2Hfjelu4gLJUxoWCel8AntU_M=.2a57b6e4-dafa-45ec-97ba-a70da712b2f9@github.com> Message-ID: On Wed, 4 Sep 2024 19:43:19 GMT, Alisen Chung wrote: > Changing format of file paths in giflib copyright file and removing extra text from authors list This pull request has now been integrated. Changeset: 66f16398 Author: Alisen Chung URL: https://git.openjdk.org/jdk/commit/66f1639846645f1d3b4096ef6d62f2b301cf7ed2 Stats: 16 lines in 1 file changed: 6 ins; 10 del; 0 mod 8339271: giflib attribution correction Reviewed-by: dnguyen, prr ------------- PR: https://git.openjdk.org/jdk/pull/20859 From abhiscxk at openjdk.org Thu Sep 26 05:53:17 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 26 Sep 2024 05:53:17 GMT Subject: RFR: 8340354: Open source AWT desktop properties and print related tests Message-ID: AWT Desktop properties and printer related tests are converted from applet to manual and moved to open. ------------- Commit messages: - Applet test converted to manual and open sourced Changes: https://git.openjdk.org/jdk/pull/21197/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21197&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340354 Stats: 1225 lines in 5 files changed: 1225 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21197.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21197/head:pull/21197 PR: https://git.openjdk.org/jdk/pull/21197 From tr at openjdk.org Thu Sep 26 06:56:23 2024 From: tr at openjdk.org (Tejesh R) Date: Thu, 26 Sep 2024 06:56:23 GMT Subject: RFR: 8339982: Open source several AWT Mouse tests - Batch 2 [v5] In-Reply-To: References: Message-ID: > Open source these AWT Mouse and GraphicsEnvironment tests: > > java/awt/MouseClickCount/MouseClickCount.java > java/awt/MouseDragEnterExitTest/MouseDragEnterExitTest.java > java/awt/MouseDragTest/MouseDragTest.java > java/awt/OpenWinDoubleClickTest/OpenWinDoubleClickTest.java > java/awt/GraphicsEnvironment/DefaultScreenDeviceTest.java Tejesh R has updated the pull request incrementally with one additional commit since the last revision: ProblemList updated ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21126/files - new: https://git.openjdk.org/jdk/pull/21126/files/1c8c5efb..6d36b51b Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21126&range=04 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21126&range=03-04 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21126.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21126/head:pull/21126 PR: https://git.openjdk.org/jdk/pull/21126 From tr at openjdk.org Thu Sep 26 06:57:40 2024 From: tr at openjdk.org (Tejesh R) Date: Thu, 26 Sep 2024 06:57:40 GMT Subject: RFR: 8340605: Open source several AWT PopupMenu tests [v2] In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 07:42:03 GMT, Abhishek Kumar wrote: >> Several AWT PopupMEnu related tests are converted from applet to manual and moved to open. > > Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: > > remove blank line LGTM. ------------- Marked as reviewed by tr (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21151#pullrequestreview-2330279311 From clanger at openjdk.org Thu Sep 26 06:57:36 2024 From: clanger at openjdk.org (Christoph Langer) Date: Thu, 26 Sep 2024 06:57:36 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding In-Reply-To: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> Message-ID: On Wed, 25 Sep 2024 11:46:00 GMT, Matthias Baesken wrote: > It has been discussed that checking the return value of pthread_create should be done. > See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . Looks good overall, just one nit. I guess it's ok to print a warning to stderr in this case. src/java.desktop/macosx/native/libsplashscreen/splashscreen_sys.m line 278: > 276: int rslt = pthread_attr_init(&attr); > 277: if (rslt != 0) return; > 278: rc = pthread_create(&thr, &attr, SplashScreenThread, (void *) splash); For the sake of symmetry, could you rename rc to rslt here? ------------- Changes requested by clanger (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21182#pullrequestreview-2330276303 PR Review Comment: https://git.openjdk.org/jdk/pull/21182#discussion_r1776482707 From tr at openjdk.org Thu Sep 26 07:02:39 2024 From: tr at openjdk.org (Tejesh R) Date: Thu, 26 Sep 2024 07:02:39 GMT Subject: RFR: 8339879: Open some dialog swing tests In-Reply-To: References: Message-ID: On Thu, 26 Sep 2024 01:11:03 GMT, Alisen Chung wrote: > First set of dialog swing tests to open during fall 2024 test sprint test/jdk/java/awt/Dialog/DialogInitialResizability.java line 35: > 33: * @summary Checks that with resizable set to false before show() > 34: * dialog can not be resized. > 35: * @library jdk/java/awt/regtesthelpers Suggestion: * @library /java/awt/regtesthelpers Other places too. test/jdk/java/awt/Dialog/DialogInitialResizability.java line 42: > 40: public class DialogInitialResizability { > 41: static String instructions = """ > 42: Steps to try to reproduce the problem: Suggestion: Steps to try to reproduce the problem: Can remove this line. test/jdk/java/awt/Dialog/ShownModalDialogSerializationTest.java line 66: > 64: static void deleteTestUI() { > 65: if (dialog != null) { > 66: dialog.setVisible(false); Can be removed. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21196#discussion_r1776483877 PR Review Comment: https://git.openjdk.org/jdk/pull/21196#discussion_r1776487151 PR Review Comment: https://git.openjdk.org/jdk/pull/21196#discussion_r1776489614 From mbaesken at openjdk.org Thu Sep 26 07:10:10 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Thu, 26 Sep 2024 07:10:10 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding [v2] In-Reply-To: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> Message-ID: > It has been discussed that checking the return value of pthread_create should be done. > See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: remove rc ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21182/files - new: https://git.openjdk.org/jdk/pull/21182/files/c1d981c1..c04a074b Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21182&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21182&range=00-01 Stats: 4 lines in 1 file changed: 0 ins; 1 del; 3 mod Patch: https://git.openjdk.org/jdk/pull/21182.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21182/head:pull/21182 PR: https://git.openjdk.org/jdk/pull/21182 From clanger at openjdk.org Thu Sep 26 07:10:10 2024 From: clanger at openjdk.org (Christoph Langer) Date: Thu, 26 Sep 2024 07:10:10 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding In-Reply-To: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> Message-ID: On Wed, 25 Sep 2024 11:46:00 GMT, Matthias Baesken wrote: > It has been discussed that checking the return value of pthread_create should be done. > See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . > JLI_ReportErrorMessageSys > I found some strange handling of the return value on macOS. Here we check already the return value of pthread_create ; but then it seems we add the errno twice when calling JLI_ReportErrorMessageSys, once in the calling params and once in JLI_ReportErrorMessageSys itself. Should we better call with the return value of pthread_create in the error case? Or just with a string without additional parameters? The comment about Solaris 8 is also very outdated, don't think we need that any more in jdk24. > > ``` > src/java.base/macosx/native/libjli/java_md_macosx.m > > 312 if (pthread_create(&main_thr, NULL, &apple_main, &args) != 0) { > 313 JLI_ReportErrorMessageSys("Could not create main thread: %s\n", strerror(errno)); > > src/java.base/unix/native/libjli/java_md_common.c > > 244 JLI_ReportErrorMessageSys(const char* fmt, ...) { > 245 va_list vl; > 246 char *emsg; > 247 > 248 /* > 249 * TODO: its safer to use strerror_r but is not available on > 250 * Solaris 8. Until then.... > 251 */ > 252 emsg = strerror(errno); > 253 if (emsg != NULL) { > 254 fprintf(stderr, "%s\n", emsg); > 255 } > ``` Yes, I think the call to java_md_macosx.m seems redundant. And I would remove the comment in java_md_common.c. strerror is used at various places in JDK coding and there's actually only one place that uses strerror_r, in jni_util_md.c ------------- PR Comment: https://git.openjdk.org/jdk/pull/21182#issuecomment-2376100891 From mbaesken at openjdk.org Thu Sep 26 07:10:10 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Thu, 26 Sep 2024 07:10:10 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding In-Reply-To: References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> Message-ID: On Thu, 26 Sep 2024 07:04:52 GMT, Christoph Langer wrote: >Yes, I think the call to java_md_macosx.m seems redundant. And I would remove the comment in java_md_common.c. strerror is >used at various places in JDK coding and there's actually only one place that uses strerror_r, in jni_util_md.c Thanks for the comment; should I change it in this PR or separately ? ------------- PR Comment: https://git.openjdk.org/jdk/pull/21182#issuecomment-2376105104 From mbaesken at openjdk.org Thu Sep 26 07:10:11 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Thu, 26 Sep 2024 07:10:11 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding [v2] In-Reply-To: References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> Message-ID: On Thu, 26 Sep 2024 06:53:41 GMT, Christoph Langer wrote: >> Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: >> >> remove rc > > src/java.desktop/macosx/native/libsplashscreen/splashscreen_sys.m line 278: > >> 276: int rslt = pthread_attr_init(&attr); >> 277: if (rslt != 0) return; >> 278: rc = pthread_create(&thr, &attr, SplashScreenThread, (void *) splash); > > For the sake of symmetry, could you rename rc to rslt here? Sure, I changed it . ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21182#discussion_r1776497907 From abhiscxk at openjdk.org Thu Sep 26 08:12:14 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Thu, 26 Sep 2024 08:12:14 GMT Subject: RFR: 8340437: Open source few more AWT Frame related tests Message-ID: <9QKIqkcpfibamjrGdJsGBFMH7q1YcT23mdhS-opzfRQ=.2edd9fc4-648b-4ef4-8858-19433b35aed0@github.com> AWT Frame related tests are converted from applet to manual/automated and moved to open. ------------- Commit messages: - Frame related test open sourced Changes: https://git.openjdk.org/jdk/pull/21199/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21199&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340437 Stats: 770 lines in 4 files changed: 770 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21199.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21199/head:pull/21199 PR: https://git.openjdk.org/jdk/pull/21199 From clanger at openjdk.org Thu Sep 26 09:38:40 2024 From: clanger at openjdk.org (Christoph Langer) Date: Thu, 26 Sep 2024 09:38:40 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding In-Reply-To: References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> Message-ID: On Thu, 26 Sep 2024 07:07:27 GMT, Matthias Baesken wrote: > > Yes, I think the call to java_md_macosx.m seems redundant. And I would remove the comment in java_md_common.c. strerror is >used at various places in JDK coding and there's actually only one place that uses strerror_r, in jni_util_md.c > > Thanks for the comment; should I change it in this PR or separately ? I guess it's good to do this cleanup in this one as it touches similar coding... ------------- PR Comment: https://git.openjdk.org/jdk/pull/21182#issuecomment-2376447188 From psadhukhan at openjdk.org Thu Sep 26 09:49:05 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Thu, 26 Sep 2024 09:49:05 GMT Subject: RFR: 8340621: Open source several AWT List tests Message-ID: Opensource few AWT List tests ------------- Commit messages: - 8340621: Open source several AWT List tests Changes: https://git.openjdk.org/jdk/pull/21202/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21202&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340621 Stats: 500 lines in 5 files changed: 500 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21202.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21202/head:pull/21202 PR: https://git.openjdk.org/jdk/pull/21202 From jwaters at openjdk.org Thu Sep 26 10:43:34 2024 From: jwaters at openjdk.org (Julian Waters) Date: Thu, 26 Sep 2024 10:43:34 GMT Subject: RFR: 8340801: Disable ubsan checks in some awt/2d coding In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 12:17:59 GMT, Matthias Baesken wrote: > There is some old awt/2d coding where warnings occur when running with ubsan enabled binaries. > However at most of these locations the coding should work (at least on our supported platform set) so the warnings can be disabled at least for now. > > The change adds a macro ATTRIBUTE_NO_UBSAN similar to what we already use in Hotspot coding. jni_md.h seems like a pretty big sledgehammer for something that seems to only be in one file, for just java.desktop. Is this macro planned to be used outside of java.desktop? ------------- PR Comment: https://git.openjdk.org/jdk/pull/21184#issuecomment-2376587585 From jwaters at openjdk.org Thu Sep 26 10:49:34 2024 From: jwaters at openjdk.org (Julian Waters) Date: Thu, 26 Sep 2024 10:49:34 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding In-Reply-To: References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> Message-ID: <6Au0dLxlFxRuAZfeUNLEJKm22q5PaykN3qXo2iiaRyI=.1254832b-c9c3-476e-a5eb-30e338240624@github.com> On Thu, 26 Sep 2024 07:04:52 GMT, Christoph Langer wrote: > I found some strange handling of the return value on macOS. Here we check already the return value of pthread_create ; but then it seems we add the errno twice when calling JLI_ReportErrorMessageSys, once in the calling params and once in JLI_ReportErrorMessageSys itself. Should we better call with the return value of pthread_create in the error case? Or just with a string without additional parameters? The comment about Solaris 8 is also very outdated, don't think we need that any more in jdk24. > > ``` > src/java.base/macosx/native/libjli/java_md_macosx.m > > 312 if (pthread_create(&main_thr, NULL, &apple_main, &args) != 0) { > 313 JLI_ReportErrorMessageSys("Could not create main thread: %s\n", strerror(errno)); > > src/java.base/unix/native/libjli/java_md_common.c > > 244 JLI_ReportErrorMessageSys(const char* fmt, ...) { > 245 va_list vl; > 246 char *emsg; > 247 > 248 /* > 249 * TODO: its safer to use strerror_r but is not available on > 250 * Solaris 8. Until then.... > 251 */ > 252 emsg = strerror(errno); > 253 if (emsg != NULL) { > 254 fprintf(stderr, "%s\n", emsg); > 255 } > ``` Ah, that problem with JLI_ReportErrorMessageSys. I recall that me and Thomas reported a possibly related issue for it ages ago https://bugs.openjdk.org/browse/JDK-8292016 ------------- PR Comment: https://git.openjdk.org/jdk/pull/21182#issuecomment-2376597702 From aivanov at openjdk.org Thu Sep 26 11:37:43 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 26 Sep 2024 11:37:43 GMT Subject: Integrated: 8340899: Remove wildcard bound in PositionWindows.positionTestWindows In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 11:31:38 GMT, Alexey Ivanov wrote: > Removes the wildcard bound from `PassFailJFrame.PositionWindows.positionTestWindows` so that implementing the interface is simpler as one don't have to remember to declare the `testWindows` parameter as `List` ? just use `List`. > > It is a backwards compatible change, all the tests which use `List` continue to compile successfully. This pull request has now been integrated. Changeset: e2626db2 Author: Alexey Ivanov URL: https://git.openjdk.org/jdk/commit/e2626db2f00d0cc9f3ff8ea374a1ccc89373e398 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod 8340899: Remove wildcard bound in PositionWindows.positionTestWindows Reviewed-by: azvegint, prr ------------- PR: https://git.openjdk.org/jdk/pull/21181 From aivanov at openjdk.org Thu Sep 26 11:39:40 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 26 Sep 2024 11:39:40 GMT Subject: Integrated: 8340466: Add description for PassFailJFrame constructors In-Reply-To: References: Message-ID: On Mon, 23 Sep 2024 20:40:47 GMT, Alexey Ivanov wrote: > I added description to all the constructors available in `PassFailJFrame`. > > I generated the javadoc for it: [`PassFailJFrame` constructor details](https://cr.openjdk.org/~aivanov/PassFailJFrame/api/PassFailJFrame.html#constructor-detail) which is easier to read. This hosted javadoc could be used as a reference to its API. > > The constructor with the largest number of parameters contains a short description of how to use the `PassFailJFrame` object. > > Shall we deprecate the constructors in favour of `Builder`? > > The builder provides a more streamlined experience, therefore new tests should use it instead of constructors. We may update the tests which use the constructors, after which the constructors can be removed. This pull request has now been integrated. Changeset: 3762ec39 Author: Alexey Ivanov URL: https://git.openjdk.org/jdk/commit/3762ec3978bfe9910929ab22aaf238e9f4c84630 Stats: 153 lines in 1 file changed: 96 ins; 14 del; 43 mod 8340466: Add description for PassFailJFrame constructors Reviewed-by: prr, honkar ------------- PR: https://git.openjdk.org/jdk/pull/21145 From psadhukhan at openjdk.org Thu Sep 26 11:47:17 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Thu, 26 Sep 2024 11:47:17 GMT Subject: RFR: 8340639: Open source few more AWT List tests Message-ID: Opensource few more AWT List tests ------------- Commit messages: - 8340639: Open source few more AWT List tests - 8340639: Open source few more AWT List tests Changes: https://git.openjdk.org/jdk/pull/21205/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21205&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340639 Stats: 388 lines in 4 files changed: 388 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21205.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21205/head:pull/21205 PR: https://git.openjdk.org/jdk/pull/21205 From mbaesken at openjdk.org Thu Sep 26 11:53:37 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Thu, 26 Sep 2024 11:53:37 GMT Subject: RFR: 8340801: Disable ubsan checks in some awt/2d coding In-Reply-To: References: Message-ID: On Thu, 26 Sep 2024 10:41:25 GMT, Julian Waters wrote: > jni_md.h seems like a pretty big sledgehammer for something that seems to only be in one file, for just java.desktop. Is this macro planned to be used outside of java.desktop? Yes I have a couple (currently 2) more I would like to exclude as well . The exclusions should work (similar to HS) for the whole JDK C codebase. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21184#issuecomment-2376722785 From mbaesken at openjdk.org Thu Sep 26 12:04:37 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Thu, 26 Sep 2024 12:04:37 GMT Subject: RFR: 8340801: Disable ubsan checks in some awt/2d coding In-Reply-To: References: Message-ID: On Thu, 26 Sep 2024 11:51:19 GMT, Matthias Baesken wrote: > The exclusions should work (similar to HS) for the whole JDK C codebase. Maybe we can offer a separate header ub.hpp next to jni_md.h that contains the macro/attribute stuff. Similar to sanitizers/ub.hpp in HS. This header is then included in the few files were the macro/attributes are needed. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21184#issuecomment-2376743367 From azvegint at openjdk.org Thu Sep 26 12:36:44 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Thu, 26 Sep 2024 12:36:44 GMT Subject: Integrated: 8340687: Open source closed frame tests #1 In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 10:48:53 GMT, Alexander Zvegintsev wrote: > few more tests to open source > > Testing looks good This pull request has now been integrated. Changeset: 47fcf5a3 Author: Alexander Zvegintsev URL: https://git.openjdk.org/jdk/commit/47fcf5a3b0796ffeb6407be961ceb552ca2a40f8 Stats: 458 lines in 4 files changed: 458 ins; 0 del; 0 mod 8340687: Open source closed frame tests #1 Reviewed-by: aivanov ------------- PR: https://git.openjdk.org/jdk/pull/21180 From aivanov at openjdk.org Thu Sep 26 13:05:11 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 26 Sep 2024 13:05:11 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame Message-ID: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Provides a set of default layouts for manual test using multiple test UI windows. The initial implementation in the demo in #15721 was too complicated. After looking at the simplified version used in #21180, I re-worked the layouts into separate methods. The layout methods are in `WindowLayouts` class next to `PassFailJFrame`. It is not necessary to mention it explicitly in the `@build` jtreg tag. The builder now provides new methods: - `positionTestUIRightRow` positions the test UI windows in a row to the right of the instruction frame. The top of the windows is aligned to that of the instruction frame. - `positionTestUIRightColumn` positions the test UI windows in a column to the right of the instruction frame. The top of the first window is aligned to that of the instruction frame. - `positionTestUIRightColumnCentered` positions the test UI windows in a column to the right of the instruction frame centering the stack of the windows. - `positionTestUIBottomRow` positions the test UI windows in a row to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. - `positionTestUIBottomRowCentered` positions the test UI windows in a row to the bottom of the instruction frame centering the row of the windows. - `positionTestUIBottomColumn` positions the test UI windows in a column to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. If required, the test developer can provide a custom implementation. ------------- Commit messages: - 8317116: Provide layouts for multiple test UI in PassFailJFrame Changes: https://git.openjdk.org/jdk/pull/21207/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21207&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8317116 Stats: 320 lines in 2 files changed: 316 ins; 0 del; 4 mod Patch: https://git.openjdk.org/jdk/pull/21207.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21207/head:pull/21207 PR: https://git.openjdk.org/jdk/pull/21207 From aturbanov at openjdk.org Thu Sep 26 13:09:39 2024 From: aturbanov at openjdk.org (Andrey Turbanov) Date: Thu, 26 Sep 2024 13:09:39 GMT Subject: RFR: 8340621: Open source several AWT List tests In-Reply-To: References: Message-ID: <-z1wDm3pTKdx_Z6ZIwLM9_bZY5EKTXRsPn8AKaz_WdQ=.c86c6b6e-cd03-43bd-9ace-ed8ac48bfe0a@github.com> On Thu, 26 Sep 2024 09:43:25 GMT, Prasanta Sadhukhan wrote: > Opensource few AWT List tests test/jdk/java/awt/List/DisabledListIsGreyTest.java line 63: > 61: List list1 = new List(3); > 62: List list2 = new List(3); > 63: for(int i = 0; i < 5; i++) { Suggestion: for (int i = 0; i < 5; i++) { test/jdk/java/awt/List/ListFrameResizeTest.java line 67: > 65: private static Frame createTestUI() { > 66: wintest client = new wintest("ListFrameResizeTest Frame"); > 67: client.resize(500,300); Suggestion: client.resize(500, 300); ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21202#discussion_r1777043004 PR Review Comment: https://git.openjdk.org/jdk/pull/21202#discussion_r1777041094 From aturbanov at openjdk.org Thu Sep 26 13:13:44 2024 From: aturbanov at openjdk.org (Andrey Turbanov) Date: Thu, 26 Sep 2024 13:13:44 GMT Subject: RFR: 8340354: Open source AWT desktop properties and print related tests In-Reply-To: References: Message-ID: On Thu, 26 Sep 2024 05:47:33 GMT, Abhishek Kumar wrote: > AWT Desktop properties and printer related tests are converted from applet to manual and moved to open. test/jdk/java/awt/PrintJob/PrintCompatibilityTest.java line 195: > 193: menu3.setEnabled(false); > 194: menu4.setEnabled(false); > 195: MenuItem itemPrinter = new MenuItem("Print to Printer..."); Suggestion: MenuItem itemPrinter = new MenuItem("Print to Printer..."); test/jdk/java/awt/PrintJob/PrintCompatibilityTest.java line 196: > 194: menu4.setEnabled(false); > 195: MenuItem itemPrinter = new MenuItem("Print to Printer..."); > 196: MenuItem itemScreen = new MenuItem("Print to Screen..."); Suggestion: MenuItem itemScreen = new MenuItem("Print to Screen..."); test/jdk/java/awt/PrintJob/PrintCompatibilityTest.java line 214: > 212: { > 213: Enumeration propNames = props.propertyNames(); > 214: while(propNames.hasMoreElements()) { Suggestion: while (propNames.hasMoreElements()) { test/jdk/java/awt/PrintJob/PrintCompatibilityTest.java line 229: > 227: PrintJob pj = getToolkit().getPrintJob( > 228: MainFrame.this, "Print test!", props); > 229: if( pj == null ) { Suggestion: if (pj == null) { test/jdk/java/awt/PrintJob/PrintCompatibilityTest.java line 274: > 272: class ActionPrintToScreen implements ActionListener { > 273: public void actionPerformed(ActionEvent ev) { > 274: PrintFrame printFrame = new PrintFrame( MainFrame.this ); Suggestion: PrintFrame printFrame = new PrintFrame( MainFrame.this ); test/jdk/java/awt/PrintJob/PrintCompatibilityTest.java line 312: > 310: String label; > 311: int width = 100; > 312: int height = 30; Suggestion: int width = 100; int height = 30; test/jdk/java/awt/PrintJob/PrintCompatibilityTest.java line 332: > 330: public Dimension getPreferredSize() > 331: { > 332: return new Dimension(width,height); Suggestion: return new Dimension(width, height); test/jdk/java/awt/PrintJob/PrintCompatibilityTest.java line 364: > 362: public Dimension getPreferredSize() > 363: { > 364: return new Dimension(width,height); Suggestion: return new Dimension(width, height); test/jdk/java/awt/PrintJob/PrintCompatibilityTest.java line 416: > 414: // component at the top of the z-order, that should print > 415: // _below_ the native guys to match the screen... > 416: add(new LWButton("LWButton"),0); Suggestion: add(new LWButton("LWButton"), 0); test/jdk/java/awt/PrintJob/PrintComponentTest.java line 227: > 225: new MenuItem("Print to Printer in Background"); > 226: itemBackground.setActionCommand("none"); > 227: MenuItem itemScreen = new MenuItem("Print to Screen..."); Suggestion: MenuItem itemScreen = new MenuItem("Print to Screen..."); test/jdk/java/awt/PrintJob/PrintComponentTest.java line 270: > 268: PrintJob pj = getToolkit().getPrintJob( > 269: MainFrame.this, "Print test!", jobAttributes, pageAttributes); > 270: if( pj == null ) return; Suggestion: if (pj == null) return; test/jdk/java/awt/PrintJob/PrintComponentTest.java line 312: > 310: class ActionPrintToScreen implements ActionListener { > 311: public void actionPerformed(ActionEvent ev) { > 312: PrintFrame printFrame = new PrintFrame( MainFrame.this ); Suggestion: PrintFrame printFrame = new PrintFrame( MainFrame.this ); test/jdk/java/awt/PrintJob/PrintComponentTest.java line 350: > 348: String label; > 349: int width = 100; > 350: int height = 30; Suggestion: int width = 100; int height = 30; test/jdk/java/awt/PrintJob/PrintComponentTest.java line 370: > 368: public Dimension getPreferredSize() > 369: { > 370: return new Dimension(width,height); Suggestion: return new Dimension(width, height); test/jdk/java/awt/PrintJob/PrintComponentTest.java line 402: > 400: public Dimension getPreferredSize() > 401: { > 402: return new Dimension(width,height); Suggestion: return new Dimension(width, height); test/jdk/java/awt/PrintJob/PrintComponentTest.java line 454: > 452: // component at the top of the z-order, that should print > 453: // _below_ the native guys to match the screen... > 454: add(new LWButton("LWButton"),0); Suggestion: add(new LWButton("LWButton"), 0); ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777050594 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777050882 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777052492 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777052858 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777053052 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777053426 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777053649 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777053854 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777054089 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777045638 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777046211 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777046623 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777047330 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777048754 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777049214 PR Review Comment: https://git.openjdk.org/jdk/pull/21197#discussion_r1777049932 From aturbanov at openjdk.org Thu Sep 26 13:14:39 2024 From: aturbanov at openjdk.org (Andrey Turbanov) Date: Thu, 26 Sep 2024 13:14:39 GMT Subject: RFR: 8340560: Open Source several AWT/2D font and rendering tests In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 20:29:40 GMT, Phil Race wrote: > Open sourcing some rendering tests. test/jdk/sun/awt/font/TestArabicHebrew.java line 75: > 73: int index = font.canDisplayUpTo(str); > 74: if (index != -1) { > 75: throw new RuntimeException("Cannot display char " + index + " for " + script); Suggestion: throw new RuntimeException("Cannot display char " + index + " for " + script); ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21192#discussion_r1777055226 From psadhukhan at openjdk.org Thu Sep 26 13:43:27 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Thu, 26 Sep 2024 13:43:27 GMT Subject: RFR: 8340621: Open source several AWT List tests [v2] In-Reply-To: References: Message-ID: > Opensource few AWT List tests Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision: spacing ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21202/files - new: https://git.openjdk.org/jdk/pull/21202/files/156e2e7d..5ced7942 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21202&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21202&range=00-01 Stats: 2 lines in 2 files changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/21202.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21202/head:pull/21202 PR: https://git.openjdk.org/jdk/pull/21202 From aivanov at openjdk.org Thu Sep 26 13:57:09 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 26 Sep 2024 13:57:09 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: > Provides a set of default layouts for manual test using multiple test UI windows. > > The initial implementation in the demo in #15721 was too complicated. After looking at the simplified version used in #21180, I re-worked the layouts into separate methods. > > The layout methods are in `WindowLayouts` class next to `PassFailJFrame`. It is not necessary to mention it explicitly in the `@build` jtreg tag. > > The builder now provides new methods: > > - `positionTestUIRightRow` positions the test UI windows in a row to the right of the instruction frame. The top of the windows is aligned to that of the instruction frame. > - `positionTestUIRightColumn` positions the test UI windows in a column to the right of the instruction frame. The top of the first window is aligned to that of the instruction frame. > - `positionTestUIRightColumnCentered` positions the test UI windows in a column to the right of the instruction frame centering the stack of the windows. > - `positionTestUIBottomRow` positions the test UI windows in a row to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. > - `positionTestUIBottomRowCentered` positions the test UI windows in a row to the bottom of the instruction frame centering the row of the windows. > - `positionTestUIBottomColumn` positions the test UI windows in a column to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. > > If required, the test developer can provide a custom implementation. Alexey Ivanov has updated the pull request incrementally with one additional commit since the last revision: Add missing parentheses for vertical positioning ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21207/files - new: https://git.openjdk.org/jdk/pull/21207/files/53d70888..10c9b563 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21207&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21207&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/21207.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21207/head:pull/21207 PR: https://git.openjdk.org/jdk/pull/21207 From jwaters at openjdk.org Thu Sep 26 14:27:34 2024 From: jwaters at openjdk.org (Julian Waters) Date: Thu, 26 Sep 2024 14:27:34 GMT Subject: RFR: 8340801: Disable ubsan checks in some awt/2d coding In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 12:17:59 GMT, Matthias Baesken wrote: > There is some old awt/2d coding where warnings occur when running with ubsan enabled binaries. > However at most of these locations the coding should work (at least on our supported platform set) so the warnings can be disabled at least for now. > > The change adds a macro ATTRIBUTE_NO_UBSAN similar to what we already use in Hotspot coding. Marked as reviewed by jwaters (Committer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21184#pullrequestreview-2331451920 From jwaters at openjdk.org Thu Sep 26 14:27:35 2024 From: jwaters at openjdk.org (Julian Waters) Date: Thu, 26 Sep 2024 14:27:35 GMT Subject: RFR: 8340801: Disable ubsan checks in some awt/2d coding In-Reply-To: References: Message-ID: On Thu, 26 Sep 2024 11:51:19 GMT, Matthias Baesken wrote: > > jni_md.h seems like a pretty big sledgehammer for something that seems to only be in one file, for just java.desktop. Is this macro planned to be used outside of java.desktop? > > Yes I have a couple (currently 2) more I would like to exclude as well . The exclusions should work (similar to HS) for the whole JDK C codebase. Alright, if this is planned to be used across the entire JDK and not just in java.desktop then I guess this should be ok. Indeed, perhaps a ubsan.h header would be appropriate for a macro like this. I'll leave that up to further discussion ------------- PR Comment: https://git.openjdk.org/jdk/pull/21184#issuecomment-2377128778 From mbaesken at openjdk.org Thu Sep 26 14:34:38 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Thu, 26 Sep 2024 14:34:38 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding [v2] In-Reply-To: References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> Message-ID: On Thu, 26 Sep 2024 07:10:10 GMT, Matthias Baesken wrote: >> It has been discussed that checking the return value of pthread_create should be done. >> See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > remove rc Interesting, the errno is not even set on macOS according to the man page, at least for pthread_detach https://developer.apple.com/library/archive/documentation/System/Conceptual/ManPages_iPhoneOS/man3/pthread_detach.3.html "Note that the function does not change the value of errno, as it did for some drafts of the standard. " So better print the return code there in the error case. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21182#issuecomment-2377148133 From mbaesken at openjdk.org Thu Sep 26 14:44:53 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Thu, 26 Sep 2024 14:44:53 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding [v3] In-Reply-To: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> Message-ID: <1hkPgl0OA5lEpF6vEmb9DVg-fNndalfotPEmQegz9-w=.40d1f46e-a7cf-49f9-bd55-10f9b9a033f9@github.com> > It has been discussed that checking the return value of pthread_create should be done. > See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: some macOS cleanup ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21182/files - new: https://git.openjdk.org/jdk/pull/21182/files/c04a074b..8fd42bb2 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21182&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21182&range=01-02 Stats: 14 lines in 2 files changed: 3 ins; 6 del; 5 mod Patch: https://git.openjdk.org/jdk/pull/21182.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21182/head:pull/21182 PR: https://git.openjdk.org/jdk/pull/21182 From mbaesken at openjdk.org Thu Sep 26 14:44:53 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Thu, 26 Sep 2024 14:44:53 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding [v2] In-Reply-To: References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> Message-ID: On Thu, 26 Sep 2024 07:10:10 GMT, Matthias Baesken wrote: >> It has been discussed that checking the return value of pthread_create should be done. >> See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > remove rc I removed the very old Solaris 8 comment. I adjusted the macOS related code mentioned above. For pthread_detach, I switched to JLI_ReportErrorMessage , because the manpage says that errno is not set; so better do not print it in the failure case on macOS. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21182#issuecomment-2377172814 From mbaesken at openjdk.org Thu Sep 26 14:51:35 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Thu, 26 Sep 2024 14:51:35 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding [v3] In-Reply-To: <1hkPgl0OA5lEpF6vEmb9DVg-fNndalfotPEmQegz9-w=.40d1f46e-a7cf-49f9-bd55-10f9b9a033f9@github.com> References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> <1hkPgl0OA5lEpF6vEmb9DVg-fNndalfotPEmQegz9-w=.40d1f46e-a7cf-49f9-bd55-10f9b9a033f9@github.com> Message-ID: On Thu, 26 Sep 2024 14:44:53 GMT, Matthias Baesken wrote: >> It has been discussed that checking the return value of pthread_create should be done. >> See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > some macOS cleanup Maybe "Check return value of pthread_create in jdk coding" does not fit any more for the bug/PR name now ? Any good suggestions? ------------- PR Comment: https://git.openjdk.org/jdk/pull/21182#issuecomment-2377193680 From clanger at openjdk.org Thu Sep 26 16:03:44 2024 From: clanger at openjdk.org (Christoph Langer) Date: Thu, 26 Sep 2024 16:03:44 GMT Subject: RFR: 8339475: Check return value of pthread_create in jdk coding [v3] In-Reply-To: <1hkPgl0OA5lEpF6vEmb9DVg-fNndalfotPEmQegz9-w=.40d1f46e-a7cf-49f9-bd55-10f9b9a033f9@github.com> References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> <1hkPgl0OA5lEpF6vEmb9DVg-fNndalfotPEmQegz9-w=.40d1f46e-a7cf-49f9-bd55-10f9b9a033f9@github.com> Message-ID: On Thu, 26 Sep 2024 14:44:53 GMT, Matthias Baesken wrote: >> It has been discussed that checking the return value of pthread_create should be done. >> See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > some macOS cleanup LGTM. The bug title could be changed into something like "Clean up return code handling for pthread calls in library coding" ------------- Marked as reviewed by clanger (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21182#pullrequestreview-2331751511 From achung at openjdk.org Thu Sep 26 16:04:31 2024 From: achung at openjdk.org (Alisen Chung) Date: Thu, 26 Sep 2024 16:04:31 GMT Subject: RFR: 8339879: Open some dialog swing tests [v2] In-Reply-To: References: Message-ID: <77Oo7T87dLg_JJmRDqZ0rNZ_qQZMEmfECMFRy-8Jz4g=.1e6f6f3d-2fa9-49ca-abf5-a5c5b24ba2ce@github.com> > First set of dialog swing tests to open during fall 2024 test sprint Alisen Chung has updated the pull request incrementally with one additional commit since the last revision: update jtreg ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21196/files - new: https://git.openjdk.org/jdk/pull/21196/files/d3e65e57..c1534adc Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21196&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21196&range=00-01 Stats: 4 lines in 3 files changed: 0 ins; 1 del; 3 mod Patch: https://git.openjdk.org/jdk/pull/21196.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21196/head:pull/21196 PR: https://git.openjdk.org/jdk/pull/21196 From achung at openjdk.org Thu Sep 26 16:04:32 2024 From: achung at openjdk.org (Alisen Chung) Date: Thu, 26 Sep 2024 16:04:32 GMT Subject: RFR: 8339879: Open some dialog swing tests [v2] In-Reply-To: References: Message-ID: On Thu, 26 Sep 2024 06:59:32 GMT, Tejesh R wrote: >> Alisen Chung has updated the pull request incrementally with one additional commit since the last revision: >> >> update jtreg > > test/jdk/java/awt/Dialog/ShownModalDialogSerializationTest.java line 66: > >> 64: static void deleteTestUI() { >> 65: if (dialog != null) { >> 66: dialog.setVisible(false); > > Can be removed. WIll keep this for test stability ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21196#discussion_r1777372586 From kizune at openjdk.org Thu Sep 26 16:31:35 2024 From: kizune at openjdk.org (Alexander Zuev) Date: Thu, 26 Sep 2024 16:31:35 GMT Subject: RFR: 8340437: Open source few more AWT Frame related tests In-Reply-To: <9QKIqkcpfibamjrGdJsGBFMH7q1YcT23mdhS-opzfRQ=.2edd9fc4-648b-4ef4-8858-19433b35aed0@github.com> References: <9QKIqkcpfibamjrGdJsGBFMH7q1YcT23mdhS-opzfRQ=.2edd9fc4-648b-4ef4-8858-19433b35aed0@github.com> Message-ID: On Thu, 26 Sep 2024 08:05:27 GMT, Abhishek Kumar wrote: > AWT Frame related tests are converted from applet to manual/automated and moved to open. Looks good. ------------- Marked as reviewed by kizune (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21199#pullrequestreview-2331824106 From rgupta at openjdk.org Thu Sep 26 16:34:45 2024 From: rgupta at openjdk.org (Ravi Gupta) Date: Thu, 26 Sep 2024 16:34:45 GMT Subject: Integrated: 8333403: Write a test to check various components events are triggered properly In-Reply-To: References: Message-ID: <--L54NElqy6PQGIZ06EgyJQX0kAIGMnqTjme4a6CU50=.de217a96-18ff-4528-8f7f-21e44505a57c@github.com> On Mon, 3 Jun 2024 12:22:53 GMT, Ravi Gupta wrote: > This testcase checks for the following assertions for Component events: > > 1. When components are resized, moved, hidden and shown the respective events are triggered. > 2. When the components are hidden/disabled also,the component events like resized/moved are triggered. > 3. When a hidden component is hidden again, or a visible component is shown again, the events should not be fired. > 4. When a window is minimized/restored then hidden and shown component events should be triggered. > > Testing: > Tested using Mach5(20 times per platform) in macos,linux and windows and got all pass. This pull request has now been integrated. Changeset: a02d895f Author: Ravi Gupta Committer: Alexey Ivanov URL: https://git.openjdk.org/jdk/commit/a02d895f7ad59fe33f8a761dbd7bceb0b8dfefc0 Stats: 357 lines in 1 file changed: 357 ins; 0 del; 0 mod 8333403: Write a test to check various components events are triggered properly Reviewed-by: aivanov ------------- PR: https://git.openjdk.org/jdk/pull/19521 From aivanov at openjdk.org Thu Sep 26 17:16:35 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Thu, 26 Sep 2024 17:16:35 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Thu, 26 Sep 2024 13:57:09 GMT, Alexey Ivanov wrote: >> Provides a set of default layouts for manual test using multiple test UI windows. >> >> The initial implementation in the demo in #15721 was too complicated. After looking at the simplified version used in #21180, I re-worked the layouts into separate methods. >> >> The layout methods are in `WindowLayouts` class next to `PassFailJFrame`. It is not necessary to mention it explicitly in the `@build` jtreg tag. >> >> The builder now provides new methods: >> >> - `positionTestUIRightRow` positions the test UI windows in a row to the right of the instruction frame. The top of the windows is aligned to that of the instruction frame. >> - `positionTestUIRightColumn` positions the test UI windows in a column to the right of the instruction frame. The top of the first window is aligned to that of the instruction frame. >> - `positionTestUIRightColumnCentered` positions the test UI windows in a column to the right of the instruction frame centering the stack of the windows. >> - `positionTestUIBottomRow` positions the test UI windows in a row to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. >> - `positionTestUIBottomRowCentered` positions the test UI windows in a row to the bottom of the instruction frame centering the row of the windows. >> - `positionTestUIBottomColumn` positions the test UI windows in a column to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. >> >> If required, the test developer can provide a custom implementation. > > Alexey Ivanov has updated the pull request incrementally with one additional commit since the last revision: > > Add missing parentheses for vertical positioning A set of demos for each layout is provided in #21210. See [the screenshots](https://github.com/openjdk/jdk/pull/21210#issuecomment-2377200316) there. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21207#issuecomment-2377508683 From honkar at openjdk.org Thu Sep 26 18:09:15 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Thu, 26 Sep 2024 18:09:15 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 [v3] In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 07:19:09 GMT, Prasanta Sadhukhan wrote: >> Harshitha Onkar has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits: >> >> - Merge master >> - problemlist updated >> - eof newline >> - checkbox tests > > test/jdk/ProblemList.txt line 797: > >> 795: java/awt/Checkbox/CheckboxBoxSizeTest.java 8340870 windows-all >> 796: java/awt/Checkbox/CheckboxIndicatorSizeTest.java 8340870 windows-all >> 797: java/awt/Checkbox/CheckboxBoxSizeTest.java 8340870 windows-all > > duplicate addition CheckboxBoxSizeTest Good catch. Updated. > test/jdk/java/awt/Checkbox/CheckboxPreferredSizeTest.java line 58: > >> 56: >> 57: private static Frame createAndShowUI() { >> 58: StrangeCheckbox cbox = new StrangeCheckbox(); > > I guess we can bring in the code in the StrangeCheckbox constructor and remove that class altogether as it's not doing anything particular rather than implicitly creating a Frame.. Updated ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1777537647 PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1777537841 From honkar at openjdk.org Thu Sep 26 18:09:13 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Thu, 26 Sep 2024 18:09:13 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 [v4] In-Reply-To: References: Message-ID: > Following tests are updated in this PR: > > 1. test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java > 2. test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java > 3. test/jdk/java/awt/Checkbox/CheckboxNullLabelTest.java > 4. test/jdk/java/awt/Checkbox/CheckboxPreferredSizeTest.java Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: review fixes, updated problemlist ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21094/files - new: https://git.openjdk.org/jdk/pull/21094/files/a45d86bb..84249711 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21094&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21094&range=02-03 Stats: 29 lines in 4 files changed: 7 ins; 13 del; 9 mod Patch: https://git.openjdk.org/jdk/pull/21094.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21094/head:pull/21094 PR: https://git.openjdk.org/jdk/pull/21094 From honkar at openjdk.org Thu Sep 26 18:12:36 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Thu, 26 Sep 2024 18:12:36 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 [v3] In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 07:04:38 GMT, Prasanta Sadhukhan wrote: >> Harshitha Onkar has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits: >> >> - Merge master >> - problemlist updated >> - eof newline >> - checkbox tests > > test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java line 43: > >> 41: private static final String INSTRUCTIONS = """ >> 42: This test must be run at UI Scale of 100% OR 150% or greater. >> 43: Compare the size of box to any of native apps on Windows > > Maybe you can mention anyone of the native app for easy verification... > Also, it seems if tester tests with 100%, it might look same and tester can pass it...I guess the problem comes with hidpi scale of 150% or more, so maybe we can remove 100% from instruction OR mention 100% AND 150% to check for both... Updated instructions. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1777543178 From honkar at openjdk.org Thu Sep 26 18:28:53 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Thu, 26 Sep 2024 18:28:53 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 [v5] In-Reply-To: References: Message-ID: > Following tests are updated in this PR: > > 1. test/jdk/java/awt/Checkbox/CheckboxBoxSizeTest.java > 2. test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java > 3. test/jdk/java/awt/Checkbox/CheckboxNullLabelTest.java > 4. test/jdk/java/awt/Checkbox/CheckboxPreferredSizeTest.java Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: removed validate() ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21094/files - new: https://git.openjdk.org/jdk/pull/21094/files/84249711..a9212cfc Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21094&range=04 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21094&range=03-04 Stats: 1 line in 1 file changed: 0 ins; 1 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21094.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21094/head:pull/21094 PR: https://git.openjdk.org/jdk/pull/21094 From honkar at openjdk.org Thu Sep 26 18:28:56 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Thu, 26 Sep 2024 18:28:56 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 [v3] In-Reply-To: References: Message-ID: <4uYLTQ9HH4N2UhDeGokzwJsOUmVWEapdwSZqUTRgvbs=.fbe18b1e-bc76-4880-95f2-b70b92efc81f@github.com> On Wed, 25 Sep 2024 07:07:22 GMT, Prasanta Sadhukhan wrote: >> Harshitha Onkar has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits: >> >> - Merge master >> - problemlist updated >> - eof newline >> - checkbox tests > > test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java line 65: > >> 63: Verify that all indicators of checkboxes has the same size. >> 64: Verify that all indicators of radio buttons has the same size. >> 65: Press PASS if the above conditions are true else Press FAIL. > > I guess "Same size" is not correct here...I guess what we meant is the size should be proportionate to scaling or "size will change if font size is changed", it seems the size does not increase if we increase the scale.. > but it still remains the "same", so some tester can consider it pass @prsadhuk I have a clarification about this: Does thecheckbox size depend on label size (font size) and they need to be scaled proportionately or is the size dependent only on uiScale? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1777560509 From prr at openjdk.org Thu Sep 26 21:27:35 2024 From: prr at openjdk.org (Phil Race) Date: Thu, 26 Sep 2024 21:27:35 GMT Subject: RFR: 8340801: Disable ubsan checks in some awt/2d coding In-Reply-To: References: Message-ID: On Wed, 25 Sep 2024 12:17:59 GMT, Matthias Baesken wrote: > There is some old awt/2d coding where warnings occur when running with ubsan enabled binaries. > However at most of these locations the coding should work (at least on our supported platform set) so the warnings can be disabled at least for now. > > The change adds a macro ATTRIBUTE_NO_UBSAN similar to what we already use in Hotspot coding. This needs careful thinking about by various parties. I am not sold on it, and the build team have indicated they do not support --enable-ubsan and my experience with that and similar options is that they are a nightmare to find a system on which they build and produce a working binary. Until there's solid committed support by the leads of the build team I don't think we should be considering these kinds of PRs. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21184#issuecomment-2377966195 From honkar at openjdk.org Thu Sep 26 21:56:23 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Thu, 26 Sep 2024 21:56:23 GMT Subject: RFR: JDK-8340555 : Open source DnD tests - Set4 Message-ID: <049tozCf4dKSaVUlxgE1XtIXbrMfcH9WDmQh_W5Gs4s=.87356976-dfb0-4536-a84f-ca97943518a5@github.com> Following tests are added as part of this PR: 1. /java/awt/dnd/DnDHTMLToOutlookTest/DnDHTMLToOutlookTest.java - **Manual PassFailJFrame (PFJ) test**, problemlisted on all platforms. 2. java/awt/dnd/DragSourceMotionListenerTest.java - **Automated test**, problemlisted on windows 3. /java/awt/dnd/DragToAnotherScreenTest.java - **Manual PFJ test** 4. /java/awt/dnd/RejectDragTest.java - **Automated test**, problemlisted on macOS ------------- Commit messages: - open problemlist updated - open-sourced DnD tests Changes: https://git.openjdk.org/jdk/pull/21213/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21213&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340555 Stats: 880 lines in 7 files changed: 880 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21213.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21213/head:pull/21213 PR: https://git.openjdk.org/jdk/pull/21213 From honkar at openjdk.org Fri Sep 27 00:04:39 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Fri, 27 Sep 2024 00:04:39 GMT Subject: RFR: 8339879: Open some dialog swing tests [v2] In-Reply-To: <77Oo7T87dLg_JJmRDqZ0rNZ_qQZMEmfECMFRy-8Jz4g=.1e6f6f3d-2fa9-49ca-abf5-a5c5b24ba2ce@github.com> References: <77Oo7T87dLg_JJmRDqZ0rNZ_qQZMEmfECMFRy-8Jz4g=.1e6f6f3d-2fa9-49ca-abf5-a5c5b24ba2ce@github.com> Message-ID: On Thu, 26 Sep 2024 16:04:31 GMT, Alisen Chung wrote: >> First set of dialog swing tests to open during fall 2024 test sprint > > Alisen Chung has updated the pull request incrementally with one additional commit since the last revision: > > update jtreg LGTM other than the minor comments test/jdk/java/awt/Dialog/DialogInitialResizability.java line 96: > 94: } > 95: } > 96: } Missing EOF newline test/jdk/java/awt/Dialog/NestedDialogTest.java line 45: > 43: * @test > 44: * @bug 4110094 4178930 4178390 > 45: * @summary Test: Rewrite of Win32 modal dialogs Suggestion: * @summary Test: Rewrite of Win modal dialogs test/jdk/java/awt/Dialog/NestedDialogTest.java line 312: > 310: super.dispose(); > 311: } > 312: } missing EOF newline ------------- Marked as reviewed by honkar (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21196#pullrequestreview-2332532470 PR Review Comment: https://git.openjdk.org/jdk/pull/21196#discussion_r1777861509 PR Review Comment: https://git.openjdk.org/jdk/pull/21196#discussion_r1777861019 PR Review Comment: https://git.openjdk.org/jdk/pull/21196#discussion_r1777861225 From azvegint at openjdk.org Fri Sep 27 00:55:36 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 27 Sep 2024 00:55:36 GMT Subject: RFR: JDK-8340555 : Open source DnD tests - Set4 In-Reply-To: <049tozCf4dKSaVUlxgE1XtIXbrMfcH9WDmQh_W5Gs4s=.87356976-dfb0-4536-a84f-ca97943518a5@github.com> References: <049tozCf4dKSaVUlxgE1XtIXbrMfcH9WDmQh_W5Gs4s=.87356976-dfb0-4536-a84f-ca97943518a5@github.com> Message-ID: On Thu, 26 Sep 2024 21:51:44 GMT, Harshitha Onkar wrote: > Following tests are added as part of this PR: > > 1. /java/awt/dnd/DnDHTMLToOutlookTest/DnDHTMLToOutlookTest.java - **Manual PassFailJFrame (PFJ) test**, problemlisted on all platforms. > > 2. java/awt/dnd/DragSourceMotionListenerTest.java - **Automated test**, problemlisted on windows > > 3. /java/awt/dnd/DragToAnotherScreenTest.java - **Manual PFJ test** > > 4. /java/awt/dnd/RejectDragTest.java - **Automated test**, problemlisted on macOS Marked as reviewed by azvegint (Reviewer). test/jdk/java/awt/dnd/DnDHTMLToOutlookTest/DnDSource.java line 71: > 69: } > 70: return tmp.toByteArray(); > 71: } Suggestion: unused ------------- PR Review: https://git.openjdk.org/jdk/pull/21213#pullrequestreview-2332556958 PR Review Comment: https://git.openjdk.org/jdk/pull/21213#discussion_r1777877683 From honkar at openjdk.org Fri Sep 27 01:06:20 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Fri, 27 Sep 2024 01:06:20 GMT Subject: RFR: JDK-8340555 : Open source DnD tests - Set4 [v2] In-Reply-To: <049tozCf4dKSaVUlxgE1XtIXbrMfcH9WDmQh_W5Gs4s=.87356976-dfb0-4536-a84f-ca97943518a5@github.com> References: <049tozCf4dKSaVUlxgE1XtIXbrMfcH9WDmQh_W5Gs4s=.87356976-dfb0-4536-a84f-ca97943518a5@github.com> Message-ID: > Following tests are added as part of this PR: > > 1. /java/awt/dnd/DnDHTMLToOutlookTest/DnDHTMLToOutlookTest.java - **Manual PassFailJFrame (PFJ) test**, problemlisted on all platforms. > > 2. java/awt/dnd/DragSourceMotionListenerTest.java - **Automated test**, problemlisted on windows > > 3. /java/awt/dnd/DragToAnotherScreenTest.java - **Manual PFJ test** > > 4. /java/awt/dnd/RejectDragTest.java - **Automated test**, problemlisted on macOS Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: unused getContent() removed ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21213/files - new: https://git.openjdk.org/jdk/pull/21213/files/948c9d14..68f49cc1 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21213&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21213&range=00-01 Stats: 13 lines in 1 file changed: 0 ins; 13 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21213.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21213/head:pull/21213 PR: https://git.openjdk.org/jdk/pull/21213 From honkar at openjdk.org Fri Sep 27 01:06:20 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Fri, 27 Sep 2024 01:06:20 GMT Subject: RFR: JDK-8340555 : Open source DnD tests - Set4 [v2] In-Reply-To: References: <049tozCf4dKSaVUlxgE1XtIXbrMfcH9WDmQh_W5Gs4s=.87356976-dfb0-4536-a84f-ca97943518a5@github.com> Message-ID: <0vlpVzKy7d0MEDqeGhRKwxJzg6n3G82PygrxKJnV2l4=.b77cce7c-a7bb-48cf-959e-bc4f53263b15@github.com> On Fri, 27 Sep 2024 00:32:00 GMT, Alexander Zvegintsev wrote: >> Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: >> >> unused getContent() removed > > test/jdk/java/awt/dnd/DnDHTMLToOutlookTest/DnDSource.java line 71: > >> 69: } >> 70: return tmp.toByteArray(); >> 71: } > > Suggestion: > > > > unused Updated ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21213#discussion_r1777891201 From azvegint at openjdk.org Fri Sep 27 01:11:39 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 27 Sep 2024 01:11:39 GMT Subject: RFR: JDK-8340555 : Open source DnD tests - Set4 [v2] In-Reply-To: <0vlpVzKy7d0MEDqeGhRKwxJzg6n3G82PygrxKJnV2l4=.b77cce7c-a7bb-48cf-959e-bc4f53263b15@github.com> References: <049tozCf4dKSaVUlxgE1XtIXbrMfcH9WDmQh_W5Gs4s=.87356976-dfb0-4536-a84f-ca97943518a5@github.com> <0vlpVzKy7d0MEDqeGhRKwxJzg6n3G82PygrxKJnV2l4=.b77cce7c-a7bb-48cf-959e-bc4f53263b15@github.com> Message-ID: On Fri, 27 Sep 2024 01:02:06 GMT, Harshitha Onkar wrote: >> test/jdk/java/awt/dnd/DnDHTMLToOutlookTest/DnDSource.java line 71: >> >>> 69: } >>> 70: return tmp.toByteArray(); >>> 71: } >> >> Suggestion: >> >> >> >> unused > > Updated import java.io.ByteArrayOutputStream; import java.io.FileInputStream; import java.io.IOException; those are also unused. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21213#discussion_r1777894234 From azvegint at openjdk.org Fri Sep 27 01:14:34 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 27 Sep 2024 01:14:34 GMT Subject: RFR: JDK-8340555 : Open source DnD tests - Set4 [v2] In-Reply-To: References: <049tozCf4dKSaVUlxgE1XtIXbrMfcH9WDmQh_W5Gs4s=.87356976-dfb0-4536-a84f-ca97943518a5@github.com> Message-ID: On Fri, 27 Sep 2024 01:06:20 GMT, Harshitha Onkar wrote: >> Following tests are added as part of this PR: >> >> 1. /java/awt/dnd/DnDHTMLToOutlookTest/DnDHTMLToOutlookTest.java - **Manual PassFailJFrame (PFJ) test**, problemlisted on all platforms. >> >> 2. java/awt/dnd/DragSourceMotionListenerTest.java - **Automated test**, problemlisted on windows >> >> 3. /java/awt/dnd/DragToAnotherScreenTest.java - **Manual PFJ test** >> >> 4. /java/awt/dnd/RejectDragTest.java - **Automated test**, problemlisted on macOS > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > unused getContent() removed test/jdk/java/awt/dnd/RejectDragTest.java line 41: > 39: import java.awt.dnd.DropTargetDragEvent; > 40: import java.awt.dnd.DropTargetDropEvent; > 41: import java.awt.dnd.DropTargetEvent; Suggestion: ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21213#discussion_r1777895495 From honkar at openjdk.org Fri Sep 27 04:17:30 2024 From: honkar at openjdk.org (Harshitha Onkar) Date: Fri, 27 Sep 2024 04:17:30 GMT Subject: RFR: JDK-8340555 : Open source DnD tests - Set4 [v3] In-Reply-To: <049tozCf4dKSaVUlxgE1XtIXbrMfcH9WDmQh_W5Gs4s=.87356976-dfb0-4536-a84f-ca97943518a5@github.com> References: <049tozCf4dKSaVUlxgE1XtIXbrMfcH9WDmQh_W5Gs4s=.87356976-dfb0-4536-a84f-ca97943518a5@github.com> Message-ID: > Following tests are added as part of this PR: > > 1. /java/awt/dnd/DnDHTMLToOutlookTest/DnDHTMLToOutlookTest.java - **Manual PassFailJFrame (PFJ) test**, problemlisted on all platforms. > > 2. java/awt/dnd/DragSourceMotionListenerTest.java - **Automated test**, problemlisted on windows > > 3. /java/awt/dnd/DragToAnotherScreenTest.java - **Manual PFJ test** > > 4. /java/awt/dnd/RejectDragTest.java - **Automated test**, problemlisted on macOS Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: unused imports ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21213/files - new: https://git.openjdk.org/jdk/pull/21213/files/68f49cc1..39f4a395 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21213&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21213&range=01-02 Stats: 39 lines in 2 files changed: 0 ins; 39 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21213.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21213/head:pull/21213 PR: https://git.openjdk.org/jdk/pull/21213 From psadhukhan at openjdk.org Fri Sep 27 04:55:35 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 27 Sep 2024 04:55:35 GMT Subject: RFR: JDK-8340077 : Open source few Checkbox tests - Set2 [v3] In-Reply-To: <4uYLTQ9HH4N2UhDeGokzwJsOUmVWEapdwSZqUTRgvbs=.fbe18b1e-bc76-4880-95f2-b70b92efc81f@github.com> References: <4uYLTQ9HH4N2UhDeGokzwJsOUmVWEapdwSZqUTRgvbs=.fbe18b1e-bc76-4880-95f2-b70b92efc81f@github.com> Message-ID: On Thu, 26 Sep 2024 18:24:23 GMT, Harshitha Onkar wrote: >> test/jdk/java/awt/Checkbox/CheckboxIndicatorSizeTest.java line 65: >> >>> 63: Verify that all indicators of checkboxes has the same size. >>> 64: Verify that all indicators of radio buttons has the same size. >>> 65: Press PASS if the above conditions are true else Press FAIL. >> >> I guess "Same size" is not correct here...I guess what we meant is the size should be proportionate to scaling or "size will change if font size is changed", it seems the size does not increase if we increase the scale.. >> but it still remains the "same", so some tester can consider it pass > > @prsadhuk I have a clarification about this: > Does the checkbox size depend on label size (font size) and they need to be scaled proportionately or is the checkbox and indicator size dependent only on uiScale? One is global setting and the other local..and local would get affected by global setting ie Checkboz size should be proportionate to local label fontsize and when we up the global uiScale, it would also increase the label font implicitly which then would affect checkbox size ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21094#discussion_r1778004732 From mbaesken at openjdk.org Fri Sep 27 06:27:35 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Fri, 27 Sep 2024 06:27:35 GMT Subject: RFR: 8339475: Clean up return code handling for pthread calls in library coding [v3] In-Reply-To: <1hkPgl0OA5lEpF6vEmb9DVg-fNndalfotPEmQegz9-w=.40d1f46e-a7cf-49f9-bd55-10f9b9a033f9@github.com> References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> <1hkPgl0OA5lEpF6vEmb9DVg-fNndalfotPEmQegz9-w=.40d1f46e-a7cf-49f9-bd55-10f9b9a033f9@github.com> Message-ID: On Thu, 26 Sep 2024 14:44:53 GMT, Matthias Baesken wrote: >> It has been discussed that checking the return value of pthread_create should be done. >> See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > some macOS cleanup Thanks for the review ! I changed the title too . Julian, are you fine with the latest rev. ? ------------- PR Comment: https://git.openjdk.org/jdk/pull/21182#issuecomment-2378492980 From jwaters at openjdk.org Fri Sep 27 06:33:36 2024 From: jwaters at openjdk.org (Julian Waters) Date: Fri, 27 Sep 2024 06:33:36 GMT Subject: RFR: 8339475: Clean up return code handling for pthread calls in library coding [v3] In-Reply-To: <1hkPgl0OA5lEpF6vEmb9DVg-fNndalfotPEmQegz9-w=.40d1f46e-a7cf-49f9-bd55-10f9b9a033f9@github.com> References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> <1hkPgl0OA5lEpF6vEmb9DVg-fNndalfotPEmQegz9-w=.40d1f46e-a7cf-49f9-bd55-10f9b9a033f9@github.com> Message-ID: On Thu, 26 Sep 2024 14:44:53 GMT, Matthias Baesken wrote: >> It has been discussed that checking the return value of pthread_create should be done. >> See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . > > Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision: > > some macOS cleanup I am ok with this. I wonder what @tstuefe and @dholmes-ora think about the JLI_ReportErrorMessageSys changes though. I recall one of them preferring strerror_r over strerror ------------- Marked as reviewed by jwaters (Committer). PR Review: https://git.openjdk.org/jdk/pull/21182#pullrequestreview-2332853638 From mbaesken at openjdk.org Fri Sep 27 06:48:34 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Fri, 27 Sep 2024 06:48:34 GMT Subject: RFR: 8340801: Disable ubsan checks in some awt/2d coding In-Reply-To: References: Message-ID: On Thu, 26 Sep 2024 21:25:07 GMT, Phil Race wrote: > build team have indicated they do not support --enable-ubsan What 'build team' are you talking about ? Some Oracle internal build team? The ubsan support came in 2023, so nothing new (change was from Justin King) https://github.com/openjdk/jdk/commit/7a85d95e828283d57e1df0344be454626470675d And it was reviewed by erikj and ihse, I think those are members of the OpenJDK build group and very competent OpenJDK reviewers. So the flag is as good or bad as any other configure flag of OpenJDK . >and my experience with that and similar options is that they are a nightmare to find a system on which they build We use and run this regularly on SUSE and Ubuntu Linux and have VERY good experience with it. It works (at least on recent Linux distros) very well. (on macOS our experience is a bit different there I had a couple of issues with ubsan) A lot of large C/C++ based OSS projects support it like Linux kernel, Android, Chromium etc. https://docs.kernel.org/dev-tools/ubsan.html https://source.android.com/docs/security/test/ubsan https://www.chromium.org/developers/testing/undefinedbehaviorsanitizer/ and btw. Oracle blogs happily about it too and recommends it https://blogs.oracle.com/linux/post/improving-application-security-with-undefinedbehaviorsanitizer-ubsan-and-gcc So it is a well established tool in the OSS world. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21184#issuecomment-2378520093 From jwaters at openjdk.org Fri Sep 27 07:09:37 2024 From: jwaters at openjdk.org (Julian Waters) Date: Fri, 27 Sep 2024 07:09:37 GMT Subject: RFR: 8340801: Disable ubsan checks in some awt/2d coding In-Reply-To: References: Message-ID: On Fri, 27 Sep 2024 06:46:24 GMT, Matthias Baesken wrote: > And it was reviewed by erikj and ihse, I think those are members of the OpenJDK build group Erik and Magnus are indeed part of the build team. Erik is the Skara tool lead but does build work as well, while Magnus is pretty much the face of the build team at this point > very competent OpenJDK reviewers If only I could be a competent reviewer one of these days :( ------------- PR Comment: https://git.openjdk.org/jdk/pull/21184#issuecomment-2378552970 From mbaesken at openjdk.org Fri Sep 27 07:26:34 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Fri, 27 Sep 2024 07:26:34 GMT Subject: RFR: 8339475: Clean up return code handling for pthread calls in library coding [v3] In-Reply-To: References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> <1hkPgl0OA5lEpF6vEmb9DVg-fNndalfotPEmQegz9-w=.40d1f46e-a7cf-49f9-bd55-10f9b9a033f9@github.com> Message-ID: On Fri, 27 Sep 2024 06:30:54 GMT, Julian Waters wrote: > I am ok with this. I wonder what @tstuefe and @dholmes-ora think about the JLI_ReportErrorMessageSys changes though. I recall one of them preferring strerror_r over strerror Hi Julian, in HS we use a large array of error strings : 8148425: strerror() function is not thread-safe https://hg.openjdk.org/jdk9/jdk9/hotspot/rev/1537c752a7f5 In case we want to replace strerror in java_md_common.c (by strerror_r or by an array like we use in HS), that would be another separate issue. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21182#issuecomment-2378588837 From mbaesken at openjdk.org Fri Sep 27 07:30:40 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Fri, 27 Sep 2024 07:30:40 GMT Subject: Integrated: 8339475: Clean up return code handling for pthread calls in library coding In-Reply-To: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> References: <7EOB-djMPj6wz3Q87w8hEOyFM_wbfuFzNg54EcL397k=.82ac7581-1f09-42dd-842e-df076dc5ac06@github.com> Message-ID: On Wed, 25 Sep 2024 11:46:00 GMT, Matthias Baesken wrote: > It has been discussed that checking the return value of pthread_create should be done. > See the discussion here https://github.com/openjdk/jdk/pull/20812 about the splashscreen coding . This pull request has now been integrated. Changeset: 2a2ecc99 Author: Matthias Baesken URL: https://git.openjdk.org/jdk/commit/2a2ecc994e02049d6d84f083b8e92a51368577bf Stats: 23 lines in 4 files changed: 9 ins; 7 del; 7 mod 8339475: Clean up return code handling for pthread calls in library coding Reviewed-by: clanger, jwaters ------------- PR: https://git.openjdk.org/jdk/pull/21182 From mbaesken at openjdk.org Fri Sep 27 07:46:34 2024 From: mbaesken at openjdk.org (Matthias Baesken) Date: Fri, 27 Sep 2024 07:46:34 GMT Subject: RFR: 8340801: Disable ubsan checks in some awt/2d coding In-Reply-To: References: Message-ID: <5F8WL1Qh0Lq_JHGMORBPlnpcNwJ8TDR4hZei-R2tcpA=.83d0a9fe-4682-44f8-a57f-3a6cccfd3fc8@github.com> On Wed, 25 Sep 2024 12:17:59 GMT, Matthias Baesken wrote: > There is some old awt/2d coding where warnings occur when running with ubsan enabled binaries. > However at most of these locations the coding should work (at least on our supported platform set) so the warnings can be disabled at least for now. > > The change adds a macro ATTRIBUTE_NO_UBSAN similar to what we already use in Hotspot coding. Btw regarding the function/method exclusion, this was introduced in HS some time ago https://bugs.openjdk.org/browse/JDK-8334239 We just needed in HS codebase a couple of places where we use/keep undefined behavior (e.g. im vmError.cpp where it is intentionally used). Obviously, the mentioned HS change does not work for the other C libs so this is some kind of follow up. In HS we use the ATTRIBUTE_NO_UBSAN macro currently at 4 code locations. So it is not intended or likely that this macro would go to a lot of places of the JDK libs, just a small number comparable to usage in HS. Regarding putting it into jni_md.h, probably it would moving it from there to a separate header like it is done in HS would be better, I can do that if this is preferred. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21184#issuecomment-2378625842 From psadhukhan at openjdk.org Fri Sep 27 07:57:36 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 27 Sep 2024 07:57:36 GMT Subject: RFR: 8340193: Open source several AWT Dialog tests - Batch 1 In-Reply-To: References: Message-ID: <1iDPjVAbfvfeK0NaWkN3uzNqvieGr-NKKWeAVW0KETE=.283c1d4d-86e3-4ede-8649-54d501139c99@github.com> On Wed, 25 Sep 2024 07:20:21 GMT, Tejesh R wrote: > Open source these AWT Mouse tests: > > java/awt/Dialog/FileDialogIconTest/FileDialogIconTest.java > java/awt/Dialog/FileDialogWrongNameCrash.java > java/awt/Dialog/DialogResizeTest.java > java/awt/Dialog/GetLocationTest_1.java > java/awt/Dialog/DialogIconTest/DialogIconTest.java test/jdk/java/awt/Dialog/DialogResizeTest.java line 133: > 131: public void componentHidden(ComponentEvent e) { > 132: System.out.println("componentHidden event occurred."); > 133: } I guess PassFailJFrame.log would be of more use than System println, if at all these logs are of any help.. test/jdk/java/awt/Dialog/FileDialogWrongNameCrash.java line 58: > 56: > 57: private static Frame initialize() { > 58: Frame frame = new Frame("Frame"); give more meaningful name test/jdk/java/awt/Dialog/GetLocationTest_1.java line 50: > 48: up with the top left by the cursor > 49: 2. If you see this correct behavior press PASS. If you see that > 50: the yellow window is offset by an inset (5, 24) press FAIL how will tester knows that the inset is of this dimension, it might vary from platform to platform and also vary with different scaling? maybe just delete this hardcoded dimension? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21174#discussion_r1778177853 PR Review Comment: https://git.openjdk.org/jdk/pull/21174#discussion_r1778188170 PR Review Comment: https://git.openjdk.org/jdk/pull/21174#discussion_r1778189364 From tr at openjdk.org Fri Sep 27 10:09:22 2024 From: tr at openjdk.org (Tejesh R) Date: Fri, 27 Sep 2024 10:09:22 GMT Subject: RFR: 8340193: Open source several AWT Dialog tests - Batch 1 [v2] In-Reply-To: References: Message-ID: <86Vb8yXKc16RS5EW6180IUmGP5ORgSIhuM2kpZUjdDw=.1080dd5e-6760-4c51-91da-979fea7cc28b@github.com> > Open source these AWT Mouse tests: > > java/awt/Dialog/FileDialogIconTest/FileDialogIconTest.java > java/awt/Dialog/FileDialogWrongNameCrash.java > java/awt/Dialog/DialogResizeTest.java > java/awt/Dialog/GetLocationTest_1.java > java/awt/Dialog/DialogIconTest/DialogIconTest.java Tejesh R has updated the pull request incrementally with one additional commit since the last revision: Review comments updated ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21174/files - new: https://git.openjdk.org/jdk/pull/21174/files/dde69a54..23802939 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21174&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21174&range=00-01 Stats: 4 lines in 3 files changed: 1 ins; 0 del; 3 mod Patch: https://git.openjdk.org/jdk/pull/21174.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21174/head:pull/21174 PR: https://git.openjdk.org/jdk/pull/21174 From tr at openjdk.org Fri Sep 27 10:09:23 2024 From: tr at openjdk.org (Tejesh R) Date: Fri, 27 Sep 2024 10:09:23 GMT Subject: RFR: 8340193: Open source several AWT Dialog tests - Batch 1 [v2] In-Reply-To: <1iDPjVAbfvfeK0NaWkN3uzNqvieGr-NKKWeAVW0KETE=.283c1d4d-86e3-4ede-8649-54d501139c99@github.com> References: <1iDPjVAbfvfeK0NaWkN3uzNqvieGr-NKKWeAVW0KETE=.283c1d4d-86e3-4ede-8649-54d501139c99@github.com> Message-ID: On Fri, 27 Sep 2024 07:43:06 GMT, Prasanta Sadhukhan wrote: >> Tejesh R has updated the pull request incrementally with one additional commit since the last revision: >> >> Review comments updated > > test/jdk/java/awt/Dialog/DialogResizeTest.java line 133: > >> 131: public void componentHidden(ComponentEvent e) { >> 132: System.out.println("componentHidden event occurred."); >> 133: } > > I guess PassFailJFrame.log would be of more use than System println, if at all these logs are of any help.. I'm getting this error if I use ` PassFailJFrame.log` to `componentResize` method. `java.lang.NullPointerException: Cannot invoke "javax.swing.JTextArea.append(String)" because "PassFailJFrame.logArea" is null`. Since the test is about resize, I've updated only resize related print statement. > test/jdk/java/awt/Dialog/FileDialogWrongNameCrash.java line 58: > >> 56: >> 57: private static Frame initialize() { >> 58: Frame frame = new Frame("Frame"); > > give more meaningful name Updated. > test/jdk/java/awt/Dialog/GetLocationTest_1.java line 50: > >> 48: up with the top left by the cursor >> 49: 2. If you see this correct behavior press PASS. If you see that >> 50: the yellow window is offset by an inset (5, 24) press FAIL > > how will tester knows that the inset is of this dimension, it might vary from platform to platform and also vary with different scaling? maybe just delete this hardcoded dimension? Updated. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21174#discussion_r1778369974 PR Review Comment: https://git.openjdk.org/jdk/pull/21174#discussion_r1778370100 PR Review Comment: https://git.openjdk.org/jdk/pull/21174#discussion_r1778370296 From tr at openjdk.org Fri Sep 27 10:28:22 2024 From: tr at openjdk.org (Tejesh R) Date: Fri, 27 Sep 2024 10:28:22 GMT Subject: RFR: 8340366: Open source several AWT Dialog tests - Batch 3 Message-ID: Open source these AWT Dialog tests: java/awt/Dialog/ModalDialogTest.java java/awt/Dialog/DialogModalityTest.java java/awt/Dialog/DialogResizeTest2.java java/awt/Dialog/HideDialogTest.java java/awt/Dialog/FileDialogUserFilterTest.java ------------- Commit messages: - Update ProblemList - Open Source Changes: https://git.openjdk.org/jdk/pull/21218/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21218&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8340366 Stats: 656 lines in 6 files changed: 656 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/21218.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21218/head:pull/21218 PR: https://git.openjdk.org/jdk/pull/21218 From azvegint at openjdk.org Fri Sep 27 11:00:41 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 27 Sep 2024 11:00:41 GMT Subject: RFR: JDK-8340555 : Open source DnD tests - Set4 [v3] In-Reply-To: References: <049tozCf4dKSaVUlxgE1XtIXbrMfcH9WDmQh_W5Gs4s=.87356976-dfb0-4536-a84f-ca97943518a5@github.com> Message-ID: On Fri, 27 Sep 2024 04:17:30 GMT, Harshitha Onkar wrote: >> Following tests are added as part of this PR: >> >> 1. /java/awt/dnd/DnDHTMLToOutlookTest/DnDHTMLToOutlookTest.java - **Manual PassFailJFrame (PFJ) test**, problemlisted on all platforms. >> >> 2. java/awt/dnd/DragSourceMotionListenerTest.java - **Automated test**, problemlisted on windows >> >> 3. /java/awt/dnd/DragToAnotherScreenTest.java - **Manual PFJ test** >> >> 4. /java/awt/dnd/RejectDragTest.java - **Automated test**, problemlisted on macOS > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > unused imports Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21213#pullrequestreview-2333427235 From psadhukhan at openjdk.org Fri Sep 27 11:57:38 2024 From: psadhukhan at openjdk.org (Prasanta Sadhukhan) Date: Fri, 27 Sep 2024 11:57:38 GMT Subject: RFR: 8340193: Open source several AWT Dialog tests - Batch 1 [v2] In-Reply-To: References: <1iDPjVAbfvfeK0NaWkN3uzNqvieGr-NKKWeAVW0KETE=.283c1d4d-86e3-4ede-8649-54d501139c99@github.com> Message-ID: On Fri, 27 Sep 2024 10:05:34 GMT, Tejesh R wrote: >> test/jdk/java/awt/Dialog/DialogResizeTest.java line 133: >> >>> 131: public void componentHidden(ComponentEvent e) { >>> 132: System.out.println("componentHidden event occurred."); >>> 133: } >> >> I guess PassFailJFrame.log would be of more use than System println, if at all these logs are of any help.. > > I'm getting this error if I use ` PassFailJFrame.log` to `componentResize` method. > `java.lang.NullPointerException: Cannot invoke "javax.swing.JTextArea.append(String)" because "PassFailJFrame.logArea" is null`. Since the test is about resize, I've updated only resize related print statement. Probably component is resized even before PassFailJFrame creates the logArea in Builder interface. The instructions says "When isResizable is true the dialog is resizable. When isResizable is false the dialog is non-resizable" and you are logging "PassFailJFrame.log("isResizable is set to: " + bResizeState);" so, it seems ComponentListener is not needed and all these 4 methods can be removed which is only logging and that too is not visible to tester... ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21174#discussion_r1778500627 From azvegint at openjdk.org Fri Sep 27 14:19:40 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 27 Sep 2024 14:19:40 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Thu, 26 Sep 2024 13:57:09 GMT, Alexey Ivanov wrote: >> Provides a set of default layouts for manual test using multiple test UI windows. >> >> The initial implementation in the demo in #15721 was too complicated. After looking at the simplified version used in #21180, I re-worked the layouts into separate methods. >> >> The layout methods are in `WindowLayouts` class next to `PassFailJFrame`. It is not necessary to mention it explicitly in the `@build` jtreg tag. >> >> The builder now provides new methods: >> >> - `positionTestUIRightRow` positions the test UI windows in a row to the right of the instruction frame. The top of the windows is aligned to that of the instruction frame. >> - `positionTestUIRightColumn` positions the test UI windows in a column to the right of the instruction frame. The top of the first window is aligned to that of the instruction frame. >> - `positionTestUIRightColumnCentered` positions the test UI windows in a column to the right of the instruction frame centering the stack of the windows. >> - `positionTestUIBottomRow` positions the test UI windows in a row to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. >> - `positionTestUIBottomRowCentered` positions the test UI windows in a row to the bottom of the instruction frame centering the row of the windows. >> - `positionTestUIBottomColumn` positions the test UI windows in a column to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. >> >> If required, the test developer can provide a custom implementation. > > Alexey Ivanov has updated the pull request incrementally with one additional commit since the last revision: > > Add missing parentheses for vertical positioning test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 1405: > 1403: * Positions the test UI windows in a row to the right of > 1404: * the instruction frame. The top of the windows is aligned to > 1405: * that of the instruction frame. Since we are touching this, what are our options for positioning the instruction frame? The `.position(PassFailJFrame.Position.TOP_LEFT_CORNER)` has no effect now with positionTestUIRightRow: PassFailJFrame.builder() .instructions(INSTRUCTIONS) .rows(15) .columns(30) .testUI(() -> WindowCreator.createTestWindows(2)) .position(PassFailJFrame.Position.TOP_LEFT_CORNER) .positionTestUIRightRow() .build() .awaitAndCheck(); Should we provide a way to place instruction frame in arbitrary location on screen? It will allow us to provide more flexibility and more advanced layouts without too much effort from a test developer. test/jdk/java/awt/regtesthelpers/WindowLayouts.java line 133: > 131: public static void bottomOneRowCentered(final List windows, > 132: final PassFailJFrame.InstructionUI instructionUI) { > 133: layoutColumn(getScreenCenter().x Suggestion: layoutRow(getScreenCenter().x typo. test/jdk/java/awt/regtesthelpers/WindowLayouts.java line 175: > 173: x += w.getWidth() + WINDOW_GAP; > 174: } > 175: Suggestion: ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778689582 PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778670409 PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778699306 From aivanov at openjdk.org Fri Sep 27 14:23:38 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 27 Sep 2024 14:23:38 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Fri, 27 Sep 2024 14:07:44 GMT, Alexander Zvegintsev wrote: >> Alexey Ivanov has updated the pull request incrementally with one additional commit since the last revision: >> >> Add missing parentheses for vertical positioning > > test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 1405: > >> 1403: * Positions the test UI windows in a row to the right of >> 1404: * the instruction frame. The top of the windows is aligned to >> 1405: * that of the instruction frame. > > Since we are touching this, what are our options for positioning the instruction frame? > > The `.position(PassFailJFrame.Position.TOP_LEFT_CORNER)` has no effect now with positionTestUIRightRow: > > > PassFailJFrame.builder() > .instructions(INSTRUCTIONS) > .rows(15) > .columns(30) > .testUI(() -> WindowCreator.createTestWindows(2)) > .position(PassFailJFrame.Position.TOP_LEFT_CORNER) > .positionTestUIRightRow() > .build() > .awaitAndCheck(); > > > Should we provide a way to place instruction frame in arbitrary location on screen? > It will allow us to provide more flexibility and more advanced layouts without too much effort from a test developer. If you call `.position(PassFailJFrame.Position.TOP_LEFT_CORNER)` after `.positionTestUIRightRow`, it is respected. > test/jdk/java/awt/regtesthelpers/WindowLayouts.java line 133: > >> 131: public static void bottomOneRowCentered(final List windows, >> 132: final PassFailJFrame.InstructionUI instructionUI) { >> 133: layoutColumn(getScreenCenter().x > > Suggestion: > > layoutRow(getScreenCenter().x > > > typo. Let me check? All the samples look good, however, this looks like a typo. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778707886 PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778705954 From azvegint at openjdk.org Fri Sep 27 14:27:35 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 27 Sep 2024 14:27:35 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Fri, 27 Sep 2024 14:19:46 GMT, Alexey Ivanov wrote: >> test/jdk/java/awt/regtesthelpers/WindowLayouts.java line 133: >> >>> 131: public static void bottomOneRowCentered(final List windows, >>> 132: final PassFailJFrame.InstructionUI instructionUI) { >>> 133: layoutColumn(getScreenCenter().x >> >> Suggestion: >> >> layoutRow(getScreenCenter().x >> >> >> typo. > > Let me check? All the samples look good, however, this looks like a typo. I tried this Checkout this PR locally: $ git fetch https://git.openjdk.org/jdk.git pull/21210/head:pull/21210 $ git checkout pull/21210 And the BottomOneRowCentered example looks like following to me: ![image](https://github.com/user-attachments/assets/c455c8f1-91b8-4664-b445-4598a835cedb) ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778713508 From aivanov at openjdk.org Fri Sep 27 14:30:36 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 27 Sep 2024 14:30:36 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Fri, 27 Sep 2024 14:21:14 GMT, Alexey Ivanov wrote: >> test/jdk/java/awt/regtesthelpers/PassFailJFrame.java line 1405: >> >>> 1403: * Positions the test UI windows in a row to the right of >>> 1404: * the instruction frame. The top of the windows is aligned to >>> 1405: * that of the instruction frame. >> >> Since we are touching this, what are our options for positioning the instruction frame? >> >> The `.position(PassFailJFrame.Position.TOP_LEFT_CORNER)` has no effect now with positionTestUIRightRow: >> >> >> PassFailJFrame.builder() >> .instructions(INSTRUCTIONS) >> .rows(15) >> .columns(30) >> .testUI(() -> WindowCreator.createTestWindows(2)) >> .position(PassFailJFrame.Position.TOP_LEFT_CORNER) >> .positionTestUIRightRow() >> .build() >> .awaitAndCheck(); >> >> >> Should we provide a way to place instruction frame in arbitrary location on screen? >> It will allow us to provide more flexibility and more advanced layouts without too much effort from a test developer. > > If you call `.position(PassFailJFrame.Position.TOP_LEFT_CORNER)` after `.positionTestUIRightRow`, it is respected. > Should we provide a way to place instruction frame in arbitrary location on screen? You can do it by using the `InstructionUI` interface that's passed to you when you implement a custom layout. We're still trying to encapsulate the frame that hosts the instructions? if it's exposed, then the test developer can do whatever they want? yet then they have to ensure calling methods on that frame from EDT. I'd rather not expose the frame at this time. How often does one need to position the instructions at an arbitrary location on the screen? The `TOP_LEFT_CORNER` position is used by 6 tests only. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778717585 From aivanov at openjdk.org Fri Sep 27 14:41:57 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 27 Sep 2024 14:41:57 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v3] In-Reply-To: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: > Provides a set of default layouts for manual test using multiple test UI windows. > > The initial implementation in the demo in #15721 was too complicated. After looking at the simplified version used in #21180, I re-worked the layouts into separate methods. > > The layout methods are in `WindowLayouts` class next to `PassFailJFrame`. It is not necessary to mention it explicitly in the `@build` jtreg tag. > > The builder now provides new methods: > > - `positionTestUIRightRow` positions the test UI windows in a row to the right of the instruction frame. The top of the windows is aligned to that of the instruction frame. > - `positionTestUIRightColumn` positions the test UI windows in a column to the right of the instruction frame. The top of the first window is aligned to that of the instruction frame. > - `positionTestUIRightColumnCentered` positions the test UI windows in a column to the right of the instruction frame centering the stack of the windows. > - `positionTestUIBottomRow` positions the test UI windows in a row to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. > - `positionTestUIBottomRowCentered` positions the test UI windows in a row to the bottom of the instruction frame centering the row of the windows. > - `positionTestUIBottomColumn` positions the test UI windows in a column to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. > > If required, the test developer can provide a custom implementation. Alexey Ivanov has updated the pull request incrementally with two additional commits since the last revision: - Remove extra line layoutRow - bottomOneRowCentered: layoutColumn -> layoutRow ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21207/files - new: https://git.openjdk.org/jdk/pull/21207/files/10c9b563..b4876fde Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21207&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21207&range=01-02 Stats: 7 lines in 1 file changed: 0 ins; 1 del; 6 mod Patch: https://git.openjdk.org/jdk/pull/21207.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21207/head:pull/21207 PR: https://git.openjdk.org/jdk/pull/21207 From aivanov at openjdk.org Fri Sep 27 14:41:57 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 27 Sep 2024 14:41:57 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: <9bkKv8y6M_qcEdzQ9oKzrO4kV0qSmWN2kCqx3wYYzbY=.3f55401f-87dd-4ea3-a7a8-1cd2c6ce1efb@github.com> On Fri, 27 Sep 2024 14:25:17 GMT, Alexander Zvegintsev wrote: >> Let me check? All the samples look good, however, this looks like a typo. > > I tried this > > Checkout this PR locally: > $ git fetch https://git.openjdk.org/jdk.git pull/21210/head:pull/21210 > $ git checkout pull/21210 > > > And the BottomOneRowCentered example looks like following to me: > ![image](https://github.com/user-attachments/assets/c455c8f1-91b8-4664-b445-4598a835cedb) Yes, I see it now. I wonder why it worked correctly when I ran the tests to take screenshots. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778732607 From aivanov at openjdk.org Fri Sep 27 14:51:35 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 27 Sep 2024 14:51:35 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Fri, 27 Sep 2024 14:28:15 GMT, Alexey Ivanov wrote: >> If you call `.position(PassFailJFrame.Position.TOP_LEFT_CORNER)` after `.positionTestUIRightRow`, it is respected. > >> Should we provide a way to place instruction frame in arbitrary location on screen? > > You can do it by using the `InstructionUI` interface that's passed to you when you implement a custom layout. > > We're still trying to encapsulate the frame that hosts the instructions? if it's exposed, then the test developer can do whatever they want? yet then they have to ensure calling methods on that frame from EDT. > > I'd rather not expose the frame at this time. > > How often does one need to position the instructions at an arbitrary location on the screen? The `TOP_LEFT_CORNER` position is used by 6 tests only. With the instruction frame exposed, it would be possible to create owned modeless `JDialog` or `Dialog` instead of `JFrame` and `Frame` which has a great benefit: all the windows are brought to the top when you switch back to the test from another application. And there's only a single window on the taskbar for the test. I've been thinking about adding helper methods `createOwnedJDialog` and `createOwnedDialog` to cover this use case. Currently, it's possible to host test UI in a modeless dialog if you use `testUI` with `PanelCreator` that is pass a method which creates `JComponent`. I admit I like navigating the UI much easier in this case. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778741079 From azvegint at openjdk.org Fri Sep 27 14:51:35 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 27 Sep 2024 14:51:35 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Fri, 27 Sep 2024 14:48:20 GMT, Alexey Ivanov wrote: >> With the instruction frame exposed, it would be possible to create owned modeless `JDialog` or `Dialog` instead of `JFrame` and `Frame` which has a great benefit: all the windows are brought to the top when you switch back to the test from another application. And there's only a single window on the taskbar for the test. >> >> I've been thinking about adding helper methods `createOwnedJDialog` and `createOwnedDialog` to cover this use case. >> >> Currently, it's possible to host test UI in a modeless dialog if you use `testUI` with `PanelCreator` that is pass a method which creates `JComponent`. I admit I like navigating the UI much easier in this case. > >> If you call `.position(PassFailJFrame.Position.TOP_LEFT_CORNER)` after `.positionTestUIRightRow`, it is respected. > > Perhaps, this behaviour should be called out in the docs somewhere. All `.positionTestUIRight*` as well as `.positionTestUIBottom*` *implicitly* set the position. > You can do it by using the InstructionUI interface that's passed to you when you implement a custom layout. But it cannot be combined with the newly added methods like: PassFailJFrame.builder() .instructions(INSTRUCTIONS) .rows(15) .columns(30) .testUI(() -> WindowCreator.createTestWindows(3)) .positionTestUI((testWindows, instructionUI) -> instructionUI.setLocation(200, 200)) // or add a new method like //.instructionFrameLocation(200, 200) .positionTestUIRightRow() .build() .awaitAndCheck(); The idea is to make it very simple without having to implement the `positionTestUI` interface (I am not talking about exposing the frame, see the snippet above). Like place the instruction frame here, and layout other windows relative to it. But I agree it is a rare case. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778744890 From aivanov at openjdk.org Fri Sep 27 14:51:35 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 27 Sep 2024 14:51:35 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Fri, 27 Sep 2024 14:45:42 GMT, Alexey Ivanov wrote: >>> Should we provide a way to place instruction frame in arbitrary location on screen? >> >> You can do it by using the `InstructionUI` interface that's passed to you when you implement a custom layout. >> >> We're still trying to encapsulate the frame that hosts the instructions? if it's exposed, then the test developer can do whatever they want? yet then they have to ensure calling methods on that frame from EDT. >> >> I'd rather not expose the frame at this time. >> >> How often does one need to position the instructions at an arbitrary location on the screen? The `TOP_LEFT_CORNER` position is used by 6 tests only. > > With the instruction frame exposed, it would be possible to create owned modeless `JDialog` or `Dialog` instead of `JFrame` and `Frame` which has a great benefit: all the windows are brought to the top when you switch back to the test from another application. And there's only a single window on the taskbar for the test. > > I've been thinking about adding helper methods `createOwnedJDialog` and `createOwnedDialog` to cover this use case. > > Currently, it's possible to host test UI in a modeless dialog if you use `testUI` with `PanelCreator` that is pass a method which creates `JComponent`. I admit I like navigating the UI much easier in this case. > If you call `.position(PassFailJFrame.Position.TOP_LEFT_CORNER)` after `.positionTestUIRightRow`, it is respected. Perhaps, this behaviour should be called out in the docs somewhere. All `.positionTestUIRight*` as well as `.positionTestUIBottom*` *implicitly* set the position. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778744618 From aivanov at openjdk.org Fri Sep 27 14:56:37 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 27 Sep 2024 14:56:37 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Fri, 27 Sep 2024 14:48:32 GMT, Alexander Zvegintsev wrote: >>> If you call `.position(PassFailJFrame.Position.TOP_LEFT_CORNER)` after `.positionTestUIRightRow`, it is respected. >> >> Perhaps, this behaviour should be called out in the docs somewhere. All `.positionTestUIRight*` as well as `.positionTestUIBottom*` *implicitly* set the position. > >> You can do it by using the InstructionUI interface that's passed to you when you implement a custom layout. > > But it cannot be combined with the newly added methods like: > > > PassFailJFrame.builder() > .instructions(INSTRUCTIONS) > .rows(15) > .columns(30) > .testUI(() -> WindowCreator.createTestWindows(3)) > .positionTestUI((testWindows, instructionUI) -> instructionUI.setLocation(200, 200)) > // or add a new method like > //.instructionFrameLocation(200, 200) > .positionTestUIRightRow() > .build() > .awaitAndCheck(); > > > The idea is to make it very simple without having to implement the `positionTestUI` interface (I am not talking about exposing the frame, see the snippet above). > Like place the instruction frame here, and layout other windows relative to it. > > But I agree it is a rare case. No, not directly. But you can combine it with explicit call to `WindowLayouts`: .positionTestUI((testWindows, instructionUI) -> { instructionUI.setLocation(200, 200); WindowLayouts.rightOneRow(testWindows, instructionUI); }) So, this (rare) scenario still doesn't require you to reimplement everything. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778751155 From azvegint at openjdk.org Fri Sep 27 14:56:37 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 27 Sep 2024 14:56:37 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: <9bkKv8y6M_qcEdzQ9oKzrO4kV0qSmWN2kCqx3wYYzbY=.3f55401f-87dd-4ea3-a7a8-1cd2c6ce1efb@github.com> References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> <9bkKv8y6M_qcEdzQ9oKzrO4kV0qSmWN2kCqx3wYYzbY=.3f55401f-87dd-4ea3-a7a8-1cd2c6ce1efb@github.com> Message-ID: On Fri, 27 Sep 2024 14:39:26 GMT, Alexey Ivanov wrote: >> I tried this >> >> Checkout this PR locally: >> $ git fetch https://git.openjdk.org/jdk.git pull/21210/head:pull/21210 >> $ git checkout pull/21210 >> >> >> And the BottomOneRowCentered example looks like following to me: >> ![image](https://github.com/user-attachments/assets/c455c8f1-91b8-4664-b445-4598a835cedb) > > Yes, I see it now. I wonder why it worked correctly when I ran the tests to take screenshots. jtreg doesn't recompile classes with `@build` (like PassFailJFrame) even if they are changed, so I usually do the `rm -rf JT*` if I touched some of them. This may be your case. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778751391 From azvegint at openjdk.org Fri Sep 27 15:01:35 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 27 Sep 2024 15:01:35 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Fri, 27 Sep 2024 14:53:21 GMT, Alexey Ivanov wrote: >>> You can do it by using the InstructionUI interface that's passed to you when you implement a custom layout. >> >> But it cannot be combined with the newly added methods like: >> >> >> PassFailJFrame.builder() >> .instructions(INSTRUCTIONS) >> .rows(15) >> .columns(30) >> .testUI(() -> WindowCreator.createTestWindows(3)) >> .positionTestUI((testWindows, instructionUI) -> instructionUI.setLocation(200, 200)) >> // or add a new method like >> //.instructionFrameLocation(200, 200) >> .positionTestUIRightRow() >> .build() >> .awaitAndCheck(); >> >> >> The idea is to make it very simple without having to implement the `positionTestUI` interface (I am not talking about exposing the frame, see the snippet above). >> Like place the instruction frame here, and layout other windows relative to it. >> >> But I agree it is a rare case. > > No, not directly. > > But you can combine it with explicit call to `WindowLayouts`: > > > .positionTestUI((testWindows, instructionUI) -> { > instructionUI.setLocation(200, 200); > WindowLayouts.rightOneRow(testWindows, instructionUI); > }) > > > So, this (rare) scenario still doesn't require you to reimplement everything. Oh, I hadn't paid attention to the fact that these methods are public. I guess it is a good solution to my request. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778758261 From azvegint at openjdk.org Fri Sep 27 15:10:35 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 27 Sep 2024 15:10:35 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v3] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Fri, 27 Sep 2024 14:41:57 GMT, Alexey Ivanov wrote: >> Provides a set of default layouts for manual test using multiple test UI windows. >> >> The initial implementation in the demo in #15721 was too complicated. After looking at the simplified version used in #21180, I re-worked the layouts into separate methods. >> >> The layout methods are in `WindowLayouts` class next to `PassFailJFrame`. It is not necessary to mention it explicitly in the `@build` jtreg tag. >> >> The builder now provides new methods: >> >> - `positionTestUIRightRow` positions the test UI windows in a row to the right of the instruction frame. The top of the windows is aligned to that of the instruction frame. >> - `positionTestUIRightColumn` positions the test UI windows in a column to the right of the instruction frame. The top of the first window is aligned to that of the instruction frame. >> - `positionTestUIRightColumnCentered` positions the test UI windows in a column to the right of the instruction frame centering the stack of the windows. >> - `positionTestUIBottomRow` positions the test UI windows in a row to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. >> - `positionTestUIBottomRowCentered` positions the test UI windows in a row to the bottom of the instruction frame centering the row of the windows. >> - `positionTestUIBottomColumn` positions the test UI windows in a column to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. >> >> If required, the test developer can provide a custom implementation. > > Alexey Ivanov has updated the pull request incrementally with two additional commits since the last revision: > > - Remove extra line layoutRow > - bottomOneRowCentered: layoutColumn -> layoutRow Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21207#pullrequestreview-2333995930 From aivanov at openjdk.org Fri Sep 27 15:20:38 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 27 Sep 2024 15:20:38 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Fri, 27 Sep 2024 14:58:31 GMT, Alexander Zvegintsev wrote: >> No, not directly. >> >> But you can combine it with explicit call to `WindowLayouts`: >> >> >> .positionTestUI((testWindows, instructionUI) -> { >> instructionUI.setLocation(200, 200); >> WindowLayouts.rightOneRow(testWindows, instructionUI); >> }) >> >> >> So, this (rare) scenario still doesn't require you to reimplement everything. > > Oh, I hadn't paid attention to the fact that these methods are public. I guess it is a good solution to my request. I like the updated version much better that what I had initially. It's really *flexible* now. One can combine different layouts on sublists to achieve more complex layouts. Yet I am still to play around with it. Anyway more complex layouts are out of scope for this PR. Thank you @azvegint! It is your usage in #21180 that made me realise I had overcomplicated the code for laying out windows. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778791631 From azvegint at openjdk.org Fri Sep 27 15:35:35 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 27 Sep 2024 15:35:35 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v2] In-Reply-To: References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: On Fri, 27 Sep 2024 15:18:10 GMT, Alexey Ivanov wrote: >> Oh, I hadn't paid attention to the fact that these methods are public. I guess it is a good solution to my request. > > I like the updated version much better that what I had initially. It's really *flexible* now. One can combine different layouts on sublists to achieve more complex layouts. Yet I am still to play around with it. Anyway more complex layouts are out of scope for this PR. > > Thank you @azvegint! It is your usage in #21180 that made me realise I had overcomplicated the code for laying out windows. Thank you for implementing this! ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21207#discussion_r1778812242 From aivanov at openjdk.org Fri Sep 27 16:32:15 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 27 Sep 2024 16:32:15 GMT Subject: RFR: 8317116: Provide layouts for multiple test UI in PassFailJFrame [v4] In-Reply-To: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> References: <9minai4Y6OoUTkyplL3RYvd1D07IasQLaiXyj6OWLbo=.8613d393-a538-4510-8ca1-f4e35c9b0b9a@github.com> Message-ID: > Provides a set of default layouts for manual test using multiple test UI windows. > > The initial implementation in the demo in #15721 was too complicated. After looking at the simplified version used in #21180, I re-worked the layouts into separate methods. > > The layout methods are in `WindowLayouts` class next to `PassFailJFrame`. It is not necessary to mention it explicitly in the `@build` jtreg tag. > > The builder now provides new methods: > > - `positionTestUIRightRow` positions the test UI windows in a row to the right of the instruction frame. The top of the windows is aligned to that of the instruction frame. > - `positionTestUIRightColumn` positions the test UI windows in a column to the right of the instruction frame. The top of the first window is aligned to that of the instruction frame. > - `positionTestUIRightColumnCentered` positions the test UI windows in a column to the right of the instruction frame centering the stack of the windows. > - `positionTestUIBottomRow` positions the test UI windows in a row to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. > - `positionTestUIBottomRowCentered` positions the test UI windows in a row to the bottom of the instruction frame centering the row of the windows. > - `positionTestUIBottomColumn` positions the test UI windows in a column to the bottom of the instruction frame. The left of the first window is aligned to that of the instruction frame. > > If required, the test developer can provide a custom implementation. Alexey Ivanov 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 five additional commits since the last revision: - Merge master - Remove extra line layoutRow - bottomOneRowCentered: layoutColumn -> layoutRow - Add missing parentheses for vertical positioning - 8317116: Provide layouts for multiple test UI in PassFailJFrame ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21207/files - new: https://git.openjdk.org/jdk/pull/21207/files/b4876fde..b6f1f334 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21207&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21207&range=02-03 Stats: 2348 lines in 87 files changed: 1668 ins; 565 del; 115 mod Patch: https://git.openjdk.org/jdk/pull/21207.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21207/head:pull/21207 PR: https://git.openjdk.org/jdk/pull/21207 From aivanov at openjdk.org Fri Sep 27 16:41:06 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 27 Sep 2024 16:41:06 GMT Subject: RFR: 8341037: Use standard layouts in DefaultFrameIconTest.java and MenuCrash.java Message-ID: Now that standard window layouts are available as part of the `PassFailJFrame` framework, we can use them in tests. Two tests from #21180, specifically `test/jdk/java/awt/Frame/DefaultFrameIconTest.java` and `test/jdk/java/awt/Frame/MenuCrash.java`, use two test windows. At this time, the tests implement positioning explicitly in the test. After #21207 is integrated, these two tests could be updated to use the standard layout. They would serve as sample usage of multi-window test UI. ------------- Depends on: https://git.openjdk.org/jdk/pull/21207 Commit messages: - Merge branch '8317116-passFail-WindowLayouts' - 8341037: Use standard layouts in DefaultFrameIconTest.java and MenuCrash.java - Merge master Changes: https://git.openjdk.org/jdk/pull/21226/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21226&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8341037 Stats: 22 lines in 2 files changed: 0 ins; 20 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/21226.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21226/head:pull/21226 PR: https://git.openjdk.org/jdk/pull/21226 From azvegint at openjdk.org Fri Sep 27 16:48:35 2024 From: azvegint at openjdk.org (Alexander Zvegintsev) Date: Fri, 27 Sep 2024 16:48:35 GMT Subject: RFR: 8341037: Use standard layouts in DefaultFrameIconTest.java and MenuCrash.java In-Reply-To: References: Message-ID: On Fri, 27 Sep 2024 16:34:52 GMT, Alexey Ivanov wrote: > Now that standard window layouts are available as part of the `PassFailJFrame` framework, we can use them in tests. > > Two tests from #21180, specifically `test/jdk/java/awt/Frame/DefaultFrameIconTest.java` and `test/jdk/java/awt/Frame/MenuCrash.java`, use two test windows. At this time, the tests implement positioning explicitly in the test. After #21207 is integrated, these two tests could be updated to use the standard layout. They would serve as sample usage of multi-window test UI. Marked as reviewed by azvegint (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/21226#pullrequestreview-2334200890 From abhiscxk at openjdk.org Fri Sep 27 18:01:24 2024 From: abhiscxk at openjdk.org (Abhishek Kumar) Date: Fri, 27 Sep 2024 18:01:24 GMT Subject: RFR: 8340354: Open source AWT desktop properties and print related tests [v2] In-Reply-To: References: Message-ID: > AWT Desktop properties and printer related tests are converted from applet to manual and moved to open. Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision: spacing fix ------------- Changes: - all: https://git.openjdk.org/jdk/pull/21197/files - new: https://git.openjdk.org/jdk/pull/21197/files/d511f71f..acab40c8 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=21197&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21197&range=00-01 Stats: 20 lines in 2 files changed: 2 ins; 0 del; 18 mod Patch: https://git.openjdk.org/jdk/pull/21197.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/21197/head:pull/21197 PR: https://git.openjdk.org/jdk/pull/21197 From aivanov at openjdk.org Fri Sep 27 19:46:39 2024 From: aivanov at openjdk.org (Alexey Ivanov) Date: Fri, 27 Sep 2024 19:46:39 GMT Subject: RFR: JDK-8340555 : Open source DnD tests - Set4 [v3] In-Reply-To: References: <049tozCf4dKSaVUlxgE1XtIXbrMfcH9WDmQh_W5Gs4s=.87356976-dfb0-4536-a84f-ca97943518a5@github.com> Message-ID: On Fri, 27 Sep 2024 04:17:30 GMT, Harshitha Onkar wrote: >> Following tests are added as part of this PR: >> >> 1. /java/awt/dnd/DnDHTMLToOutlookTest/DnDHTMLToOutlookTest.java - **Manual PassFailJFrame (PFJ) test**, problemlisted on all platforms. >> >> 2. java/awt/dnd/DragSourceMotionListenerTest.java - **Automated test**, problemlisted on windows >> >> 3. /java/awt/dnd/DragToAnotherScreenTest.java - **Manual PFJ test** >> >> 4. /java/awt/dnd/RejectDragTest.java - **Automated test**, problemlisted on macOS > > Harshitha Onkar has updated the pull request incrementally with one additional commit since the last revision: > > unused imports test/jdk/java/awt/dnd/DnDHTMLToOutlookTest/DnDSource.html line 1: > 1: