Skip to content

Commit 6325ca0

Browse files
committed
Jump on next segment when pressing separator key
1 parent 4f6c9df commit 6325ca0

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

src/directive.js

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -442,7 +442,21 @@ angular.module("datetime").directive("datetime", function(datetime, $log, $docum
442442
break;
443443

444444
case "keypress":
445-
if (isPrintableKey(e)) {
445+
var nextSeparatorKeyCode;
446+
// check for separator only when there is a next node which is static string
447+
if (range.node.next && range.node.next.token.name === 'string' && range.node.next.token.type === 'static') {
448+
nextSeparatorKeyCode = range.node.next.viewValue.charCodeAt(0);
449+
}
450+
451+
if (e.keyCode === nextSeparatorKeyCode) {
452+
e.preventDefault();
453+
if (!ngModel.$error.datetime) {
454+
selectRange(range, "next");
455+
} else {
456+
selectRange(errorRange);
457+
}
458+
}
459+
else if (isPrintableKey(e)) {
446460
setTimeout(function(){
447461
range = getRange(element, parser.nodes, range.node);
448462
if (isRangeAtEnd(range)) {

0 commit comments

Comments
 (0)