anchor.diff:    set date(Date value) {
       if (value != _date) {
         _date = value;
  +      if (_date != null && _time == null) {
  +        // Set default time to minimum time if date is minimum date.
  +        if (_sameDate(_date, minDateTime)) {
  +          _time = cloneDateTime(minDateTime);
  +        } else {
  +          _time =
  +              _utc ? new DateTime.utc(_date.year) : new DateTime(_date.year);
  +        }
  +      }
         _updateDateTimeAndNotify();
       }
     }
  
positive.code:     }
    }
  
    static DateTime cloneDateTime(DateTime dateTime) {
      return dateTime != null
          ? new DateTime.fromMillisecondsSinceEpoch(
              dateTime.millisecondsSinceEpoch)
          : null;
    }
  }
  
negative.code: 
    /// Returns minimum time for time picker when selected date is minimum date.
    DateTime get minTime {
      if (_sameDate(_date, minDateTime)) {
        return cloneDateTime(minDateTime);
      }
      return null;
  