--- a/jdk/src/solaris/classes/sun/awt/X11/XToolkit.java Tue Aug 12 12:00:46 2008 +0400
+++ b/jdk/src/solaris/classes/sun/awt/X11/XToolkit.java Thu Aug 14 12:58:51 2008 +0400
@@ -97,6 +97,11 @@
static int awt_multiclick_time;
static boolean securityWarningEnabled;
+ // WeakSet should be used here, but there is no such class
+ // in JDK (at least in JDK6 and earlier versions)
+ private WeakHashMap<Window, Boolean> overrideRedirectWindows =
+ new WeakHashMap<Window, Boolean>();
+
private static int screenWidth = -1, screenHeight = -1; // Dimensions of default screen
static long awt_defaultFg; // Pixel
private static XMouseInfoPeer xPeer;
@@ -1248,6 +1253,19 @@
}
}
+ @Override
+ public void setOverrideRedirect(Window target) {
+ synchronized (overrideRedirectWindows) {
+ overrideRedirectWindows.put(target, true);
+ }
+ }
+
+ public boolean isOverrideRedirect(Window target) {
+ synchronized (overrideRedirectWindows) {
+ return overrideRedirectWindows.containsKey(target);
+ }
+ }
+
static void dumpPeers() {
if (log.isLoggable(Level.FINE)) {
log.fine("Mapped windows:");