Index: sky/sdk/lib/framework/components2/scaffold.dart |
diff --git a/sky/sdk/lib/framework/components2/scaffold.dart b/sky/sdk/lib/framework/components2/scaffold.dart |
index e5c6c7d0f633df155b6c378b7678907579b135c4..9b3dbefb3043b403f06628c3239111899662ef97 100644 |
--- a/sky/sdk/lib/framework/components2/scaffold.dart |
+++ b/sky/sdk/lib/framework/components2/scaffold.dart |
@@ -117,9 +117,10 @@ class RenderScaffold extends RenderBox { |
} |
if (_slots[ScaffoldSlots.floatingActionButton] != null) { |
RenderBox floatingActionButton = _slots[ScaffoldSlots.floatingActionButton]; |
- floatingActionButton.layout(new BoxConstraints(minWidth: 0.0, maxWidth: size.width, minHeight: size.height, maxHeight: size.height)); |
+ sky.Size area = new sky.Size(size.width + kButtonX, size.height + kButtonY); |
+ floatingActionButton.layout(new BoxConstraints.loose(area)); |
assert(floatingActionButton.parentData is BoxParentData); |
- floatingActionButton.parentData.position = new sky.Point(size.width - kButtonX, bodyPosition + bodyHeight - kButtonY); |
+ floatingActionButton.parentData.position = (area - floatingActionButton.size).toPoint(); |
} |
} |