| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 import 'dart:async'; | 5 import 'dart:async'; |
| 6 import 'dart:sky' as sky; | 6 import 'dart:sky' as sky; |
| 7 | 7 |
| 8 import 'package:vector_math/vector_math.dart'; | 8 import 'package:vector_math/vector_math.dart'; |
| 9 | 9 |
| 10 import '../mojo/asset_bundle.dart'; |
| 10 import '../mojo/net/image_cache.dart' as image_cache; | 11 import '../mojo/net/image_cache.dart' as image_cache; |
| 11 import '../painting/text_style.dart'; | 12 import '../painting/text_style.dart'; |
| 12 import '../rendering/block.dart'; | 13 import '../rendering/block.dart'; |
| 13 import '../rendering/box.dart'; | 14 import '../rendering/box.dart'; |
| 14 import '../rendering/flex.dart'; | 15 import '../rendering/flex.dart'; |
| 15 import '../rendering/object.dart'; | 16 import '../rendering/object.dart'; |
| 16 import '../rendering/paragraph.dart'; | 17 import '../rendering/paragraph.dart'; |
| 17 import '../rendering/stack.dart'; | 18 import '../rendering/stack.dart'; |
| 18 import 'default_text_style.dart'; | 19 import 'default_text_style.dart'; |
| 19 import 'widget.dart'; | 20 import 'widget.dart'; |
| (...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 543 NetworkImage({ String src, this.size }) : src = src, super(key: src); | 544 NetworkImage({ String src, this.size }) : src = src, super(key: src); |
| 544 | 545 |
| 545 final String src; | 546 final String src; |
| 546 final Size size; | 547 final Size size; |
| 547 | 548 |
| 548 Widget build() { | 549 Widget build() { |
| 549 return new FutureImage(image: image_cache.load(src), size: size); | 550 return new FutureImage(image: image_cache.load(src), size: size); |
| 550 } | 551 } |
| 551 } | 552 } |
| 552 | 553 |
| 554 class AssetImage extends Component { |
| 555 AssetImage({ this.bundle, String name, this.size }) |
| 556 : name = name, super(key: name); |
| 557 |
| 558 final AssetBundle bundle; |
| 559 final String name; |
| 560 final Size size; |
| 561 |
| 562 Widget build() { |
| 563 return new FutureImage(image: bundle.loadImage(name), size: size); |
| 564 } |
| 565 } |
| 566 |
| 553 class WidgetToRenderBoxAdapter extends LeafRenderObjectWrapper { | 567 class WidgetToRenderBoxAdapter extends LeafRenderObjectWrapper { |
| 554 | 568 |
| 555 WidgetToRenderBoxAdapter(RenderBox renderBox) | 569 WidgetToRenderBoxAdapter(RenderBox renderBox) |
| 556 : renderBox = renderBox, | 570 : renderBox = renderBox, |
| 557 super(key: renderBox.hashCode.toString()); | 571 super(key: renderBox.hashCode.toString()); |
| 558 | 572 |
| 559 RenderBox get root => super.root; | 573 RenderBox get root => super.root; |
| 560 RenderBox createNode() => this.renderBox; | 574 RenderBox createNode() => this.renderBox; |
| 561 | 575 |
| 562 final RenderBox renderBox; | 576 final RenderBox renderBox; |
| 563 | 577 |
| 564 void syncRenderObject(Widget old) { | 578 void syncRenderObject(Widget old) { |
| 565 super.syncRenderObject(old); | 579 super.syncRenderObject(old); |
| 566 if (old != null) { | 580 if (old != null) { |
| 567 assert(old is WidgetToRenderBoxAdapter); | 581 assert(old is WidgetToRenderBoxAdapter); |
| 568 assert(root == old.root); | 582 assert(root == old.root); |
| 569 } | 583 } |
| 570 } | 584 } |
| 571 | 585 |
| 572 void remove() { | 586 void remove() { |
| 573 RenderObjectWrapper ancestor = findAncestor(RenderObjectWrapper); | 587 RenderObjectWrapper ancestor = findAncestor(RenderObjectWrapper); |
| 574 assert(ancestor is RenderObjectWrapper); | 588 assert(ancestor is RenderObjectWrapper); |
| 575 ancestor.detachChildRoot(this); | 589 ancestor.detachChildRoot(this); |
| 576 super.remove(); | 590 super.remove(); |
| 577 } | 591 } |
| 578 | 592 |
| 579 } | 593 } |
| OLD | NEW |