public void when_property_notify (PropertyNotify event) {
    Atom atom = event.atom (display);

    Client client = (Client) Client.intern (display, event.window_id);
    if (client.early_destroyed) return;

    if (atom == wm_colormap_windows
      || atom == wm_protocols)
      throw new java.lang.Error ("unhandled property notfiy: " + atom);

    switch (atom.id) {  
    case Atom.WM_HINTS_ID:	// TODO any action?
      client.wm_hints ();
      break;

    case Atom.WM_NORMAL_HINTS_ID: // TODO any action?
      client.size_hints = client.wm_normal_hints ();
      break;

    case Atom.WM_NAME_ID:	
      client.name = client.wm_name ();
      break;

    case Atom.WM_ICON_NAME_ID:	// fall through
    case Atom.WM_TRANSIENT_FOR_ID:
      // ignore (normal window manager should handle these)
      break;
    }
  }