Thu Sep 16 12:04:54 PDT 1999
(Raster) added patch to fix some behavior of raiselower fixed pager starting up shaded problem fixed iconfiicaton of thing son other desktops problem SVN revision: 289
This commit is contained in:
parent
ee338e1974
commit
fc6eb2eef3
|
@ -1813,3 +1813,14 @@ Wed Sep 15 19:09:52 PDT 1999
|
|||
(Mandrake)
|
||||
|
||||
syncing kde code
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Thu Sep 16 12:04:54 PDT 1999
|
||||
(Raster)
|
||||
|
||||
added patch to fix some behavior of raiselower
|
||||
|
||||
fixed pager starting up shaded problem
|
||||
|
||||
fixed iconfiicaton of thing son other desktops problem
|
||||
|
|
13
src/E.h
13
src/E.h
|
@ -442,8 +442,9 @@ int Esnprintf(va_alist);
|
|||
#define ACTION_LOWER_NG 94
|
||||
#define ACTION_STICK_NG 95
|
||||
#define ACTION_SHADE_NG 96
|
||||
#define ACTION_RAISE_LOWER_NG 97
|
||||
/* false number excluding the above list */
|
||||
#define ACTION_NUMBEROF 97
|
||||
#define ACTION_NUMBEROF 98
|
||||
|
||||
#define MODE_NONE 0
|
||||
#define MODE_MOVE 1
|
||||
|
@ -1971,7 +1972,6 @@ int doResizeH(void *params);
|
|||
int doResizeV(void *params);
|
||||
int doResizeEnd(void *params);
|
||||
int doMoveEnd(void *params);
|
||||
int doMoveEndNoGroup(void *params);
|
||||
int doRaise(void *params);
|
||||
int doRaiseNoGroup(void *params);
|
||||
int doLower(void *params);
|
||||
|
@ -2052,20 +2052,13 @@ int doConfigure(void *params);
|
|||
int doInsertKeys(void *params);
|
||||
int doCreateIconbox(void *params);
|
||||
int doRaiseLower(void *params);
|
||||
int doRaiseLowerNoGroup(void *params);
|
||||
int doStartGroup(void *params);
|
||||
int doAddToGroup(void *params);
|
||||
int doRemoveFromGroup(void *params);
|
||||
int doBreakGroup(void *params);
|
||||
int doShowHideGroup(void *params);
|
||||
int doZoom(void *params);
|
||||
int doSetWindowBorderNoGroup(void *params);
|
||||
int doIconifyNoGoup(void *params);
|
||||
int doKillNoGroup(void *params);
|
||||
int doMoveNoGroup(void *params);
|
||||
int doRaiseNoGroup(void *params);
|
||||
int doLowerNoGroup(void *params);
|
||||
int doStickNoGroup(void *params);
|
||||
int doShadeNoGroup(void *params);
|
||||
int initFunctionArray(void);
|
||||
|
||||
void GrabActionKey(Action * a);
|
||||
|
|
|
@ -3378,12 +3378,29 @@ doCreateIconbox(void *params)
|
|||
EDBUG_RETURN(0);
|
||||
}
|
||||
|
||||
static int
|
||||
FindEwinInList(EWin * ewin, EWin ** gwins, int num)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (ewin && gwins)
|
||||
{
|
||||
for (i = 0; i < num; i++)
|
||||
{
|
||||
if (ewin == gwins[i])
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
doRaiseLower(void *params)
|
||||
{
|
||||
EWin *ewin;
|
||||
EWin **gwins;
|
||||
int i, num, j;
|
||||
int i, num, j, raise = 0;
|
||||
|
||||
EDBUG(6, "doRaiseLower");
|
||||
if (InZoom())
|
||||
|
@ -3397,7 +3414,7 @@ doRaiseLower(void *params)
|
|||
if (!ewin)
|
||||
EDBUG_RETURN(0);
|
||||
|
||||
gwins = ListWinGroupMembersForEwin(ewin, ACTION_NONE, 0, &num);
|
||||
gwins = ListWinGroupMembersForEwin(ewin, ACTION_RAISE_LOWER, mode.nogroup, &num);
|
||||
for (j = 0; j < num; j++)
|
||||
{
|
||||
ewin = gwins[j];
|
||||
|
@ -3405,28 +3422,49 @@ doRaiseLower(void *params)
|
|||
{
|
||||
for (i = 0; i < desks.desk[ewin->desktop].num - 1; i++)
|
||||
{
|
||||
if (desks.desk[ewin->desktop].list[i]->layer == ewin->layer)
|
||||
if (desks.desk[ewin->desktop].list[i]->layer == ewin->layer &&
|
||||
(desks.desk[ewin->desktop].list[i] == ewin ||
|
||||
!FindEwinInList(desks.desk[ewin->desktop].list[i], gwins, num)))
|
||||
{
|
||||
if (desks.desk[ewin->desktop].list[i] == ewin)
|
||||
{
|
||||
AUDIO_PLAY("SOUND_LOWER");
|
||||
LowerEwin(ewin);
|
||||
}
|
||||
else
|
||||
{
|
||||
AUDIO_PLAY("SOUND_RAISE");
|
||||
RaiseEwin(ewin);
|
||||
}
|
||||
i = desks.desk[ewin->desktop].num;
|
||||
if (desks.desk[ewin->desktop].list[i] != ewin)
|
||||
raise = 1;
|
||||
|
||||
j = num;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!raise)
|
||||
{
|
||||
AUDIO_PLAY("SOUND_LOWER");
|
||||
for (j = 0; j < num; j++)
|
||||
LowerEwin(gwins[j]);
|
||||
}
|
||||
else
|
||||
{
|
||||
AUDIO_PLAY("SOUND_RAISE");
|
||||
for (j = 0; j < num; j++)
|
||||
RaiseEwin(gwins[j]);
|
||||
}
|
||||
|
||||
Efree(gwins);
|
||||
|
||||
EDBUG_RETURN(0);
|
||||
}
|
||||
|
||||
int
|
||||
doRaiseLowerNoGroup(void *params)
|
||||
{
|
||||
int result;
|
||||
|
||||
mode.nogroup = 1;
|
||||
result = doRaiseLower(params);
|
||||
mode.nogroup = 0;
|
||||
return result;
|
||||
}
|
||||
|
||||
int
|
||||
doShowHideGroup(void *params)
|
||||
{
|
||||
|
@ -3681,6 +3719,7 @@ initFunctionArray(void)
|
|||
ActionFunctions[ACTION_LOWER_NG] = (int (*)(void *))(doLowerNoGroup);
|
||||
ActionFunctions[ACTION_STICK_NG] = (int (*)(void *))(doStickNoGroup);
|
||||
ActionFunctions[ACTION_SHADE_NG] = (int (*)(void *))(doShadeNoGroup);
|
||||
ActionFunctions[ACTION_RAISE_LOWER_NG] = (int (*)(void *))(doRaiseLowerNoGroup);
|
||||
|
||||
EDBUG_RETURN(0);
|
||||
}
|
||||
|
|
|
@ -2582,6 +2582,7 @@ ShadeEwin(EWin * ewin)
|
|||
struct timeval timev1, timev2;
|
||||
int dsec, dusec;
|
||||
double tm;
|
||||
char pq;
|
||||
|
||||
EDBUG(4, "ShadeEwin");
|
||||
|
||||
|
@ -2596,6 +2597,7 @@ ShadeEwin(EWin * ewin)
|
|||
EDBUG_RETURN_;
|
||||
if ((ewin->border) && (!strcmp(ewin->border->name, "BORDERLESS")))
|
||||
EDBUG_RETURN_;
|
||||
pq = queue_up;
|
||||
queue_up = 0;
|
||||
speed = mode.shadespeed;
|
||||
spd = 32;
|
||||
|
@ -2826,7 +2828,7 @@ ShadeEwin(EWin * ewin)
|
|||
EShapeCombineShape(disp, ewin->win_container, ShapeBounding, 0, 0,
|
||||
ewin->client.win, ShapeBounding, ShapeSet);
|
||||
PropagateShapes(ewin->win);
|
||||
queue_up = 1;
|
||||
queue_up = pq;
|
||||
GNOME_SetHint(ewin);
|
||||
if (mode.mode == MODE_NONE)
|
||||
{
|
||||
|
@ -2845,12 +2847,14 @@ UnShadeEwin(EWin * ewin)
|
|||
struct timeval timev1, timev2;
|
||||
int dsec, dusec;
|
||||
double tm;
|
||||
char pq;
|
||||
|
||||
EDBUG(4, "UnShadeEwin");
|
||||
if (GetZoomEWin() == ewin)
|
||||
EDBUG_RETURN_;
|
||||
if (!ewin->shaded)
|
||||
EDBUG_RETURN_;
|
||||
pq = queue_up;
|
||||
queue_up = 0;
|
||||
speed = mode.shadespeed;
|
||||
spd = 32;
|
||||
|
@ -3102,12 +3106,11 @@ UnShadeEwin(EWin * ewin)
|
|||
break;
|
||||
}
|
||||
UngrabX();
|
||||
queue_up = 0;
|
||||
if (ewin->client.shaped)
|
||||
EShapeCombineShape(disp, ewin->win_container, ShapeBounding, 0, 0,
|
||||
ewin->client.win, ShapeBounding, ShapeSet);
|
||||
PropagateShapes(ewin->win);
|
||||
queue_up = 1;
|
||||
queue_up = pq;
|
||||
GNOME_SetHint(ewin);
|
||||
if (mode.mode == MODE_NONE)
|
||||
{
|
||||
|
|
|
@ -2300,6 +2300,9 @@ HandleMouseUp(XEvent * ev)
|
|||
UpdateAppIcon(p->hi_ewin, ewin->ibox->icon_mode);
|
||||
}
|
||||
HideEwin(p->hi_ewin);
|
||||
MoveEwin(p->hi_ewin,
|
||||
pwin_px + ((desks.desk[p->hi_ewin->desktop].current_area_x) - p->hi_ewin->area_x) * root.w,
|
||||
pwin_py + ((desks.desk[p->hi_ewin->desktop].current_area_y) - p->hi_ewin->area_y) * root.h);
|
||||
if (was_shaded != p->hi_ewin->shaded)
|
||||
InstantShadeEwin(p->hi_ewin);
|
||||
AddEwinToIconbox(ewin->ibox, p->hi_ewin);
|
||||
|
|
|
@ -292,6 +292,7 @@ ListWinGroupMembersForEwin(EWin * ewin, int action, char nogroup, int *num)
|
|||
break;
|
||||
case ACTION_RAISE:
|
||||
case ACTION_LOWER:
|
||||
case ACTION_RAISE_LOWER:
|
||||
if (!ewin->groups[i]->cfg.raise)
|
||||
daddy_says_no_no = 1;
|
||||
break;
|
||||
|
|
|
@ -124,6 +124,9 @@ IconifyEwin(EWin * ewin)
|
|||
UpdateAppIcon(ewin, ib->icon_mode);
|
||||
}
|
||||
HideEwin(ewin);
|
||||
MoveEwin(ewin,
|
||||
ewin->x + ((desks.desk[ewin->desktop].current_area_x) - ewin->area_x) * root.w,
|
||||
ewin->y + ((desks.desk[ewin->desktop].current_area_y) - ewin->area_y) * root.h);
|
||||
if (was_shaded != ewin->shaded)
|
||||
InstantShadeEwin(ewin);
|
||||
MakeIcon(ewin);
|
||||
|
@ -340,7 +343,10 @@ ShowIconbox(Iconbox * ib)
|
|||
EWin *ewin = NULL;
|
||||
XClassHint *xch;
|
||||
XTextProperty xtp;
|
||||
char pq;
|
||||
|
||||
pq = queue_up;
|
||||
queue_up = 0;
|
||||
xtp.encoding = XA_STRING;
|
||||
xtp.format = 8;
|
||||
xtp.value = (unsigned char *)("Iconbox");
|
||||
|
@ -401,8 +407,6 @@ ShowIconbox(Iconbox * ib)
|
|||
if ((sn->use_shade) && (sn->shade))
|
||||
InstantUnShadeEwin(ewin);
|
||||
ResizeEwin(ewin, sn->w, sn->h);
|
||||
if ((sn->use_shade) && (sn->shade))
|
||||
InstantShadeEwin(ewin);
|
||||
if (sn->use_xy)
|
||||
MoveEwin(ewin, sn->x, sn->y);
|
||||
}
|
||||
|
@ -411,10 +415,13 @@ ShowIconbox(Iconbox * ib)
|
|||
ConformEwinToDesktop(ewin);
|
||||
DesktopRemoveEwin(ewin);
|
||||
DesktopAddEwinToTop(ewin);
|
||||
if ((sn) && (sn->use_shade) && (sn->shade))
|
||||
ShadeEwin(ewin);
|
||||
ShowEwin(ewin);
|
||||
RememberImportantInfoForEwin(ewin);
|
||||
}
|
||||
IconboxResize(ib, ib->ewin->client.w, ib->ewin->client.h);
|
||||
queue_up = pq;
|
||||
}
|
||||
|
||||
void
|
||||
|
|
32
src/pager.c
32
src/pager.c
|
@ -577,6 +577,7 @@ PagerShow(Pager * p)
|
|||
EWin *ewin = NULL;
|
||||
XClassHint *xch;
|
||||
char s[64];
|
||||
char pq;
|
||||
|
||||
if (!mode.show_pagers)
|
||||
return;
|
||||
|
@ -591,6 +592,8 @@ PagerShow(Pager * p)
|
|||
xch->res_class = "Enlightenment_Pager";
|
||||
XSetClassHint(disp, p->win, xch);
|
||||
XFree(xch);
|
||||
pq = queue_up;
|
||||
queue_up = 0;
|
||||
if (p->border_name)
|
||||
ewin = AddInternalToFamily(p->win, 1, p->border_name);
|
||||
else
|
||||
|
@ -626,27 +629,31 @@ PagerShow(Pager * p)
|
|||
{
|
||||
if ((sn->use_shade) && (sn->shade))
|
||||
InstantUnShadeEwin(ewin);
|
||||
p->w = 0;
|
||||
p->h = 0;
|
||||
ResizeEwin(ewin, sn->w, sn->h);
|
||||
if ((sn->use_shade) && (sn->shade))
|
||||
InstantShadeEwin(ewin);
|
||||
PagerRedraw(p, 1);
|
||||
}
|
||||
}
|
||||
/* no snapshots ? first time ? make a row on the bottom left up */
|
||||
else
|
||||
MoveEwin(ewin, 0,
|
||||
root.h - ((mode.numdesktops - p->desktop) * ewin->h));
|
||||
{
|
||||
MoveEwin(ewin, 0,
|
||||
root.h - ((mode.numdesktops - p->desktop) * ewin->h));
|
||||
/* force a redraw & resize */
|
||||
pw = p->w;
|
||||
ph = p->h;
|
||||
p->w = 0;
|
||||
p->h = 0;
|
||||
PagerResize(p, pw, ph);
|
||||
PagerRedraw(p, 1);
|
||||
}
|
||||
ConformEwinToDesktop(ewin);
|
||||
DesktopAddEwinToTop(ewin);
|
||||
/* force a redraw & resize */
|
||||
pw = p->w;
|
||||
ph = p->h;
|
||||
p->w = 0;
|
||||
p->h = 0;
|
||||
PagerResize(p, pw, ph);
|
||||
PagerRedraw(p, 1);
|
||||
/* show the pager ewin */
|
||||
DesktopRemoveEwin(ewin);
|
||||
DesktopAddEwinToTop(ewin);
|
||||
if ((sn) && (sn->use_shade) && (sn->shade))
|
||||
ShadeEwin(ewin);
|
||||
ShowEwin(ewin);
|
||||
RememberImportantInfoForEwin(ewin);
|
||||
if (SNAP)
|
||||
|
@ -655,6 +662,7 @@ PagerShow(Pager * p)
|
|||
if (mode.pager_scanspeed > 0)
|
||||
DoIn(s, 1 / ((double)mode.pager_scanspeed), PagerUpdateTimeout, 0, p);
|
||||
}
|
||||
queue_up = pq;
|
||||
AddItem(p, "PAGER", p->win, LIST_TYPE_PAGER);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -315,6 +315,15 @@
|
|||
#define __A_CREATE_ICONBOX 86
|
||||
#define __A_RAISE_LOWER 87
|
||||
#define __A_ZOOM 88
|
||||
#define __A_SET_WINDOW_BORDER_NG 89
|
||||
#define __A_ICONIFY_NG 90
|
||||
#define __A_KILL_NG 91
|
||||
#define __A_MOVE_NG 92
|
||||
#define __A_RAISE_NG 93
|
||||
#define __A_LOWER_NG 94
|
||||
#define __A_STICK_NG 95
|
||||
#define __A_SHADE_NG 96
|
||||
#define __A_RAISE_LOWER_NG 97
|
||||
|
||||
#define __MODIFIER_KEY 101
|
||||
#define __TYPE 102
|
||||
|
|
Loading…
Reference in New Issue