Implement putting clients into floating mode at a specific workspace

This changes syntax of the assign command a bit. Old configurations
will continue to work. See the userguide.
This commit is contained in:
Michael Stapelberg
2009-07-21 16:43:20 +02:00
parent 008a2665c1
commit ffcc8bbc3a
4 changed files with 38 additions and 13 deletions

View File

@ -311,10 +311,12 @@ void reparent_window(xcb_connection_t *conn, xcb_window_t child,
if (get_matching_client(conn, assign->windowclass_title, new) == NULL)
continue;
if (assign->floating) {
if (assign->floating == ASSIGN_FLOATING_ONLY ||
assign->floating == ASSIGN_FLOATING) {
new->floating = FLOATING_AUTO_ON;
LOG("Assignment matches, putting client into floating mode\n");
break;
if (assign->floating == ASSIGN_FLOATING_ONLY)
break;
}
LOG("Assignment \"%s\" matches, so putting it on workspace %d\n",