Skip to content

Commit 160a631

Browse files
committed
Jump on next segment when pressing separator key
1 parent 799d0dc commit 160a631

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
@@ -446,7 +446,21 @@ angular.module("datetime").directive("datetime", function(datetime, $log, $docum
446446
break;
447447

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

0 commit comments

Comments
 (0)