Index: sky/sdk/lib/widgets/widget.dart |
diff --git a/sky/sdk/lib/widgets/widget.dart b/sky/sdk/lib/widgets/widget.dart |
index 389d1888b17dafbdd060477f4b75f0b8e86c4166..a64994c3c566c0e83bdff8f684c275a7580634ea 100644 |
--- a/sky/sdk/lib/widgets/widget.dart |
+++ b/sky/sdk/lib/widgets/widget.dart |
@@ -10,6 +10,7 @@ import 'dart:sky' as sky; |
import '../rendering/box.dart'; |
import '../rendering/object.dart'; |
import '../rendering/sky_binding.dart'; |
+import '../sky/hittest.dart'; |
export '../rendering/box.dart' show BoxConstraints, BoxDecoration, Border, BorderSide, EdgeDims; |
export '../rendering/flex.dart' show FlexDirection; |
@@ -784,19 +785,16 @@ abstract class MultiChildRenderObjectWrapper extends RenderObjectWrapper { |
class WidgetSkyBinding extends SkyBinding { |
WidgetSkyBinding({ RenderView renderViewOverride: null }) |
- : super(renderViewOverride: renderViewOverride) { |
- assert(_skyBinding == null); |
- } |
+ : super(renderViewOverride: renderViewOverride); |
- static WidgetSkyBinding _skyBinding; |
- static SkyBinding get skyBinding => _skyBinding; |
static void initWidgetSkyBinding({ RenderView renderViewOverride: null }) { |
- if (_skyBinding == null) |
- _skyBinding = new WidgetSkyBinding(renderViewOverride: renderViewOverride); |
+ if (SkyBinding.instance == null) |
+ new WidgetSkyBinding(renderViewOverride: renderViewOverride); |
+ assert(SkyBinding.instance is WidgetSkyBinding); |
} |
void dispatchEvent(sky.Event event, HitTestResult result) { |
- assert(_skyBinding == this); |
+ assert(SkyBinding.instance == this); |
super.dispatchEvent(event, result); |
for (HitTestEntry entry in result.path.reversed) { |
Widget target = RenderObjectWrapper._getMounted(entry.target); |
@@ -841,16 +839,15 @@ abstract class AbstractWidgetRoot extends Component { |
class RenderViewWrapper extends OneChildRenderObjectWrapper { |
RenderViewWrapper({ String key, Widget child }) : super(key: key, child: child); |
- |
RenderView get root => super.root; |
- RenderView createNode() => WidgetSkyBinding._skyBinding.renderView; |
+ RenderView createNode() => SkyBinding.instance.renderView; |
} |
class AppContainer extends AbstractWidgetRoot { |
- AppContainer(this.app); |
- |
+ AppContainer(this.app) { |
+ assert(SkyBinding.instance is WidgetSkyBinding); |
+ } |
final App app; |
- |
Widget build() => new RenderViewWrapper(child: app); |
} |