anchor.diff:  
       _optionsListener?.cancel();
       _optionsListener = options?.stream?.listen((_) {
  +      _changeDetector.markForCheck();
         _updateActiveModel();
         _setInitialActiveItem();
       });
  
positive.code: 
    @override
    set selection(SelectionModel<T> newSelection) {
      super.selection = newSelection;
      _setInitialActiveItem();
  
      _selectionListener?.cancel();
      _selectionListener = selection?.selectionChanges?.listen((changes) {
        // Update active item if new items are selected.
        var added =
            changes.last.added.isNotEmpty ? changes.last.added.first : null;
  
negative.code: 
    @override
    set options(SelectionOptions<T> newOptions) {
      _changeDetector.markForCheck();
      super.options = newOptions;
  
      _updateActiveModel();
  