| Index: runtime/observatory/lib/src/elements/nav/vm_menu_wrapper.dart
|
| diff --git a/runtime/observatory/lib/src/elements/nav/isolate_menu_wrapper.dart b/runtime/observatory/lib/src/elements/nav/vm_menu_wrapper.dart
|
| similarity index 56%
|
| copy from runtime/observatory/lib/src/elements/nav/isolate_menu_wrapper.dart
|
| copy to runtime/observatory/lib/src/elements/nav/vm_menu_wrapper.dart
|
| index c2cf8f3d15b1b0d01e8258f05cdc6011dcb630eb..ef71b2dd4bed179e01a8c2efed0d1a06271beafc 100644
|
| --- a/runtime/observatory/lib/src/elements/nav/isolate_menu_wrapper.dart
|
| +++ b/runtime/observatory/lib/src/elements/nav/vm_menu_wrapper.dart
|
| @@ -6,38 +6,36 @@ import 'dart:html';
|
| import 'dart:async';
|
|
|
| import 'package:observatory/app.dart';
|
| -import 'package:observatory/service.dart';
|
| import 'package:observatory/mocks.dart';
|
| import 'package:observatory/models.dart' as M;
|
| +import 'package:observatory/service.dart';
|
| +import 'package:observatory/service_common.dart';
|
| import 'package:observatory/src/elements/helpers/tag.dart';
|
| import 'package:observatory/src/elements/shims/binding.dart';
|
| -import 'package:observatory/src/elements/nav/isolate_menu.dart';
|
| +import 'package:observatory/src/elements/nav/vm_menu.dart';
|
|
|
| -class NavIsolateMenuElementWrapper extends HtmlElement {
|
| - static final binder = new Binder<NavIsolateMenuElementWrapper>(
|
| - const [const Binding('last'), const Binding('isolate')]);
|
| +class NavVMMenuElementWrapper extends HtmlElement {
|
| + static final binder = new Binder<NavVMMenuElementWrapper>(
|
| + const [const Binding('last'), const Binding('vm')]);
|
|
|
| - static const tag =
|
| - const Tag<NavIsolateMenuElementWrapper>('isolate-nav-menu');
|
| + static const tag = const Tag<NavVMMenuElementWrapper>('vm-nav-menu');
|
|
|
| - final StreamController<M.IsolateUpdateEvent> _updatesController =
|
| - new StreamController<M.IsolateUpdateEvent>();
|
| - Stream<M.IsolateUpdateEvent> _updates;
|
| StreamSubscription _subscription;
|
| + StreamController<M.VMUpdateEvent> _updatesController =
|
| + new StreamController<M.VMUpdateEvent>.broadcast();
|
|
|
| bool _last = false;
|
| - Isolate _isolate;
|
| + VM _vm;
|
| bool get last => _last;
|
| - Isolate get isolate => _isolate;
|
| + VM get vm => _vm;
|
| set last(bool value) {
|
| _last = value; render();
|
| }
|
| - set isolate(Isolate value) {
|
| - _isolate = value; _detached(); _attached();
|
| + set vm(VM value) {
|
| + _vm = value; _detached(); _attached();
|
| }
|
|
|
| - NavIsolateMenuElementWrapper.created() : super.created() {
|
| - _updates = _updatesController.stream.asBroadcastStream();
|
| + NavVMMenuElementWrapper.created() : super.created() {
|
| binder.registerCallback(this);
|
| _last = _getBoolAttribute('last');
|
| createShadowRoot();
|
| @@ -57,9 +55,9 @@ class NavIsolateMenuElementWrapper extends HtmlElement {
|
| }
|
|
|
| void _attached() {
|
| - if (_isolate != null) {
|
| - _subscription = _isolate.changes.listen((_) {
|
| - _updatesController.add(new IsolateUpdateEventMock(isolate: isolate));
|
| + if (_vm != null) {
|
| + _subscription = _vm.changes.listen((_) {
|
| + _updatesController.add(new VMUpdateEventMock(vm: _vm));
|
| });
|
| }
|
| render();
|
| @@ -74,11 +72,12 @@ class NavIsolateMenuElementWrapper extends HtmlElement {
|
|
|
| void render() {
|
| shadowRoot.children = [];
|
| - if (_isolate == null || _last == null) return;
|
| + if (_vm == null || _last == null) return;
|
|
|
| shadowRoot.children = [
|
| - new NavIsolateMenuElement(isolate, _updates, last: last,
|
| - queue: ObservatoryApplication.app.queue)
|
| + new NavVMMenuElement(vm, _updatesController.stream, last: last,
|
| + target: (vm as CommonWebSocketVM)?.target,
|
| + queue: ObservatoryApplication.app.queue)
|
| ..children = [new ContentElement()]
|
| ];
|
| }
|
|
|