anchor.diff:      isExpanded = closeMenuOnClick ? !isExpanded : true;
       _onTrigger.add(null);
     }
  +
  +  MaterialButtonComponent _button;
  +
  +  @ViewChild(MaterialButtonComponent)
  +  set button(MaterialButtonComponent b) {
  +    _button = b;
  +  }
  +
  +  MenuPopupComponent _menuPopup;
  +
  +  @ViewChild(MenuPopupComponent)
  +  set menuPopup(MenuPopupComponent m) {
  +    _menuPopup = m;
  +  }
  +
  +  Focusable get _focusTarget =>
  +      disabled ? null : (isExpanded ? _menuPopup : _button);
  +
  +  @override
  +  void ngAfterViewInit() {
  +    focusable = _focusTarget;
  +    // Other listeners which call focus() on isExpandedChange may have to await
  +    // an extra cycle before the focusable is updated.
  +    _disposer.addStreamSubscription(isExpandedChange.listen((_) {
  +      focusable = _focusTarget;
  +    }));
  +  }
  +
  +  @override
  +  void ngOnDestroy() {
  +    _disposer.dispose();
  +  }
   }
  
positive.code: import 'dart:async';
  
  import 'package:angular/angular.dart';
  import 'package:angular_components/material_button/material_button.dart';
  import 'package:angular_components/material_icon/material_icon.dart';
  import 'package:angular_components/material_menu/menu_popup.dart';
  import 'package:angular_components/material_menu/menu_popup_wrapper.dart';
  import 'package:angular_components/material_popup/material_popup.dart';
  import 'package:angular_components/material_tooltip/material_tooltip.dart';
  import 'package:angular_components/model/menu/menu.dart';
  
  /// The Material Menu renders a menu based on a [MenuModel] object. This menu
  /// comprises a `material-list` in a `material-popup` and a
  
negative.code:   // TODO(google): Change to `Visibility.local` to reduce code size.
    visibility: Visibility.all,
  )
  class MaterialMenuComponent extends Object
      with FocusableMixin, MenuPopupWrapper
      implements AfterViewInit, OnDestroy {
    final _onTrigger = new StreamController<Null>();
    final _disposer = new Disposer.oneShot();
  
    /// Trigger button text. Ignored if the [MenuModel] has an icon.
    @Input()
  