[Time Conductor] Fix date picker toggle

nasa/openmctweb#297; avoid flag toggled to display date-time
picker becoming lost in a child scope.
This commit is contained in:
Victor Woeltjen 2015-11-12 14:49:19 -08:00
parent 7264a711a3
commit 9f2303face
3 changed files with 10 additions and 3 deletions

View File

@ -6,10 +6,10 @@
</input> </input>
<a class="ui-symbol icon icon-calendar" <a class="ui-symbol icon icon-calendar"
ng-if="structure.format === 'utc' || !structure.format" ng-if="structure.format === 'utc' || !structure.format"
ng-click="pickerActive = !pickerActive"> ng-click="picker.active = !picker.active">
</a> </a>
<mct-popup ng-if="pickerActive"> <mct-popup ng-if="picker.active">
<div mct-click-elsewhere="pickerActive = false"> <div mct-click-elsewhere="picker.active = false">
<mct-control key="'datetime-picker'" <mct-control key="'datetime-picker'"
ng-model="ngModel" ng-model="ngModel"
field="field" field="field"

View File

@ -69,9 +69,12 @@ define(
updateFromModel($scope.ngModel[$scope.field]); updateFromModel($scope.ngModel[$scope.field]);
} }
$scope.picker = { active: false };
$scope.$watch('structure.format', setFormat); $scope.$watch('structure.format', setFormat);
$scope.$watch('ngModel[field]', updateFromModel); $scope.$watch('ngModel[field]', updateFromModel);
$scope.$watch('textValue', updateFromView); $scope.$watch('textValue', updateFromView);
} }
return DateTimeFieldController; return DateTimeFieldController;

View File

@ -91,6 +91,10 @@ define(
expect(mockScope.textValue).toEqual("1977-05-25 17:30:00"); expect(mockScope.textValue).toEqual("1977-05-25 17:30:00");
}); });
it("exposes toggle state for date-time picker", function () {
expect(mockScope.picker.active).toBe(false);
});
describe("when user input is invalid", function () { describe("when user input is invalid", function () {
var newText, oldValue; var newText, oldValue;