Skip to content
This repository has been archived by the owner on Dec 1, 2023. It is now read-only.

Commit

Permalink
fix(datepicker): fix keyboard nav in month/year views
Browse files Browse the repository at this point in the history
setYear and setMonth return integer values (milliseconds from the
epoch). `select` expects a Date object, so convert integers to Dates
before passing them to `select`.
  • Loading branch information
mattjbray authored and mgcrea committed Apr 10, 2014
1 parent 82e03ef commit ef76709
Showing 1 changed file with 8 additions and 8 deletions.
16 changes: 8 additions & 8 deletions src/datepicker/datepicker.js
Original file line number Diff line number Diff line change
Expand Up @@ -454,10 +454,10 @@ angular.module('mgcrea.ngStrap.datepicker', ['mgcrea.ngStrap.helpers.dateParser'
},
onKeyDown: function(evt) {
var actualMonth = picker.$date.getMonth();
if(evt.keyCode === 37) picker.select(picker.$date.setMonth(actualMonth - 1), true);
else if(evt.keyCode === 38) picker.select(picker.$date.setMonth(actualMonth - 4), true);
else if(evt.keyCode === 39) picker.select(picker.$date.setMonth(actualMonth + 1), true);
else if(evt.keyCode === 40) picker.select(picker.$date.setMonth(actualMonth + 4), true);
if(evt.keyCode === 37) picker.select(new Date(picker.$date.setMonth(actualMonth - 1)), true);
else if(evt.keyCode === 38) picker.select(new Date(picker.$date.setMonth(actualMonth - 4)), true);
else if(evt.keyCode === 39) picker.select(new Date(picker.$date.setMonth(actualMonth + 1)), true);
else if(evt.keyCode === 40) picker.select(new Date(picker.$date.setMonth(actualMonth + 4)), true);
}
}, {
name: 'year',
Expand Down Expand Up @@ -494,10 +494,10 @@ angular.module('mgcrea.ngStrap.datepicker', ['mgcrea.ngStrap.helpers.dateParser'
},
onKeyDown: function(evt) {
var actualYear = picker.$date.getFullYear();
if(evt.keyCode === 37) picker.select(picker.$date.setYear(actualYear - 1), true);
else if(evt.keyCode === 38) picker.select(picker.$date.setYear(actualYear - 4), true);
else if(evt.keyCode === 39) picker.select(picker.$date.setYear(actualYear + 1), true);
else if(evt.keyCode === 40) picker.select(picker.$date.setYear(actualYear + 4), true);
if(evt.keyCode === 37) picker.select(new Date(picker.$date.setYear(actualYear - 1)), true);
else if(evt.keyCode === 38) picker.select(new Date(picker.$date.setYear(actualYear - 4)), true);
else if(evt.keyCode === 39) picker.select(new Date(picker.$date.setYear(actualYear + 1)), true);
else if(evt.keyCode === 40) picker.select(new Date(picker.$date.setYear(actualYear + 4)), true);
}
}];

Expand Down

0 comments on commit ef76709

Please sign in to comment.