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:sky' as sky; | 5 import 'dart:sky' as sky; |
6 import 'rendering/render_box.dart'; | 6 import 'rendering/render_box.dart'; |
7 import 'rendering/render_node.dart'; | 7 import 'rendering/render_node.dart'; |
| 8 import 'scheduler.dart' as scheduler; |
8 | 9 |
9 class AppView { | 10 class AppView { |
10 | 11 |
11 AppView(RenderBox root) { | 12 AppView(RenderBox root) { |
12 sky.view.setEventCallback(_handleEvent); | 13 sky.view.setEventCallback(_handleEvent); |
13 sky.view.setBeginFrameCallback(_beginFrame); | 14 scheduler.init(); |
| 15 scheduler.addPersistentFrameCallback(_beginFrame); |
14 | 16 |
15 _renderView = new RenderView(child: root); | 17 _renderView = new RenderView(child: root); |
16 _renderView.attach(); | 18 _renderView.attach(); |
17 _renderView.layout(new ViewConstraints(width: sky.view.width, height: sky.vi
ew.height)); | 19 _renderView.layout(new ViewConstraints(width: sky.view.width, height: sky.vi
ew.height)); |
18 | 20 |
19 sky.view.scheduleFrame(); | 21 scheduler.ensureVisualUpdate(); |
20 } | 22 } |
21 | 23 |
22 RenderView _renderView; | 24 RenderView _renderView; |
23 | 25 |
24 Map<int, HitTestResult> _hitTestResultForPointer = new Map<int, HitTestResult>
(); | 26 Map<int, HitTestResult> _hitTestResultForPointer = new Map<int, HitTestResult>
(); |
25 | 27 |
26 RenderBox get root => _renderView.child; | 28 RenderBox get root => _renderView.child; |
27 void set root(RenderBox value) { | 29 void set root(RenderBox value) { |
28 _renderView.child = value; | 30 _renderView.child = value; |
29 } | 31 } |
(...skipping 29 matching lines...) Expand all Loading... |
59 } | 61 } |
60 break; | 62 break; |
61 } | 63 } |
62 assert(result != null); | 64 assert(result != null); |
63 result.path.reversed.forEach((RenderNode node) { | 65 result.path.reversed.forEach((RenderNode node) { |
64 node.handlePointer(event); | 66 node.handlePointer(event); |
65 }); | 67 }); |
66 } | 68 } |
67 | 69 |
68 } | 70 } |
OLD | NEW |