summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonatan Kronqvist <jonatan.kronqvist@itmill.com>2010-09-17 13:18:14 +0000
committerJonatan Kronqvist <jonatan.kronqvist@itmill.com>2010-09-17 13:18:14 +0000
commit7934259417e146c599323298c9c9d533494f6f81 (patch)
tree492579722ea9bf1744b894a763162eea08b3691c
parent5690f4e70fa4d20894ec98a5c023995ff7564c68 (diff)
downloadvaadin-framework-7934259417e146c599323298c9c9d533494f6f81.tar.gz
vaadin-framework-7934259417e146c599323298c9c9d533494f6f81.zip
Fixes for the DateField component (#5592 & others)
svn changeset:14996/svn branch:6.4
-rw-r--r--src/com/vaadin/terminal/gwt/client/ui/VCalendarPanel.java4
-rw-r--r--src/com/vaadin/terminal/gwt/client/ui/VPopupCalendar.java1
-rw-r--r--tests/src/com/vaadin/tests/components/datefield/PopupDateFields.java2
3 files changed, 7 insertions, 0 deletions
diff --git a/src/com/vaadin/terminal/gwt/client/ui/VCalendarPanel.java b/src/com/vaadin/terminal/gwt/client/ui/VCalendarPanel.java
index dd4411b60e..4b47d18b65 100644
--- a/src/com/vaadin/terminal/gwt/client/ui/VCalendarPanel.java
+++ b/src/com/vaadin/terminal/gwt/client/ui/VCalendarPanel.java
@@ -288,6 +288,10 @@ public class VCalendarPanel extends FocusableFlexTable implements
public void setResolution(int resolution) {
this.resolution = resolution;
+ if (time != null) {
+ time.removeFromParent();
+ time = null;
+ }
}
private boolean isReadonly() {
diff --git a/src/com/vaadin/terminal/gwt/client/ui/VPopupCalendar.java b/src/com/vaadin/terminal/gwt/client/ui/VPopupCalendar.java
index b0c8523753..4e7d70e5c5 100644
--- a/src/com/vaadin/terminal/gwt/client/ui/VPopupCalendar.java
+++ b/src/com/vaadin/terminal/gwt/client/ui/VPopupCalendar.java
@@ -161,6 +161,7 @@ public class VPopupCalendar extends VTextualDate implements Paintable, Field,
if (calendar.getResolution() != currentResolution) {
calendar.setResolution(currentResolution);
if (calendar.getDate() != null) {
+ calendar.setDate(getCurrentDate());
// force re-render when changing resolution only
calendar.renderCalendar();
}
diff --git a/tests/src/com/vaadin/tests/components/datefield/PopupDateFields.java b/tests/src/com/vaadin/tests/components/datefield/PopupDateFields.java
index e52149c30e..d032ec1653 100644
--- a/tests/src/com/vaadin/tests/components/datefield/PopupDateFields.java
+++ b/tests/src/com/vaadin/tests/components/datefield/PopupDateFields.java
@@ -19,6 +19,7 @@ import com.vaadin.ui.DateField;
import com.vaadin.ui.NativeSelect;
import com.vaadin.ui.PopupDateField;
+@SuppressWarnings("serial")
public class PopupDateFields extends ComponentTestCase<PopupDateField> {
private static final Locale[] LOCALES = new Locale[] { Locale.US,
@@ -182,6 +183,7 @@ public class PopupDateFields extends ComponentTestCase<PopupDateField> {
public void valueChange(ValueChangeEvent event) {
Object itemId = event.getProperty().getValue();
Item item = select.getItem(itemId);
+ @SuppressWarnings("unchecked")
T value = (T) item.getItemProperty(VALUE).getValue();
doCommand(command, value);