I use the zoom function frequently too. However, I also want to "put the next (or previous) client in the master tile" and these functions aim this. Thanks for the explanation.

btw, a small bugfix for the previous code:

please change

void
leak(Client **c){
   Client *dum;
   for(dum = clients; dum->next; dum = dum->next);
   *c = dum;
   detach(*c);
}

with

void
pull_from_bottom(Client **c){
   Client *dum;
   for(dum = clients; nexttiled(dum->next); dum = nexttiled(dum->next));
   *c = dum;
   detach(*c);
}

Regards,
Zafer ARICAN



On Wed, 27 Jun 2007 14:22:41 +0200, Sander van Dijk <[EMAIL PROTECTED]> wrote:

On 6/27/07, Zafer ARICAN <[EMAIL PROTECTED]> wrote:
Hi,
I propose these two functions to switch among clients. These functions are
similar to zoom function but they eliminate the dead loop between first
and second clients in the case of repetitive zoom calls. next_client

That "dead loop" is intentional. "Zoom" means "put the selected client
in the master tile". The only exception to this is when you try to
zoom the client that is already in the master tile: in that case it
gets swapped with the top client in the slave area, which allows the
user to quickly switch between the two most used clients, which is
often quite useful (larswm does it this way too btw).

Greetings, Sander.




--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/

Reply via email to