I added this in my awful.rules.rules:
{ rule = { },
properties = { },
callback = awful.client.setslave },
(which I found on awesome wiki).
The problem I have with the above setup is that it affects windows that
shouldn't be affected at all.
I could reproduce with a fresh config with the lines above added, and the
following scenario:
- Set tags 1 and 2 to tile layout
- Open 2 apps on tag 1
- Open 1 app on tag 2
- Set the slave app from tag 1 to also be displayed on tag 2
- Go to tag 2
- Open an application. It will flicker (it looks like the app is actually
set as master then forced as slave), and the app will eventually be
displayed below the app you now have on both tags 1 and 2.
- Switch to tag 1. The app you have on both tags 1 and 2 is now master
instead of slave.
Note it doesn't work reliably though it is reproducible more often than
not. Another probably related issue is that promoting a slave window that
is on several tags to master (and/or setting a master window as slave) on
one particular tag *sometimes* makes the change on some or all other
tags it is on.