#include "client.h"
 #include "menu.h"
 #include "screen.h"
+#include "prop.h"
 #include "actions.h"
 #include "grab.h"
 #include "openbox.h"
     self->window = createWindow(RootWindow(ob_display, ob_screen),
                                 CWEventMask, &attr);
 
+    /* make it a popup menu type window */
+    PROP_SET32(self->window, net_wm_window_type, atom,
+               prop_atoms.net_wm_window_type_popup_menu);
+
     XSetWindowBorderWidth(ob_display, self->window, ob_rr_theme->mbwidth);
     XSetWindowBorder(ob_display, self->window,
                      RrColorPixel(ob_rr_theme->menu_border_color));
 
     CREATE(net_wm_window_type_splash, "_NET_WM_WINDOW_TYPE_SPLASH");
     CREATE(net_wm_window_type_dialog, "_NET_WM_WINDOW_TYPE_DIALOG");
     CREATE(net_wm_window_type_normal, "_NET_WM_WINDOW_TYPE_NORMAL");
+    CREATE(net_wm_window_type_popup_menu, "_NET_WM_WINDOW_TYPE_POPUP_MENU");
 
     prop_atoms.net_wm_moveresize_size_topleft = 0;
     prop_atoms.net_wm_moveresize_size_top = 1;
 
     Atom net_wm_bottomright;
     Atom net_wm_bottomleft;
 
+    /* types that we use but don't support */
+
+    Atom net_wm_window_type_popup_menu;
+
     /* Everything below here must go in net_supported on the root window */
 
     /* root window properties */