add support for _NET_WM_WINDOW_TYPE_DIALOG

This commit is contained in:
Julien Danjou 2008-01-06 22:28:27 +01:00
parent b4ff03c27e
commit 7faa483e89
1 changed files with 6 additions and 1 deletions

7
ewmh.c
View File

@ -47,6 +47,7 @@ static Atom net_wm_window_type;
static Atom net_wm_window_type_normal;
static Atom net_wm_window_type_dock;
static Atom net_wm_window_type_splash;
static Atom net_wm_window_type_dialog;
static Atom net_wm_icon;
static Atom net_wm_state;
static Atom net_wm_state_sticky;
@ -78,6 +79,7 @@ static AtomItem AtomNames[] =
{ "_NET_WM_WINDOW_TYPE_NORMAL", &net_wm_window_type_normal },
{ "_NET_WM_WINDOW_TYPE_DOCK", &net_wm_window_type_dock },
{ "_NET_WM_WINDOW_TYPE_SPLASH", &net_wm_window_type_splash },
{ "_NET_WM_WINDOW_TYPE_DIALOG", &net_wm_window_type_dialog },
{ "_NET_WM_ICON", &net_wm_icon },
{ "_NET_WM_STATE", &net_wm_state },
{ "_NET_WM_STATE_STICKY", &net_wm_state_sticky },
@ -128,6 +130,7 @@ ewmh_set_supported_hints(int phys_screen)
atom[i++] = net_wm_window_type_normal;
atom[i++] = net_wm_window_type_dock;
atom[i++] = net_wm_window_type_splash;
atom[i++] = net_wm_window_type_dialog;
atom[i++] = net_wm_icon;
atom[i++] = net_wm_state;
atom[i++] = net_wm_state_sticky;
@ -273,7 +276,7 @@ ewmh_process_window_type_atom(Client *c, Atom state)
{
if(state == net_wm_window_type_normal)
{
/* do nothing */
/* do nothing. this is REALLY IMPORTANT */
}
else if(state == net_wm_window_type_dock
|| state == net_wm_window_type_splash)
@ -283,6 +286,8 @@ ewmh_process_window_type_atom(Client *c, Atom state)
c->isfixed = True;
c->isfloating = True;
}
else if (state == net_wm_window_type_dialog)
c->isfloating = True;
}
void
ewmh_process_client_message(XClientMessageEvent *ev)