Enlightenment CVS committal
Author : kwo
Project : e16
Module : e
Dir : e16/e/src
Modified Files:
E.h borders.c desktops.c
Log Message:
Fix area updates (caused incorrect area switch on transient pop-up).
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v
retrieving revision 1.295
retrieving revision 1.296
diff -u -3 -r1.295 -r1.296
--- E.h 29 Jun 2004 08:52:40 -0000 1.295
+++ E.h 29 Jun 2004 09:31:40 -0000 1.296
@@ -1778,6 +1778,7 @@
int speed);
void SlideEwinsTo(EWin ** ewin, int *fx, int *fy, int *tx,
int *ty, int num_wins, int speed);
+void EwinDetermineArea(EWin * ewin);
void AddToFamily(Window win);
EWin *AddInternalToFamily(Window win, const char *bname, int type,
void *ptr,
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/borders.c,v
retrieving revision 1.202
retrieving revision 1.203
diff -u -3 -r1.202 -r1.203
--- borders.c 28 Jun 2004 23:37:55 -0000 1.202
+++ borders.c 29 Jun 2004 09:31:40 -0000 1.203
@@ -44,7 +44,6 @@
static void EwinSetBorderInit(EWin * ewin);
static void EwinSetBorderTo(EWin * ewin, Border * b);
-static void DetermineEwinArea(EWin * ewin);
static EWin *EwinCreate(Window win);
static EWin *Adopt(Window win);
static EWin *AdoptInternal(Window win, Border * border, int type);
@@ -325,6 +324,30 @@
}
void
+EwinDetermineArea(EWin * ewin)
+{
+ int ax, ay;
+
+ EDBUG(4, "EwinDetermineArea");
+
+ ax = (ewin->x + (ewin->w / 2) +
+ (desks.desk[ewin->desktop].current_area_x * VRoot.w)) / VRoot.w;
+ ay = (ewin->y + (ewin->h / 2) +
+ (desks.desk[ewin->desktop].current_area_y * VRoot.h)) / VRoot.h;
+
+ AreaFix(&ax, &ay);
+
+ if (ax != ewin->area_x || ay != ewin->area_y)
+ {
+ ewin->area_x = ax;
+ ewin->area_y = ay;
+ HintsSetWindowArea(ewin);
+ }
+
+ EDBUG_RETURN_;
+}
+
+void
AddToFamily(Window win)
{
EWin *ewin, *ewin2;
@@ -626,7 +649,7 @@
/* send synthetic configure notifies and configure the window */
ICCCM_Configure(ewin);
- DetermineEwinArea(ewin);
+ EwinDetermineArea(ewin);
UngrabX();
EDBUG_RETURN_;
@@ -662,7 +685,7 @@
ICCCM_Configure(ewin);
EwinBorderDraw(ewin, 1, 1);
- DetermineEwinArea(ewin);
+ EwinDetermineArea(ewin);
UngrabX();
EDBUG_RETURN(ewin);
@@ -1779,7 +1802,7 @@
if (!ewin)
return;
- DetermineEwinArea(ewin);
+ EwinDetermineArea(ewin);
if (Conf.theme.transparency)
EwinBorderDraw(ewin, 1, 0); /* Update the border */
@@ -3207,36 +3230,6 @@
HintsSetWindowState(ewin);
}
-static void
-EwinSetArea(EWin * ewin, int ax, int ay)
-{
- if (ax == ewin->area_x && ay == ewin->area_y)
- return;
-
- ewin->area_x = ax;
- ewin->area_y = ay;
-
- HintsSetWindowArea(ewin);
-}
-
-static void
-DetermineEwinArea(EWin * ewin)
-{
- int ax, ay;
-
- EDBUG(4, "DetermineEwinArea");
-
- ax = (ewin->x + (ewin->w / 2) +
- (desks.desk[ewin->desktop].current_area_x * VRoot.w)) / VRoot.w;
- ay = (ewin->y + (ewin->h / 2) +
- (desks.desk[ewin->desktop].current_area_y * VRoot.h)) / VRoot.h;
-
- AreaFix(&ax, &ay);
- EwinSetArea(ewin, ax, ay);
-
- EDBUG_RETURN_;
-}
-
void
MoveEwinToArea(EWin * ewin, int ax, int ay)
{
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/desktops.c,v
retrieving revision 1.92
retrieving revision 1.93
diff -u -3 -r1.92 -r1.93
--- desktops.c 28 Jun 2004 18:22:02 -0000 1.92
+++ desktops.c 29 Jun 2004 09:31:42 -0000 1.93
@@ -655,6 +655,7 @@
{
MoveEwin(ewin, ewin->x, ewin->y);
}
+ EwinDetermineArea(ewin);
HintsSetWindowDesktop(ewin);
EDBUG_RETURN_;
}
-------------------------------------------------------
This SF.Net email sponsored by Black Hat Briefings & Training.
Attend Black Hat Briefings & Training, Las Vegas July 24-29 -
digital self defense, top technical experts, no vendor pitches,
unmatched networking opportunities. Visit www.blackhat.com
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs