fixed bug 532
[org.ibex.core.git] / src / org / ibex / Box.java
index fb4e985..49808b3 100644 (file)
@@ -312,7 +312,7 @@ public final class Box extends JSScope implements Scheduler.Task {
         //#repeat col/row colspan/rowspan contentwidth/contentheight width/height HSHRINK/VSHRINK numregions/numregions_v \
         //        maxwidth/maxheight cols/rows minwidth/minheight lp_h/lp lp_h/lp easy_width/easy_height regions/regions_v \
         //        computeRegions/computeRegions_v
-        if (numkids > 0 && cols > 1) do {
+        if (numkids > 0) do {
             computeRegions();
             int nc = numregions * 3 + numkids * 2 + 3;
             if (coeff == null || nc+1>coeff.length) coeff = new float[nc+1];
@@ -534,8 +534,8 @@ public final class Box extends JSScope implements Scheduler.Task {
         case "hshrink": return B(test(HSHRINK));
         case "vshrink": return B(test(VSHRINK));
         case "aspect": return N(aspect);
-        case "x": return (parent == null || !test(VISIBLE)) ? N(0) : N(x);
-        case "y": return (parent == null || !test(VISIBLE)) ? N(0) : N(y);
+        case "x": return (parent == null || !test(VISIBLE)) ? N(0) : test(PACKED) ? N(x) : N(ax);
+        case "y": return (parent == null || !test(VISIBLE)) ? N(0) : test(PACKED) ? N(y) : N(ay);
         case "cols": return test(FIXED) == COLS ? N(cols) : N(0);
         case "rows": return test(FIXED) == ROWS ? N(rows) : N(0);
         case "colspan": return N(colspan);