anchor.diff:    _TabBarViewState createState() => new _TabBarViewState<T>();
   }
   
  -// TODO(hansmuller): horizontal scrolling should drive the TabSelection's performance.
  -class _NotScrollable extends BoundedBehavior {
  -  bool get isScrollable => false;
  -}
  -
   class _TabBarViewState<T> extends PageableListState<T, TabBarView<T>> {
  -
  -  final _NotScrollable _notScrollable = new _NotScrollable();
  -  ScrollBehavior createScrollBehavior() => _notScrollable;
  -  ExtentScrollBehavior get scrollBehavior => _notScrollable;
  -
     List<int> _itemIndices = [0, 1];
     AnimationDirection _scrollDirection = AnimationDirection.forward;
  +
  +  int get _tabCount => config.items.length;
   
     void _initItemIndicesAndScrollPosition() {
       final int selectedIndex = config.selection.index;
  
positive.code: // Use of this source code is governed by a BSD-style license that can be
  // found in the LICENSE file.
  
  import 'dart:math' as math;
  
  import 'package:newton/newton.dart';
  
negative.code:     if (selectedIndex == 0) {
        _itemIndices = <int>[0, 1];
        scrollTo(0.0);
      } else if (selectedIndex == _tabCount - 1) {
        _itemIndices = <int>[selectedIndex - 1, selectedIndex];
        scrollTo(1.0);
      } else {
        _itemIndices = <int>[selectedIndex - 1, selectedIndex, selectedIndex + 1];
        scrollTo(1.0);
      }
    }
  
    BoundedBehavior _boundedBehavior;
  
    ExtentScrollBehavior get scrollBehavior {
      _boundedBehavior ??= new BoundedBehavior();
      return _boundedBehavior;
    }
  
    Performance get _performance => config.selection._performance;
  