timepicker can be empty
update viewValue for timepicker properly
merge branches: accept-empty-timepicker and set-view-value into master