anchor.diff:              padding: _kMenuHorizontalPadding,
               child: route.items[itemIndex]
             ),
  -          onTap: () => Navigator.pop(context, route.items[itemIndex].value)
  +          onTap: () => Navigator.pop(
  +            context,
  +            new _DropDownRouteResult<T>(route.items[itemIndex].value)
  +          )
           )
         ));
       }
  
positive.code:   }
  }
  
  class _DropDownRoute<T> extends PopupRoute<T> {
    _DropDownRoute({
      Completer<T> completer,
      this.items,
      this.selectedIndex,
      this.rect,
  
negative.code:       rect: _kMenuHorizontalPadding.inflateRect(rect),
        elevation: config.elevation
      ));
      completer.future.then((_DropDownRouteResult<T> newValue) {
        if (!mounted || newValue == null)
          return;
        if (config.onChanged != null)
          config.onChanged(newValue.result);
      });
    }
  
  