Re: [dwm] Layers
2009/1/22 Matthias-Christian Ott o...@mirix.org: Dwm has by default a floating and a tiled layer that can have a different layout. Tiling or maximisation works fine for most clients (by the way, is there are reason why windows are called clients in dwm jargon?), some dialogs, popups or short-living windows require to be floating. Therefore dwm keeps these windows on an upper layer. It's called client because it's a client of the window manager -- the terminology has been in use for ages in different WMs and been adopted by dwm for this legacy reason in order to increase the understanding by the reader (who might compare the code base with different WMs). While this makes sense for most applications, there are some (Gimp is as famous example for this) that are build around this WIMP concept and thus have to be floating in order to usable. But sometimes it makes sense to quickly hide them to access information hidden by them (for example I use the dictionary programme Ding when writing E-Mails in English). A common approach would be to dedicate a tag to them and switch via ALT+TAB back and forth. In my opinion this a bit cumbersome and non-intuitive. I rather expect to rotate the two layers like I can do with windows in monocle layout. Well, apart from the floating mode, I bind gimp to the dedicated tag 7 where I only assign broken apps with. Since all gimp windows are floating by the same rule, toggleview()'ing 16 will do the trick without switching the layout. Kind regards, --Anselm
[dwm] Layers
Hi, I can't remember if we talked about this some time ago. If so, I think we didn't come to a satisifying consensus, so I want to revive the discussion. But let me first of all introduce you to the problem. Dwm has by default a floating and a tiled layer that can have a different layout. Tiling or maximisation works fine for most clients (by the way, is there are reason why windows are called clients in dwm jargon?), some dialogs, popups or short-living windows require to be floating. Therefore dwm keeps these windows on an upper layer. While this makes sense for most applications, there are some (Gimp is as famous example for this) that are build around this WIMP concept and thus have to be floating in order to usable. But sometimes it makes sense to quickly hide them to access information hidden by them (for example I use the dictionary programme Ding when writing E-Mails in English). A common approach would be to dedicate a tag to them and switch via ALT+TAB back and forth. In my opinion this a bit cumbersome and non-intuitive. I rather expect to rotate the two layers like I can do with windows in monocle layout. Regards, Matthias-Christian
Re: [dwm] Layers
sounds like this could be very easily done by re-ordering the clients list, since the draw order determines the layering IIRC. i don't feel like thinking that hard, so here's pseudocode: togglelayers() { if( sel-isfloating ) { // for each client in clients // if it is floating, move it to the end of clients } else { // notfloating // for each client in clients // if it is floating, move it to the top of clients } // change sel to top of clients } Jeremy On Thu 22 Jan 2009 - 10:25PM, Matthias-Christian Ott wrote: Hi, I can't remember if we talked about this some time ago. If so, I think we didn't come to a satisifying consensus, so I want to revive the discussion. But let me first of all introduce you to the problem. Dwm has by default a floating and a tiled layer that can have a different layout. Tiling or maximisation works fine for most clients (by the way, is there are reason why windows are called clients in dwm jargon?), some dialogs, popups or short-living windows require to be floating. Therefore dwm keeps these windows on an upper layer. While this makes sense for most applications, there are some (Gimp is as famous example for this) that are build around this WIMP concept and thus have to be floating in order to usable. But sometimes it makes sense to quickly hide them to access information hidden by them (for example I use the dictionary programme Ding when writing E-Mails in English). A common approach would be to dedicate a tag to them and switch via ALT+TAB back and forth. In my opinion this a bit cumbersome and non-intuitive. I rather expect to rotate the two layers like I can do with windows in monocle layout. Regards, Matthias-Christian
Re: [dwm] Layers
hi everyone, On Thu, Jan 22, 2009 at 10:25:18PM +0100, Matthias-Christian Ott wrote: Dwm has by default a floating and a tiled layer that can have a different layout. Tiling or maximisation works fine for most clients (by the way, is there are reason why windows are called clients in dwm jargon?), some in X parlance, programs connecting to the X server are called X clients or clients. each client may open 0, 1 or many windows. that's all i think. dialogs, popups or short-living windows require to be floating. Therefore dwm keeps these windows on an upper layer. yup, dwm does just 2 layers, whereas ICCCM conventions have several more. simplifying this is very much in the scklss philosophy :) While this makes sense for most applications, there are some (Gimp is as famous example for this) that are build around this WIMP concept and thus have to be floating in order to usable. But sometimes it makes sense to quickly hide them to access information hidden by them (for example I use the dictionary programme Ding when writing E-Mails in English). A common approach would be to dedicate a tag to them and switch via ALT+TAB back and forth. In my opinion this a bit cumbersome and non-intuitive. i always do this I rather expect to rotate the two layers like I can do with windows in monocle layout. i stay away from anything that moves floating windows around because GIMP belongs to the 1% of X clients where floating windows remain a better option than tiled windows. taste... i for one would not even look for consensus here. i did increase the number of tags to 9 long before this was the case in the stock config.h. cheers, -- Benoit Triquet benoit.triquet at gmail.com .''`. : :' : We are debian.org. Lower your prices, surrender your code. `. `' We will add your hardware and software distinctiveness to `-our own. Resistance is futile.
Re: [dwm] Layers
I use the floating layout just for this. I have hacked dwm in several ways in the past: keys to raise clients*, different stack algorithms (in the lt structure), and what not. At the end, in the case I want to bring front a tiled client the easiest way is to change to floating layout**, no complications are necesary and it makes quite sense to me. * I think they are named clients because a client can have several windows (reparenting; eg if you have window decorations). Another good reason is the confusing it would result to mix that Window with the Window already present in dwm _code_ (they are called windows in the man page, for example). ** In order to make this task easier, I have defined my keys and mouse in a way that a Mod+Space (or B1 on the symbol) set tile or (if tile is set) floating and Mod+Shift+Space (or B2) set monocle or floating in the same way. So, with a double Mod+Space - or Mod+Shift+Space, or double clicks - I can re-tile tiled clients while in floating layout. (It doesn't sound so great as the feeling is once you get used to it.) hth, -- - yiyus || JGL .