Enlightenment CVS committal
Author : raster
Project : e17
Module : apps/e
Dir : e17/apps/e/src/bin
Modified Files:
e_border.c
Log Message:
handle unfound stepping :)
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.c,v
retrieving revision 1.368
retrieving revision 1.369
diff -u -3 -r1.368 -r1.369
--- e_border.c 25 Aug 2005 07:42:44 -0000 1.368
+++ e_border.c 26 Aug 2005 10:00:27 -0000 1.369
@@ -298,8 +298,8 @@
bd->client.icccm.max_h = 32767;
bd->client.icccm.base_w = 0;
bd->client.icccm.base_h = 0;
- bd->client.icccm.step_w = 1;
- bd->client.icccm.step_h = 1;
+ bd->client.icccm.step_w = -1;
+ bd->client.icccm.step_h = -1;
bd->client.icccm.min_aspect = 0.0;
bd->client.icccm.max_aspect = 0.0;
bd->client.icccm.accepts_focus = 1;
@@ -4058,8 +4058,8 @@
if (bd->client.icccm.max_h > 32767) bd->client.icccm.max_h = 32767;
if (bd->client.icccm.base_w > 32767) bd->client.icccm.base_w = 32767;
if (bd->client.icccm.base_h > 32767) bd->client.icccm.base_h = 32767;
- if (bd->client.icccm.step_w < 1) bd->client.icccm.step_w = 1;
- if (bd->client.icccm.step_h < 1) bd->client.icccm.step_h = 1;
+// if (bd->client.icccm.step_w < 1) bd->client.icccm.step_w = 1;
+// if (bd->client.icccm.step_h < 1) bd->client.icccm.step_h = 1;
// printf("##- SIZE HINTS for 0x%x: min %ix%i, max %ix%i, base %ix%i, step
%ix%i\n",
// bd->client.win,
// bd->client.icccm.min_w, bd->client.icccm.min_h,
@@ -5062,22 +5062,28 @@
(a > bd->client.icccm.max_aspect))
*w = *h * bd->client.icccm.max_aspect;
}
- if (bd->client.icccm.base_w >= 0)
- *w = bd->client.icccm.base_w +
- (((*w - bd->client.icccm.base_w) / bd->client.icccm.step_w) *
- bd->client.icccm.step_w);
- else
- *w = bd->client.icccm.min_w +
- (((*w - bd->client.icccm.min_w) / bd->client.icccm.step_w) *
- bd->client.icccm.step_w);
- if (bd->client.icccm.base_h >= 0)
- *h = bd->client.icccm.base_h +
- (((*h - bd->client.icccm.base_h) / bd->client.icccm.step_h) *
- bd->client.icccm.step_h);
- else
- *h = bd->client.icccm.min_h +
- (((*h - bd->client.icccm.min_h) / bd->client.icccm.step_h) *
- bd->client.icccm.step_h);
+ if (bd->client.icccm.step_w > 0)
+ {
+ if (bd->client.icccm.base_w >= 0)
+ *w = bd->client.icccm.base_w +
+ (((*w - bd->client.icccm.base_w) / bd->client.icccm.step_w) *
+ bd->client.icccm.step_w);
+ else
+ *w = bd->client.icccm.min_w +
+ (((*w - bd->client.icccm.min_w) / bd->client.icccm.step_w) *
+ bd->client.icccm.step_w);
+ }
+ if (bd->client.icccm.step_h > 0)
+ {
+ if (bd->client.icccm.base_h >= 0)
+ *h = bd->client.icccm.base_h +
+ (((*h - bd->client.icccm.base_h) / bd->client.icccm.step_h) *
+ bd->client.icccm.step_h);
+ else
+ *h = bd->client.icccm.min_h +
+ (((*h - bd->client.icccm.min_h) / bd->client.icccm.step_h) *
+ bd->client.icccm.step_h);
+ }
if (*h < 1) *h = 1;
if (*w < 1) *w = 1;
@@ -6621,13 +6627,25 @@
if ((bd->client.icccm.base_w >= 0) &&
(bd->client.icccm.base_h >= 0))
{
- w = (bd->client.w - bd->client.icccm.base_w) / bd->client.icccm.step_w;
- h = (bd->client.h - bd->client.icccm.base_h) / bd->client.icccm.step_h;
+ if (bd->client.icccm.step_w > 0)
+ w = (bd->client.w - bd->client.icccm.base_w) /
bd->client.icccm.step_w;
+ else
+ w = bd->client.w;
+ if (bd->client.icccm.step_h > 0)
+ h = (bd->client.h - bd->client.icccm.base_h) /
bd->client.icccm.step_h;
+ else
+ h = bd->client.h;
}
else
{
- w = (bd->client.w - bd->client.icccm.min_w) / bd->client.icccm.step_w;
- h = (bd->client.h - bd->client.icccm.min_h) / bd->client.icccm.step_h;
+ if (bd->client.icccm.step_w > 0)
+ w = (bd->client.w - bd->client.icccm.min_w) / bd->client.icccm.step_w;
+ else
+ w = bd->client.w;
+ if (bd->client.icccm.step_h > 0)
+ h = (bd->client.h - bd->client.icccm.min_h) / bd->client.icccm.step_h;
+ else
+ h = bd->client.h;
}
if (grabbed)
ecore_x_pointer_grab(bd->win);
@@ -6676,13 +6694,25 @@
if ((bd->client.icccm.base_w >= 0) &&
(bd->client.icccm.base_h >= 0))
{
- w = (bd->client.w - bd->client.icccm.base_w) / bd->client.icccm.step_w;
- h = (bd->client.h - bd->client.icccm.base_h) / bd->client.icccm.step_h;
+ if (bd->client.icccm.step_w > 0)
+ w = (bd->client.w - bd->client.icccm.base_w) /
bd->client.icccm.step_w;
+ else
+ w = bd->client.w;
+ if (bd->client.icccm.step_h > 0)
+ h = (bd->client.h - bd->client.icccm.base_h) /
bd->client.icccm.step_h;
+ else
+ h = bd->client.h;
}
else
{
- w = (bd->client.w - bd->client.icccm.min_w) / bd->client.icccm.step_w;
- h = (bd->client.h - bd->client.icccm.min_h) / bd->client.icccm.step_h;
+ if (bd->client.icccm.step_w > 0)
+ w = (bd->client.w - bd->client.icccm.min_w) / bd->client.icccm.step_w;
+ else
+ w = bd->client.w;
+ if (bd->client.icccm.step_h > 0)
+ h = (bd->client.h - bd->client.icccm.min_h) / bd->client.icccm.step_h;
+ else
+ h = bd->client.h;
}
if (e_config->resize_info_follows)
e_move_resize_object_coords_set(bd->x, bd->y, bd->w, bd->h);
-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
enlightenment-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs