client: handle fixed window stacking and DIALOG windows

Signed-off-by: Julien Danjou <julien@danjou.info>
This commit is contained in:
Julien Danjou 2008-11-06 16:04:20 +01:00
parent eb20df8dfc
commit 922f5a50da
1 changed files with 3 additions and 2 deletions

View File

@ -279,7 +279,7 @@ client_layer_translator(client_t *c)
return LAYER_FULLSCREEN; return LAYER_FULLSCREEN;
else if(c->isabove) else if(c->isabove)
return LAYER_ABOVE; return LAYER_ABOVE;
else if(c->isfloating) else if(c->isfloating || client_isfixed(c))
return LAYER_FLOAT; return LAYER_FLOAT;
else if(c->transient_for) else if(c->transient_for)
return LAYER_TRANSIENT_FOR; return LAYER_TRANSIENT_FOR;
@ -290,6 +290,8 @@ client_layer_translator(client_t *c)
return LAYER_ABOVE; return LAYER_ABOVE;
case WINDOW_TYPE_DESKTOP: case WINDOW_TYPE_DESKTOP:
return LAYER_DESKTOP; return LAYER_DESKTOP;
case WINDOW_TYPE_DIALOG:
return LAYER_FLOAT;
default: default:
return LAYER_TILE; return LAYER_TILE;
} }
@ -362,7 +364,6 @@ client_stack()
client_stack_position(node->client, client_stack_position(node->client,
XCB_STACK_MODE_ABOVE, XCB_STACK_MODE_ABOVE,
node->client->transient_for->win); node->client->transient_for->win);
} }
/** Manage a new client. /** Manage a new client.