Alan Schmitt wrote:
There has been a small itch in e16 that has bothered me for quite a while, and I decided to look at it today.

The issue is simple: when a window is iconified, it is included in the warp focus list (the alt-tab one) only when the current virtual desktop and real desktop are the same than the one when it was iconified. As I use the iconbox as an app shelf (keeping nicely positioned shells around, or useful little apps), I wanted to be able to alt-tab to these windows from any desktop / virtual desktop.

Here is the small change that does this:

schmitta:/usr/src/enlightenment/e16/e> cvs diff
Index: src/warp.c
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/warp.c,v
retrieving revision 1.33
diff -u -p -r1.33 warp.c
--- src/warp.c 2 Feb 2004 19:42:35 -0000 1.33
+++ src/warp.c 23 Feb 2004 15:40:38 -0000
@@ -100,9 +100,14 @@ WarpFocus(int delta)
for (i = num0 - 1; i >= 0; --i)
{
ewin = lst0[i];
- if (((ewin->sticky) || (ewin->desktop == desks.current))
- && (ewin->x + ewin->w > 0) && (ewin->x < root.w)
- && (ewin->y + ewin->h > 0) && (ewin->y < root.h)
+ if (/* Either sticky, in current desktop, or iconified */
+ ( (ewin->sticky) || (ewin->desktop == desks.current)
+ || (ewin->iconified))
+ && + /* Either in current area or iconified */
+ (( (ewin->x + ewin->w > 0) && (ewin->x < root.w)
+ && (ewin->y + ewin->h > 0) && (ewin->y < root.h))
+ || (ewin->iconified))
&& (!ewin->skipfocus) && !(ewin->shaded
&& !conf.warplist.warpshaded)
&& (!ewin->menu) && (!ewin->pager) && !(ewin->sticky


I can also add an extra configuration option if need be (we already can say whether we want to focus on iconified windows, but we cannot say whether we want this behaviour to depend on where the windows were iconified ... I'm not sure it would be very useful though).

Hmm... I don't like these massive if's that are impossible to read.
EwinIsOnScreen() can be used to test if the window is on-screen.
The ewin->ibox, ewin->menu and ewin->pager tests are now (just comitted)
redundant because they will have ewin->skipfocus set.

Configuration - currently we can say no, or we can say yes and get a
behavior that some will consider broken.
Maybe it should be possible to select "include icons" between
- Off
- Current viewport (current behavior)
- Current desktop
- All desktops
The problem with this is mainly that the configuration dialogs don't
have drop-down boxes and it would take up unreasonable amounts of real
estate using radiobuttons.

I think we should try selecting between none or all, as you suggest.
I'll do that when I get around to it or you can drop a patch with the
suggested changes and I'll put it in right away.

Btw, is it useful to be able to exclude sticky windows? I don't think
so.

/Kim


------------------------------------------------------- SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now! http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click _______________________________________________ enlightenment-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to