Enlightenment CVS committal
Author : kwo
Project : e16
Module : e
Dir : e16/e/src
Modified Files:
ecompmgr.c eobj.c ewins.c menus.c stacking.c
Log Message:
More stacking fixes.
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/ecompmgr.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -3 -r1.10 -r1.11
--- ecompmgr.c 12 Feb 2005 23:48:00 -0000 1.10
+++ ecompmgr.c 27 Feb 2005 17:32:18 -0000 1.11
@@ -2005,6 +2005,8 @@
eo = EobjListStackFind(ev->xmap.window);
if (!eo)
eo = EobjRegister(ev->xmap.window, EOBJ_TYPE_OVERR);
+ else
+ EobjListStackRaise(eo); /* FIXME - Use
Configure/CirculateNotify */
if (eo)
ECompMgrWinMap(eo, ev->xmap.serial, True);
break;
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/eobj.c,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -3 -r1.12 -r1.13
--- eobj.c 27 Feb 2005 01:11:51 -0000 1.12
+++ eobj.c 27 Feb 2005 17:32:19 -0000 1.13
@@ -77,7 +77,7 @@
* For usual EWin's the internal layer is the "old" E-layer * 10.
*
* Internal layers:
- * 0: Desktop (possibly virtual)
+ * 0: Root
* 3: Desktop type apps
* 5: Below buttons
* 10: Lowest ewins
@@ -88,9 +88,11 @@
* 75: Above buttons
* 80: Ontop ewins
* 100: E-Dialogs
- * 300: E-Menus
- * 500: Floating ewins
- * TBD: Override redirect
+ * 512-: Floating windows
+ * + 0: Virtual desktops
+ * +30: E-Menus
+ * +40: Override redirects
+ * +40: E-Tooltips
*/
switch (eo->type)
@@ -129,8 +131,16 @@
if (floating == eo->floating)
return;
+ switch (eo->type)
+ {
+ default:
+ break;
+ case EOBJ_TYPE_EWIN:
+ if (floating > 1)
+ eo->desk = 0;
+ break;
+ }
eo->floating = floating;
- eo->desk = 0;
EobjSetLayer(eo, eo->layer);
}
@@ -202,13 +212,16 @@
if (!eo)
return eo;
- /* Just for debug */
+#if 1 /* Just for debug */
eo->name = ecore_x_icccm_title_get(win);
+#endif
if (EventDebug(EDBUG_TYPE_EWINS))
Eprintf("EobjRegister: %#lx %s\n", win, eo->name);
- EobjSetLayer(eo, 80);
+ if (type == EOBJ_TYPE_OVERR)
+ EobjSetFloating(eo, 1);
+ EobjSetLayer(eo, 4);
EobjListStackAdd(eo, 1);
return eo;
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/ewins.c,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -3 -r1.22 -r1.23
--- ewins.c 27 Feb 2005 14:42:40 -0000 1.22
+++ ewins.c 27 Feb 2005 17:32:19 -0000 1.23
@@ -979,6 +979,7 @@
}
else
{
+ RaiseEwin(ewin);
MoveEwin(ewin, EoGetX(ewin), EoGetY(ewin));
}
@@ -1411,14 +1412,6 @@
if (EventDebug(EDBUG_TYPE_STACKING))
Eprintf("RestackEwin %#lx %s\n", ewin->client.win, EwinGetName(ewin));
-#if 0 /* FIXME - remove? */
- if (EoIsFloating(ewin))
- {
- ERaiseWindow(EoGetWin(ewin));
- goto done;
- }
-#endif
-
lst = EwinListGetForDesk(&num, EoGetDesk(ewin));
if (num < 2)
goto done;
@@ -1465,14 +1458,6 @@
if (EoGetWin(ewin))
{
-#if 0 /* FIXME - remove? */
- if (EoIsFloating(ewin))
- {
- ERaiseWindow(EoGetWin(ewin));
- goto done;
- }
-#endif
-
num = EwinListStackRaise(ewin);
if (num == 0) /* Quit if stacking is unchanged */
goto done;
@@ -1511,11 +1496,7 @@
Eprintf("LowerEwin(%d) %#lx %s\n", call_depth, ewin->client.win,
EwinGetName(ewin));
-#if 0 /* FIXME - remove? */
- if ((EoGetWin(ewin)) && (!EoIsFloating(ewin)))
-#else
if (EoGetWin(ewin))
-#endif
{
num = EwinListStackLower(ewin);
if (num == 0) /* Quit if stacking is unchanged */
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/menus.c,v
retrieving revision 1.172
retrieving revision 1.173
diff -u -3 -r1.172 -r1.173
--- menus.c 27 Feb 2005 13:17:29 -0000 1.172
+++ menus.c 27 Feb 2005 17:32:19 -0000 1.173
@@ -251,7 +251,7 @@
ewin->client.no_resize_h = ewin->client.no_resize_v = 1;
EoSetSticky(ewin, 1);
- EoSetLayer(ewin, 30);
+ EoSetLayer(ewin, 3);
EoSetFloating(ewin, 1);
EoSetOpacity(ewin, OpacityExt(Conf.menus.opacity));
}
@@ -989,9 +989,9 @@
Mode_menus.cover_win =
ECreateEventWindow(ewin->parent, 0, 0, VRoot.w, VRoot.h);
Mode_menus.win_covered = EoGetWin(ewin);
- eo = EobjRegister(Mode_menus.cover_win, EOBJ_TYPE_OTHER);
+ eo = EobjRegister(Mode_menus.cover_win, EOBJ_TYPE_OVERR);
EobjSetDesk(eo, EoGetDesk(ewin));
- EobjSetLayer(eo, 20);
+ EobjSetLayer(eo, 2);
EobjSetFloating(eo, 1);
EobjListStackLower(eo);
ESelectInput(Mode_menus.cover_win,
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/stacking.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -3 -r1.17 -r1.18
--- stacking.c 27 Feb 2005 01:11:51 -0000 1.17
+++ stacking.c 27 Feb 2005 17:32:20 -0000 1.18
@@ -97,12 +97,14 @@
if (ontop)
{
ewl->list[ewl->nwins] = eo;
+ ewl->nwins++;
EobjListRaise(ewl, eo);
}
else
{
memmove(ewl->list + 1, ewl->list, ewl->nwins * sizeof(EObj *));
ewl->list[0] = eo;
+ ewl->nwins++;
EobjListLower(ewl, eo);
}
@@ -119,8 +121,8 @@
{
ewl->list[ewl->nwins] = eo;
}
+ ewl->nwins++;
}
- ewl->nwins++;
EobjListShow("EobjListAdd", ewl);
}
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
enlightenment-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs