void updateWMName() {
   String name = getWMName();
   XToolkit.awtLock();
   try {
     if (name == null) {
       name = " ";
     }
     XAtom nameAtom = XAtom.get(XAtom.XA_WM_NAME);
     nameAtom.setProperty(getWindow(), name);
     XAtom netNameAtom = XAtom.get("_NET_WM_NAME");
     netNameAtom.setPropertyUTF8(getWindow(), name);
   } finally {
     XToolkit.awtUnlock();
   }
 }
 public void handlePropertyNotify(XEvent xev) {
   XPropertyEvent msg = xev.get_xproperty();
   if (XPropertyCache.isCachingSupported()) {
     XPropertyCache.clearCache(window, XAtom.get(msg.get_atom()));
   }
   if (eventLog.isLoggable(Level.FINER)) {
     eventLog.log(Level.FINER, "{0}", new Object[] {String.valueOf(msg)});
   }
 }
 protected void initClientLeader() {
   XToolkit.awtLock();
   try {
     if (wm_client_leader == null) {
       wm_client_leader = XAtom.get("WM_CLIENT_LEADER");
     }
     wm_client_leader.setWindowProperty(this, getXAWTRootWindow());
   } finally {
     XToolkit.awtUnlock();
   }
 }
 void setWMClass(String[] cl) {
   if (cl.length != 2) {
     throw new IllegalArgumentException("WM_CLASS_NAME consists of exactly two strings");
   }
   XToolkit.awtLock();
   try {
     XAtom xa = XAtom.get(XAtom.XA_WM_CLASS);
     xa.setProperty8(getWindow(), cl[0] + '\0' + cl[1]);
   } finally {
     XToolkit.awtUnlock();
   }
 }