summaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
authorJonatan Kronqvist <jonatan.kronqvist@itmill.com>2010-09-14 10:36:25 +0000
committerJonatan Kronqvist <jonatan.kronqvist@itmill.com>2010-09-14 10:36:25 +0000
commit7cbe6fa1aebeab3408fcb8376cd7b48d74d4bed0 (patch)
tree8989dcabd4c432336befc6fc024404b3b8f4bd5e /src/com
parentae74381de52b9b5a50314c1d0502eda5211df7b5 (diff)
downloadvaadin-framework-7cbe6fa1aebeab3408fcb8376cd7b48d74d4bed0.tar.gz
vaadin-framework-7cbe6fa1aebeab3408fcb8376cd7b48d74d4bed0.zip
Fix for #5594
svn changeset:14896/svn branch:6.4
Diffstat (limited to 'src/com')
-rw-r--r--src/com/vaadin/terminal/gwt/client/ui/VCalendarPanel.java14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/com/vaadin/terminal/gwt/client/ui/VCalendarPanel.java b/src/com/vaadin/terminal/gwt/client/ui/VCalendarPanel.java
index 0ca28481d1..156e6ff5ef 100644
--- a/src/com/vaadin/terminal/gwt/client/ui/VCalendarPanel.java
+++ b/src/com/vaadin/terminal/gwt/client/ui/VCalendarPanel.java
@@ -262,17 +262,19 @@ public class VCalendarPanel extends FocusableFlexTable implements
private void selectFocused() {
if (focusedDate != null) {
int changedFields = 0;
- if (value.getYear() != focusedDate.getYear()) {
- value.setYear(focusedDate.getYear());
- changedFields += VDateField.RESOLUTION_YEAR;
+ // #5594 First set the day, to make sure that moving from the 31 on
+ // to a month with 30 days to spill over to the wrong month.
+ if (value.getDate() != focusedDate.getDate()) {
+ value.setDate(focusedDate.getDate());
+ changedFields += VDateField.RESOLUTION_DAY;
}
if (value.getMonth() != focusedDate.getMonth()) {
value.setMonth(focusedDate.getMonth());
changedFields += VDateField.RESOLUTION_MONTH;
}
- if (value.getDate() != focusedDate.getDate()) {
- value.setDate(focusedDate.getDate());
- changedFields += VDateField.RESOLUTION_DAY;
+ if (value.getYear() != focusedDate.getYear()) {
+ value.setYear(focusedDate.getYear());
+ changedFields += VDateField.RESOLUTION_YEAR;
}
selectDate(focusedDate.getDate());