set the window type hint on menus to be "popup menus"

This commit is contained in:
Dana Jansens 2008-02-14 23:04:54 -05:00
parent cec5480108
commit 0c8aca23eb
3 changed files with 10 additions and 0 deletions

View file

@ -21,6 +21,7 @@
#include "client.h"
#include "menu.h"
#include "screen.h"
#include "prop.h"
#include "actions.h"
#include "grab.h"
#include "openbox.h"
@ -89,6 +90,10 @@ ObMenuFrame* menu_frame_new(ObMenu *menu, guint show_from, ObClient *client)
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));

View file

@ -112,6 +112,7 @@ void prop_startup(void)
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;

View file

@ -86,6 +86,10 @@ typedef struct Atoms {
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 */