aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikita Tsarev <nikita.tsarev@jetbrains.com>2023-08-10 12:46:09 +0200
committerNikita Tsarev <nikita.tsarev@jetbrains.com>2023-08-10 12:46:09 +0200
commit7971b98a99908aac268bf324df3dd829abfc1bda (patch)
tree7d4220701914fa64eaf416044d61287e25668c8e
parent8907bf5479c0f8979544fbf9dfa2ac0c4b0ba359 (diff)
downloadJetBrainsRuntime-7971b98a99908aac268bf324df3dd829abfc1bda.tar.gz
JBR-5896: Fix WLToolkit being instantiated twice
-rw-r--r--src/java.desktop/unix/classes/sun/awt/wl/WLGraphicsEnvironment.java2
-rw-r--r--src/java.desktop/unix/classes/sun/awt/wl/WLToolkit.java7
2 files changed, 8 insertions, 1 deletions
diff --git a/src/java.desktop/unix/classes/sun/awt/wl/WLGraphicsEnvironment.java b/src/java.desktop/unix/classes/sun/awt/wl/WLGraphicsEnvironment.java
index 6abe66a9e45..359cba5eb0e 100644
--- a/src/java.desktop/unix/classes/sun/awt/wl/WLGraphicsEnvironment.java
+++ b/src/java.desktop/unix/classes/sun/awt/wl/WLGraphicsEnvironment.java
@@ -131,7 +131,7 @@ public class WLGraphicsEnvironment extends SunGraphicsEnvironment {
}
// Skip notification during the initial configuration events
- if (EventQueue.isDispatchThread()) {
+ if (WLToolkit.isInitialized()) {
displayChanged();
}
}
diff --git a/src/java.desktop/unix/classes/sun/awt/wl/WLToolkit.java b/src/java.desktop/unix/classes/sun/awt/wl/WLToolkit.java
index 5f390a91898..28783e42373 100644
--- a/src/java.desktop/unix/classes/sun/awt/wl/WLToolkit.java
+++ b/src/java.desktop/unix/classes/sun/awt/wl/WLToolkit.java
@@ -133,12 +133,15 @@ public class WLToolkit extends UNIXToolkit implements Runnable {
private static final int MOUSE_BUTTONS_COUNT = 3;
private static final int AWT_MULTICLICK_DEFAULT_TIME_MS = 500;
+ private static boolean initialized = false;
+
private static native void initIDs();
static {
if (!GraphicsEnvironment.isHeadless()) {
initIDs();
}
+ initialized = true;
}
@SuppressWarnings("removal")
@@ -1005,4 +1008,8 @@ public class WLToolkit extends UNIXToolkit implements Runnable {
static void resetPointerInputState() {
inputState = inputState.resetPointerState();
}
+
+ static boolean isInitialized() {
+ return initialized;
+ }
}