Compare commits

...

3 Commits

17 changed files with 116 additions and 161 deletions

View File

@@ -49,8 +49,7 @@
NSString* actualCharacters;
BOOL fEnablePressAndHold;
BOOL fInPressAndHold;
BOOL fPAHNeedsToSelect;
BOOL fIsPressAndHold;
id cglLayer; // is a sublayer of view.layer

View File

@@ -93,7 +93,6 @@ extern bool isSystemShortcut_NextWindowInApplication(NSUInteger modifiersMask, i
lastCtrlCombo = 0;
fEnablePressAndHold = shouldUsePressAndHold();
fInPressAndHold = NO;
mouseIsOver = NO;
[self resetTrackingArea];
@@ -373,10 +372,10 @@ static void debugPrintNSEvent(NSEvent* event, const char* comment) {
debugPrintNSEvent(event, "keyDown");
#endif
// Check for willBeHandledByComplexInputMethod here, because interpretKeyEvents might invalidate that field
bool isPressAndHold = fEnablePressAndHold && [event willBeHandledByComplexInputMethod] && fInputMethodLOCKABLE;
fIsPressAndHold = fEnablePressAndHold && [event willBeHandledByComplexInputMethod] && fInputMethodLOCKABLE;
fProcessingKeystroke = YES;
fKeyEventsNeeded = YES;
fKeyEventsNeeded = !fIsPressAndHold;
NSString *eventCharacters = [event characters];
unsigned mods = [event modifierFlags] & NSEventModifierFlagDeviceIndependentFlagsMask;
@@ -392,35 +391,39 @@ static void debugPrintNSEvent(NSEvent* event, const char* comment) {
[self interpretKeyEvents:[NSArray arrayWithObject:event]];
}
if (isPressAndHold)
if (fIsPressAndHold)
{
BOOL skipProcessingCancelKeys = YES;
fIsPressAndHold = NO;
BOOL skipProcessingCancelKeys = NO;
fProcessingKeystroke = NO;
if (!fInPressAndHold) {
fInPressAndHold = YES;
} else {
// Abandon input to reset IM and unblock input after canceling
// input accented symbols
// Abandon input to reset IM and unblock input after canceling
// input accented symbols
switch([event keyCode]) {
case kVK_ForwardDelete:
case kVK_Delete:
skipProcessingCancelKeys = NO;
case kVK_Return:
case kVK_Escape:
case kVK_PageUp:
case kVK_PageDown:
case kVK_DownArrow:
case kVK_UpArrow:
case kVK_Home:
case kVK_End:
// Abandon input to reset IM and unblock input after
// canceling input accented symbols
[self abandonInput:nil];
break;
}
switch([event keyCode]) {
case kVK_Return:
case kVK_Escape:
case kVK_PageUp:
case kVK_PageDown:
case kVK_DownArrow:
case kVK_UpArrow:
case kVK_Home:
case kVK_End:
skipProcessingCancelKeys = YES;
case kVK_ForwardDelete:
case kVK_Delete:
// Abandon input to reset IM and unblock input after
// canceling input accented symbols
#ifdef LOG_KEY_EVENTS
fprintf(stderr, "[AWTView.m] Abandoning input in the keyDown event\n");
#endif
[self abandonInput:nil];
break;
}
if (skipProcessingCancelKeys) {
#ifdef LOG_KEY_EVENTS
fprintf(stderr, "[AWTView.m] Skipping the keyDown event: isPressAndHold && skipProcessingCancelKeys\n");
#endif
return;
}
}
@@ -430,6 +433,14 @@ static void debugPrintNSEvent(NSEvent* event, const char* comment) {
if ((![self hasMarkedText] && fKeyEventsNeeded) || isDeadKey) {
[self deliverJavaKeyEventHelper: event];
}
#ifdef LOG_KEY_EVENTS
else {
fprintf(stderr, "[AWTView.m] Skipping the keyDown event: ([self hasMarkedText] || !fKeyEventsNeeded) && !isDeadKey\n");
fprintf(stderr, "[AWTView.m] hasMarkedText: %s\n", [self hasMarkedText] ? "YES" : "NO");
fprintf(stderr, "[AWTView.m] fKeyEventsNeeded: %s\n", fKeyEventsNeeded ? "YES" : "NO");
fprintf(stderr, "[AWTView.m] isDeadKey: %s\n", isDeadKey ? "YES" : "NO");
}
#endif
if (actualCharacters != nil) {
[actualCharacters release];
@@ -458,7 +469,7 @@ static void debugPrintNSEvent(NSEvent* event, const char* comment) {
debugPrintNSEvent(event, "performKeyEquivalent");
#endif
// if IM is active key events should be ignored
if (![self hasMarkedText] && !fInPressAndHold) {
if (![self hasMarkedText] && !fIsPressAndHold) {
[self deliverJavaKeyEventHelper: event];
}
@@ -629,6 +640,9 @@ static void debugPrintNSEvent(NSEvent* event, const char* comment) {
static NSEvent* sLastKeyEvent = nil;
if (event == sLastKeyEvent) {
// The event is repeatedly delivered by keyDown: after performKeyEquivalent:
#ifdef LOG_KEY_EVENTS
fprintf(stderr, "[AWTView.m] deliverJavaKeyEventHelper: ignoring duplicate events\n");
#endif
return;
}
[sLastKeyEvent release];
@@ -1176,9 +1190,6 @@ static jclass jc_CInputMethod = NULL;
return;
}
// Insert happens at the end of PAH
fInPressAndHold = NO;
// insertText gets called when the user commits text generated from an input method. It also gets
// called during ordinary input as well. We only need to send an input method event when we have marked
// text, or 'text in progress'. We also need to send the event if we get an insert text out of the blue!

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2024, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2021, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -23,6 +23,7 @@
* questions.
*/
package java.awt;
import java.awt.image.BufferedImage;
@@ -37,6 +38,7 @@ import sun.font.FontManager;
import sun.font.FontManagerFactory;
import sun.java2d.HeadlessGraphicsEnvironment;
import sun.java2d.SunGraphicsEnvironment;
import sun.security.action.GetPropertyAction;
/**
*

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2019, 2024, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -28,41 +28,20 @@ package sun.awt;
import java.awt.GraphicsEnvironment;
import java.awt.Toolkit;
import sun.awt.windows.WToolkit;
public class PlatformGraphicsInfo {
private static final boolean hasDisplays;
static {
loadAWTLibrary();
hasDisplays = hasDisplays0();
}
@SuppressWarnings("removal")
private static void loadAWTLibrary() {
java.security.AccessController.doPrivileged(
new java.security.PrivilegedAction<Void>() {
public Void run() {
System.loadLibrary("awt");
return null;
}
});
}
private static native boolean hasDisplays0();
public static GraphicsEnvironment createGE() {
return new Win32GraphicsEnvironment();
}
public static Toolkit createToolkit() {
return new WToolkit();
return new sun.awt.windows.WToolkit();
}
public static boolean getDefaultHeadlessProperty() {
// If we don't find usable displays, we run headless.
return !hasDisplays;
// On Windows, we assume we can always create headful apps.
// Here is where we can add code that would actually check.
return false;
}
/*

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 1997, 2024, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -66,8 +66,7 @@ public final class Win32GraphicsEnvironment extends SunGraphicsEnvironment {
WToolkit.loadLibraries();
// setup flags before initializing native layer
WindowsFlags.initFlags();
initDisplay();
initDisplayWrapper();
// Install correct surface manager factory.
SurfaceManagerFactory.setInstance(new WindowsSurfaceManagerFactory());
@@ -89,12 +88,21 @@ public final class Win32GraphicsEnvironment extends SunGraphicsEnvironment {
}
/**
* Initializes native components of the graphics environment. This
* Initializes native components of the graphics environment. This
* includes everything from the native GraphicsDevice elements to
* the DirectX rendering layer.
*/
private static native void initDisplay();
private static boolean displayInitialized; // = false;
public static void initDisplayWrapper() {
if (!displayInitialized) {
displayInitialized = true;
if (!isUIScaleEnabled()) setProcessDPIAwareness(PROCESS_SYSTEM_DPI_AWARE);
initDisplay();
}
}
public Win32GraphicsEnvironment() {
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2001, 2024, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -85,75 +85,60 @@
#include "Trace.h"
#include "D3DPipelineManager.h"
typedef struct {
int monitorCounter;
int monitorLimit;
HMONITOR* hmpMonitors;
} MonitorData;
/* Some helper functions (from awt_MMStub.h/cpp) */
// Only monitors where CreateDC does not fail are valid
static BOOL IsValidMonitor(HMONITOR hMon)
{
MONITORINFOEX mieInfo;
memset((void*)(&mieInfo), 0, sizeof(MONITORINFOEX));
mieInfo.cbSize = sizeof(MONITORINFOEX);
if (!::GetMonitorInfo(hMon, (LPMONITORINFOEX)(&mieInfo))) {
J2dTraceLn1(J2D_TRACE_INFO, "Devices::IsValidMonitor: GetMonitorInfo failed for monitor with handle %p", hMon);
return FALSE;
}
HDC hDC = CreateDC(mieInfo.szDevice, NULL, NULL, NULL);
if (NULL == hDC) {
J2dTraceLn2(J2D_TRACE_INFO, "Devices::IsValidMonitor: CreateDC failed for monitor with handle %p, device: %S", hMon, mieInfo.szDevice);
return FALSE;
}
::DeleteDC(hDC);
return TRUE;
}
int g_nMonitorCounter;
int g_nMonitorLimit;
HMONITOR* g_hmpMonitors;
// Callback for CountMonitors below
static BOOL WINAPI clb_fCountMonitors(HMONITOR hMon, HDC hDC, LPRECT rRect, LPARAM lpMonitorCounter)
BOOL WINAPI clb_fCountMonitors(HMONITOR hMon, HDC hDC, LPRECT rRect, LPARAM lP)
{
if (IsValidMonitor(hMon)) {
(*((int *)lpMonitorCounter))++;
}
g_nMonitorCounter ++;
return TRUE;
}
int WINAPI CountMonitors(void)
{
int monitorCounter = 0;
::EnumDisplayMonitors(NULL, NULL, clb_fCountMonitors, (LPARAM)&monitorCounter);
return monitorCounter;
g_nMonitorCounter = 0;
::EnumDisplayMonitors(NULL, NULL, clb_fCountMonitors, 0L);
return g_nMonitorCounter;
}
// Callback for CollectMonitors below
static BOOL WINAPI clb_fCollectMonitors(HMONITOR hMon, HDC hDC, LPRECT rRect, LPARAM lpMonitorData)
BOOL WINAPI clb_fCollectMonitors(HMONITOR hMon, HDC hDC, LPRECT rRect, LPARAM lP)
{
MonitorData* pMonitorData = (MonitorData *)lpMonitorData;
if ((pMonitorData->monitorCounter < pMonitorData->monitorLimit) && (IsValidMonitor(hMon))) {
pMonitorData->hmpMonitors[pMonitorData->monitorCounter] = hMon;
pMonitorData->monitorCounter++;
if ((g_nMonitorCounter < g_nMonitorLimit) && (NULL != g_hmpMonitors)) {
g_hmpMonitors[g_nMonitorCounter] = hMon;
g_nMonitorCounter ++;
}
return TRUE;
}
static int WINAPI CollectMonitors(HMONITOR* hmpMonitors, int nNum)
int WINAPI CollectMonitors(HMONITOR* hmpMonitors, int nNum)
{
int retCode = 0;
if (NULL != hmpMonitors) {
MonitorData monitorData;
monitorData.monitorCounter = 0;
monitorData.monitorLimit = nNum;
monitorData.hmpMonitors = hmpMonitors;
::EnumDisplayMonitors(NULL, NULL, clb_fCollectMonitors, (LPARAM)&monitorData);
return monitorData.monitorCounter;
} else {
return 0;
g_nMonitorCounter = 0;
g_nMonitorLimit = nNum;
g_hmpMonitors = hmpMonitors;
::EnumDisplayMonitors(NULL, NULL, clb_fCollectMonitors, 0L);
retCode = g_nMonitorCounter;
g_nMonitorCounter = 0;
g_nMonitorLimit = 0;
g_hmpMonitors = NULL;
}
return retCode;
}
BOOL WINAPI MonitorBounds(HMONITOR hmMonitor, RECT* rpBounds)

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2001, 2024, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -74,6 +74,4 @@ static CriticalSection arrayLock;
BOOL WINAPI MonitorBounds (HMONITOR, RECT*);
int WINAPI CountMonitors (void);
#endif // _DEVICES_H_

View File

@@ -1,37 +0,0 @@
/*
* Copyright (c) 2024 SAP SE. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
#include <sun_awt_PlatformGraphicsInfo.h>
#include "Devices.h"
/*
* Class: sun_awt_PlatformGraphicsInfo
* Method: hasDisplays0
* Signature: ()Z
*/
JNIEXPORT jboolean JNICALL
Java_sun_awt_PlatformGraphicsInfo_hasDisplays0(JNIEnv *env, jclass thisClass) {
return CountMonitors() > 0 ? JNI_TRUE : JNI_FALSE;
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 1999, 2024, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1999, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -180,9 +180,7 @@ void AwtWin32GraphicsDevice::Initialize()
}
gpBitmapInfo->bmiHeader.biBitCount = 0;
HDC hBMDC = this->GetDC();
VERIFY(hBMDC != NULL);
HBITMAP hBM = ::CreateCompatibleBitmap(hBMDC, 1, 1);
VERIFY(hBM != NULL);
VERIFY(::GetDIBits(hBMDC, hBM, 0, 1, NULL, gpBitmapInfo, DIB_RGB_COLORS));
if (colorData->bitsperpixel > 8) {

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 1999, 2024, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1999, 2023, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -36,8 +36,10 @@
BOOL DWMIsCompositionEnabled();
void initScreens(JNIEnv *env) {
if (!Devices::UpdateInstance(env)) {
JNU_ThrowInternalError(env, "Could not update the devices array.");
return;
}
}

View File

@@ -156,6 +156,7 @@ runtime/CompressedOops/CompressedClassPointers.java 8305765 generic-all
runtime/StackGuardPages/TestStackGuardPagesNative.java 8303612 linux-all
runtime/ErrorHandling/TestDwarf.java 8305489 linux-all
runtime/ErrorHandling/MachCodeFramesInErrorFile.java 8313315,JBR-6289 linux-ppc64le,windows-aarch64
runtime/ErrorHandling/UncaughtNativeExceptionTest.java 8338353 windows-aarch64
runtime/Thread/ThreadCountLimit.java#id0 JBR-7286 linux-x64
applications/jcstress/copy.java 8229852 linux-all

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2018, 2024, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2018, 2021, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -33,6 +33,7 @@ import java.nio.file.attribute.BasicFileAttributes;
/**
* @test
* @bug 8189604 8208702
* @requires !vm.debug | os.family != "windows"
* @run main/othervm -Djava.awt.headless=false HangDuringStaticInitialization
* @run main/othervm -Djava.awt.headless=true HangDuringStaticInitialization
*/

View File

@@ -1,4 +1,5 @@
java/awt/Choice/ChoiceHandleMouseEvent_2.java JBR-7174 windows-all
java/awt/Graphics/XORPaint.java#id0 JBR-7499 windows-x64
java/awt/Toolkit/LWCToolkitInvokeAndWaitTest.java nobug macosx-all,linux-all,windows-all
java/awt/Toolkit/AWTThreadingTest.java nobug macosx-all,linux-all,windows-all
java/awt/Toolkit/AWTThreadingCMenuTest.java nobug macosx-all,linux-all,windows-all
@@ -8,6 +9,7 @@ java/awt/List/NofocusListDblClickTest/NofocusListDblClickTest.java nobug macosx-
java/awt/Paint/PaintNativeOnUpdate.java JBR-5397,JBR-7415 macosx-all,windows-x64
java/awt/PopupMenu/PopupMenuLocation.java JBR-5397,JBR-7375 macosx-all,windows-x64
java/awt/Robot/CheckCommonColors/CheckCommonColors.java JBR-5397,JBR-6092 macosx-all,windows-x64
java/awt/Robot/NonEmptyErrorStream.java JBR-5510,JBR-7375 linux-5.18.2-arch1-1,windows-x64
java/awt/Robot/RobotWheelTest/RobotWheelTest.java JBR-5397,JBR-7377 macosx-all,windows-x64
java/awt/Window/BackgroundIsNotUpdated/BackgroundIsNotUpdated.java JBR-5397,JBR-7378 macosx-all,windows-x64

View File

@@ -18,6 +18,9 @@ javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucent.java JBR-714
javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucentGradient.java JBR-7146 macosx-12.7.4,macosx-12.7.5,macosx-12.7.6
javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentPerPixelTranslucentGradient.java JBR-7146 macosx-12.7.4,macosx-12.7.5,macosx-12.7.6
javax/swing/plaf/metal/MetalBorders/ScaledMetalBorderTest.java#id1 JBR-7146 macosx-12.7.4,macosx-12.7.5,macosx-12.7.6
javax/swing/SwingGraphics/TranslateTest.java JBR-7510 macosx-aarch64
javax/swing/system/6799345/TestShutdown.java JBR-6881 macosx-12.7.4
jb/java/awt/Window/MacNativeTransparentTitlebarWithCustomHeight.java JBR-7146 macosx-12.7.4,macosx-12.7.5,macosx-12.7.6
jb/java/awt/Window/MacNativeTransparentTitlebarWithCustomHeight.java JBR-7146 macosx-12.7.4,macosx-12.7.5,macosx-12.7.6
sun/java2d/SunGraphics2D/DrawImageBilinear.java JBR-7146 macosx-12.7.4,macosx-12.7.5,macosx-12.7.6

View File

@@ -112,11 +112,11 @@
############################################################################
java/awt/Dialog/CloseDialog/CloseDialogTest.java JBR-6538 windows-all
java/awt/EventQueue/6980209/bug6980209.java 8198615,JBR-6699 macosx-all,linux-all
java/awt/EventQueue/6980209/bug6980209.java 8198615,JBR-6699,JBR-7505 macosx-all,linux-all,windows-all
java/awt/Focus/6378278/InputVerifierTest.java JBR-6700 linux-all
java/awt/Focus/6382144/EndlessLoopTest.java JBR-6701 linux-all
java/awt/Focus/6981400/Test1.java 8029675,JBR-6702 windows-all,macosx-all,linux-all
java/awt/Focus/8013611/JDK8013611.java JBR-7338 linux-all
java/awt/Focus/8013611/JDK8013611.java JBR-7338,JBR-7506 linux-all,windows-all
java/awt/Focus/8073453/SwingFocusTransitionTest.java JBR-7339 linux-all
java/awt/Focus/8282640/ScrollPaneFocusBugTest.java JBR-7340 linux-all
java/awt/Focus/ChoiceFocus/ChoiceFocus.java JBR-7341 linux-all

View File

@@ -30,6 +30,7 @@ java/awt/PopupMenu/PopupMenuLocation.java initial_runs generic-all
java/awt/PopupMenu/PopupMenuStayOpen.java initial_runs generic-all
java/awt/TextArea/AutoScrollOnSelectAndAppend/AutoScrollOnSelectAndAppend.java initial_runs generic-all
java/awt/TextComponent/MiddleMouseClickPasteTest.java initial_runs generic-all
java/awt/Window/FindOwner/FindOwnerTest.html JBR-7500 linux-all
java/awt/Window/ShapedAndTranslucentWindows/TranslucentChoice.java initial_runs generic-all
javax/imageio/plugins/shared/ImageWriterCompressionTest.java initial_runs generic-all
javax/swing/JCheckBox/ImageCheckboxFocus/ImageCheckboxTest.java initial_runs generic-all
@@ -40,6 +41,7 @@ javax/swing/JEditorPane/6917744/bug6917744.java initial_runs generic-all
javax/swing/JFileChooser/4400728/JFileChooserDefaultDirectoryTest.java initial_runs generic-all
javax/swing/JFileChooser/FileViewNPETest.java initial_runs generic-all
javax/swing/JFormattedTextField/TestSelectedTextBackgroundColor.java initial_runs generic-all
javax/swing/JFrame/JFrameBackgroundRefreshTest.java JBR-7471 linux-all
javax/swing/JMenu/TestDisabledMenuForegroundColor.java initial_runs generic-all
javax/swing/JPasswordField/TestSelectedTextBackgroundColor.java initial_runs generic-all
javax/swing/JScrollBar/bug4202954/bug4202954.java initial_runs generic-all

View File

@@ -1003,7 +1003,7 @@ javax/swing/JTree/DnD/LastNodeLowerHalfDrop.java 8159131 linux-all
javax/swing/JTree/4330357/bug4330357.java 8253184,JBR-6466 windows-all,linux-all
javax/swing/JTree/4633594/JTreeFocusTest.java 7105441,8173125,JBR-5210 macosx-all,windows-all
javax/swing/JTree/4908142/bug4908142.java 8197552,JBR-151 windows-all
javax/swing/AbstractButton/6711682/bug6711682.java 8060765 windows-all,macosx-all,linux-5.15.0-39-generic,linux-5.15.0-33-generic,linux-5.19.0-1025-aws
javax/swing/AbstractButton/6711682/bug6711682.java 8060765 windows-all,macosx-all,linux-5.15.0-39-generic,linux-5.15.0-33-generic,linux-5.19.0-1025-aws,linux-6.5.0-1024-aws
javax/swing/Action/8133039/bug8133039.java JBR-5210 windows-all
javax/swing/ButtonGroup/TestButtonGroupFocusTraversal.java JBR-5210 windows-all
javax/swing/event/RightAltKeyTest.java JBR-5210 windows-all
@@ -1065,6 +1065,7 @@ javax/swing/JRadioButton/4314194/bug4314194.java 8298153 linux-all
javax/swing/JRootPane/4670486/bug4670486.java 8197552 windows-all
javax/swing/JRootPane/DefaultButtonTest.java JBR-5739 windows-all,linux-all
javax/swing/text/html/HTMLEditorKit/5043626/bug5043626.java JBR-5210 windows-all
javax/swing/text/html/StyleSheet/bug4476002.java JBR-7498 linux-5.18.2-arch1-1
javax/swing/text/html/StyleSheet/bug4936917.java JBR-899,JBR-5510 windows-all,linux-5.18.2-arch1-1
javax/swing/plaf/metal/MetalBorders/ScaledMetalBorderTest.java#id0 JBR-5799 windows-all
javax/swing/plaf/metal/MetalBorders/ScaledMetalBorderTest.java#id1 JBR-5779 linux-all