From: <enl...@li...> - 2004-09-24 22:50:27
|
Enlightenment CVS committal Author : kwo Project : e16 Module : e Dir : e16/e/src Modified Files: Tag: branch-exp E.h actions.c ewins.c finders.c ipc.c Log Message: Fixes, opacity menu. =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v retrieving revision 1.314.2.46 retrieving revision 1.314.2.47 diff -u -3 -r1.314.2.46 -r1.314.2.47 --- E.h 21 Sep 2004 21:57:18 -0000 1.314.2.46 +++ E.h 24 Sep 2004 22:50:05 -0000 1.314.2.47 @@ -1725,6 +1725,7 @@ void EwinWithdraw(EWin * ewin); void EwinReparent(EWin * ewin, Window parent); void SyncBorderToEwin(EWin * ewin); +Window EwinGetClientWin(const EWin * ewin); int EwinGetDesk(const EWin * ewin); const char *EwinGetTitle(const EWin * ewin); const char *EwinGetIconName(const EWin * ewin); =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/actions.c,v retrieving revision 1.174.2.17 retrieving revision 1.174.2.18 diff -u -3 -r1.174.2.17 -r1.174.2.18 --- actions.c 24 Sep 2004 22:40:30 -0000 1.174.2.17 +++ actions.c 24 Sep 2004 22:50:08 -0000 1.174.2.18 @@ -205,7 +205,8 @@ ShowNamedMenu(s2); } -#if 0 /* FIXME - Hmmm */ +#if 1 /* FIXME - Hmmm */ + /* Tag the window spawning the menu so we can find it during action handling */ if ((ewin && (ewin->win == Mode.context_win)) || (ewin = FindEwinByChildren(Mode.context_win))) { =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/Attic/ewins.c,v retrieving revision 1.1.2.17 retrieving revision 1.1.2.18 diff -u -3 -r1.1.2.17 -r1.1.2.18 --- ewins.c 21 Sep 2004 21:57:19 -0000 1.1.2.17 +++ ewins.c 24 Sep 2004 22:50:08 -0000 1.1.2.18 @@ -1516,6 +1516,12 @@ EDBUG_RETURN_; } +Window +EwinGetClientWin(const EWin * ewin) +{ + return (ewin) ? ewin->client.win : None; +} + int EwinGetDesk(const EWin * ewin) { @@ -1527,6 +1533,8 @@ { const char *name; + if (!ewin) + return NULL; #if ENABLE_EWMH name = ewin->ewmh.wm_name; if (name) @@ -1537,7 +1545,7 @@ goto done; done: - return (name && strlen(name)) ? name : NULL; + return (name && name[0]) ? name : NULL; } const char * =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/finders.c,v retrieving revision 1.31.2.2 retrieving revision 1.31.2.3 diff -u -3 -r1.31.2.2 -r1.31.2.3 --- finders.c 27 Aug 2004 23:27:43 -0000 1.31.2.2 +++ finders.c 24 Sep 2004 22:50:18 -0000 1.31.2.3 @@ -72,6 +72,7 @@ EWin *const *ewins; int i, num, len; char ewinid[FILEPATH_LEN_MAX]; + const char *name; EDBUG(6, "FindEwinByPartial"); @@ -95,7 +96,10 @@ else if (type == '=') { /* Match name (substring) */ - if (!strstr(ewins[i]->icccm.wm_name, match)) + name = ewins[i]->icccm.wm_name; + if (!name) + continue; + if (!strstr(name, match)) continue; } else =================================================================== RCS file: /cvsroot/enlightenment/e16/e/src/ipc.c,v retrieving revision 1.174.2.25 retrieving revision 1.174.2.26 diff -u -3 -r1.174.2.25 -r1.174.2.26 --- ipc.c 24 Sep 2004 22:40:32 -0000 1.174.2.25 +++ ipc.c 24 Sep 2004 22:50:18 -0000 1.174.2.26 @@ -71,8 +71,8 @@ { unsigned int win; - if (!strcmp(windowid, "current")) - return GetFocusEwin(); + if (!strcmp(windowid, "*") || !strcmp(windowid, "current")) + return GetContextEwin(); if (isdigit(windowid[0])) { |