anchor.diff:          data: new IconThemeData(color: iconThemeColor),
           child: new DefaultTextStyle(
             style: textStyle,
  -          child: new TabBarWrapper(
  -            children: tabs,
  -            selectedIndex: selectedIndex,
  -            backgroundColor: backgroundColor,
  -            indicatorColor: indicatorColor,
  -            indicatorRect: _indicatorRect.value,
  -            textAndIcons: textAndIcons,
  -            isScrollable: isScrollable,
  -            onLayoutChanged: _layoutChanged
  +          child: new BuilderTransition(
  +            variables: [_indicatorRect],
  +            direction: Direction.forward,
  +            performance: _indicatorAnimation,
  +            builder: () {
  +              return new TabBarWrapper(
  +                children: tabs,
  +                selectedIndex: selectedIndex,
  +                backgroundColor: backgroundColor,
  +                indicatorColor: indicatorColor,
  +                indicatorRect: _indicatorRect.value,
  +                textAndIcons: textAndIcons,
  +                isScrollable: isScrollable,
  +                onLayoutChanged: _layoutChanged
  +              );
  +            }
             )
           )
         )
  
positive.code: import 'package:sky/widgets/ink_well.dart';
  import 'package:sky/widgets/scrollable.dart';
  import 'package:sky/widgets/theme.dart';
  import 'package:sky/widgets/framework.dart';
  import 'package:vector_math/vector_math.dart';
  
  
negative.code:     scrollBehavior.isScrollable = source.isScrollable;
    }
  
    AnimatedRect get _indicatorRect => _indicatorAnimation.variable as AnimatedRect;
  
    void _startIndicatorAnimation(int fromTabIndex, int toTabIndex) {
      _indicatorRect
        ..begin = (_indicatorRect.value == null ? _tabIndicatorRect(fromTabIndex) : _indicatorRect.value)
        ..end = _tabIndicatorRect(toTabIndex);
      _indicatorAnimation
        ..progress = 0.0
  