[Xfce4-commits] r29511 - in xfwm4/trunk: . src
Olivier Fourdan
olivier at xfce.org
Wed Feb 18 20:39:36 CET 2009
Author: olivier
Date: 2009-02-18 19:39:36 +0000 (Wed, 18 Feb 2009)
New Revision: 29511
Modified:
xfwm4/trunk/ChangeLog
xfwm4/trunk/NEWS
xfwm4/trunk/src/placement.c
Log:
* src/placement.c: Fix size not properly computed by the fill
function with a dock on top or left (Bug #4960).
Modified: xfwm4/trunk/ChangeLog
===================================================================
--- xfwm4/trunk/ChangeLog 2009-02-18 17:57:58 UTC (rev 29510)
+++ xfwm4/trunk/ChangeLog 2009-02-18 19:39:36 UTC (rev 29511)
@@ -1,3 +1,8 @@
+2009-02-18 olivier
+
+ * src/placement.c: Fix size not properly computed by the fill
+ function with a dock on top or left (Bug #4960).
+
2009-02-17 olivier
* src/keyboard.c: Use proper type for returned value.
Modified: xfwm4/trunk/NEWS
===================================================================
--- xfwm4/trunk/NEWS 2009-02-18 17:57:58 UTC (rev 29510)
+++ xfwm4/trunk/NEWS 2009-02-18 19:39:36 UTC (rev 29511)
@@ -3,6 +3,8 @@
- Fix possible monitor cache size inconsistency when the screen size changes.
- Fix fill function not working with multiscreen.
+- Fix size not properly computed by the fill function with a dock on top or
+ left (Bug #4960).
- Only display the shortcut conflict dialog if the conflict is with a different
shortcut than the one being edited.
- When stealing a shortcut from another shortcuts provider, clear the shortcut
Modified: xfwm4/trunk/src/placement.c
===================================================================
--- xfwm4/trunk/src/placement.c 2009-02-18 17:57:58 UTC (rev 29510)
+++ xfwm4/trunk/src/placement.c 2009-02-18 19:39:36 UTC (rev 29511)
@@ -917,45 +917,29 @@
* If not, resize to the largest size available that you just have computed.
*/
- wc.x = frameLeft(c);
+ wc.x = full_x + frameLeft(c);
if (west_neighbour)
{
- wc.x += MAX (frameX(west_neighbour) + frameWidth(west_neighbour), full_x);
+ wc.x += MAX (frameX(west_neighbour) + frameWidth(west_neighbour) - full_x, 0);
}
- else
- {
- wc.x += full_x;
- }
- wc.width = full_x - frameRight(c) - wc.x;
+ wc.width = full_w - frameRight(c) - (wc.x - rect.x);
if (east_neighbour)
{
- wc.width += MIN (frameX(east_neighbour) - rect.x, full_w);
+ wc.width -= MAX (full_w - (frameX(east_neighbour) - rect.x), 0);
}
- else
- {
- wc.width += full_w;
- }
- wc.y = frameTop(c);
+ wc.y = full_y + frameTop(c);
if (north_neighbour)
{
- wc.y += MAX (frameY(north_neighbour) + frameHeight(north_neighbour), full_y);
+ wc.y += MAX (frameY(north_neighbour) + frameHeight(north_neighbour) - full_y, 0);
}
- else
- {
- wc.y += full_y;
- }
- wc.height = full_y - frameBottom(c) - wc.y;
+ wc.height = full_h - frameBottom(c) - (wc.y - rect.y);
if (south_neighbour)
{
- wc.height += MIN (frameY(south_neighbour) - rect.y, full_h);
+ wc.height -= MAX (full_h - (frameY(south_neighbour) - rect.y), 0);
}
- else
- {
- wc.height += full_h;
- }
TRACE ("Fill size request: (%d,%d) %dx%d", wc.x, wc.y, wc.width, wc.height);
if (FLAG_TEST (c->xfwm_flags, XFWM_FLAG_MANAGED))
More information about the Xfce4-commits
mailing list