Hi David, On 26 July 2010 22:32, David DEMELIER <demelier.da...@gmail.com> wrote: > There is something that make me sad with dwm, there is a lack of role > rules for clients. I explain : clients have instance and name using > WM_CLASS, but there is also WM_WINDOW_ROLE which is really important > and useful. > > Example : you want your firefox window tiled but not the download > manager or not the preference client you could make a rule that catch > the WM_WINDOW_ROLE > > -> xprop WM_WINDOW_ROLE on the firefox windows and sub-windows > --> xprop WM_WINDOW_ROLE > --> WM_WINDOW_ROLE(STRING) = "Preferences" # this is preferences > --> xprop WM_WINDOW_ROLE > --> WM_WINDOW_ROLE(STRING) = "browser" # the main window > --> xprop WM_WINDOW_ROLE > --> WM_WINDOW_ROLE(STRING) = "Manager" # the download window > > Why is this so important? Because you can make more rules to specifig > windows, I personally like to have the main browser window tiled but > not the download window. This is also the same thing with pidgin, > pidgin has a conversation window and a buddy list that have differents > WM_WINDOW_ROLE. > > Of coure we could use the `title' rules but it's different on each > locale you are using so it sucks as well. > > I would like to write a patch but for the moment I don't find the good > function that handle WM_WINDOW_ROLE.
I think the right thing to do would be to extend Rule and applyrules() with support for WM_WINDOW_ROLE. However I doubt that many client make actually use of WM_WINDOW_ROLE in a consistent way, which is why I believe there is no great benefit in doing so -- or in other words, yet another proof how hideous X has become ;) Cheers, Anselm