]> source.dussan.org Git - vaadin-framework.git/commitdiff
#6344 fixed, including test case
authorJonatan Kronqvist <jonatan.kronqvist@itmill.com>
Fri, 28 Jan 2011 11:21:24 +0000 (11:21 +0000)
committerJonatan Kronqvist <jonatan.kronqvist@itmill.com>
Fri, 28 Jan 2011 11:21:24 +0000 (11:21 +0000)
svn changeset:17056/svn branch:6.5

src/com/vaadin/terminal/gwt/client/ui/VDateFieldCalendar.java
src/com/vaadin/terminal/gwt/client/ui/VPopupCalendar.java
tests/src/com/vaadin/tests/components/datefield/InlineDateFieldSecondValueChange.html [new file with mode: 0644]

index a14e52d1e6c90c6ac394d99e5db035954a0d1f1c..c8da86f206a4d3097c0e9ffc4a7ea03a25623203 100644 (file)
@@ -114,7 +114,7 @@ public class VDateFieldCalendar extends VDateField {
         Date date2 = calendarPanel.getDate();\r
         Date currentDate = getCurrentDate();\r
         if (currentDate == null || date2.getTime() != currentDate.getTime()) {\r
-            setCurrentDate(date2);\r
+            setCurrentDate((Date) date2.clone());\r
             getClient().updateVariable(getId(), "year", date2.getYear() + 1900,\r
                     false);\r
             if (getCurrentResolution() > VDateField.RESOLUTION_YEAR) {\r
index 31e18247067030338ed22f7fbd006be5d7815017..623bd1bf1b96673f4b19292ef9d05d430b1c0e86 100644 (file)
@@ -103,7 +103,7 @@ public class VPopupCalendar extends VTextualDate implements Paintable, Field,
     private void updateValue(Date newDate) {\r
         Date currentDate = getCurrentDate();\r
         if (currentDate == null || newDate.getTime() != currentDate.getTime()) {\r
-            setCurrentDate(newDate);\r
+            setCurrentDate((Date) newDate.clone());\r
             getClient().updateVariable(getId(), "year",\r
                     newDate.getYear() + 1900, false);\r
             if (getCurrentResolution() > VDateField.RESOLUTION_YEAR) {\r
@@ -164,7 +164,7 @@ public class VPopupCalendar extends VTextualDate implements Paintable, Field,
         if (calendar.getResolution() != currentResolution) {\r
             calendar.setResolution(currentResolution);\r
             if (calendar.getDate() != null) {\r
-                calendar.setDate(getCurrentDate());\r
+                calendar.setDate((Date) getCurrentDate().clone());\r
                 // force re-render when changing resolution only\r
                 calendar.renderCalendar();\r
             }\r
diff --git a/tests/src/com/vaadin/tests/components/datefield/InlineDateFieldSecondValueChange.html b/tests/src/com/vaadin/tests/components/datefield/InlineDateFieldSecondValueChange.html
new file mode 100644 (file)
index 0000000..d82d4e0
--- /dev/null
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>New Test</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">InlineDateFieldSecondValueChange</td></tr>
+</thead><tbody>
+<tr>
+    <td>open</td>
+    <td>/run/com.vaadin.tests.components.datefield.InlineDateFieldTest?restartApplication</td>
+    <td></td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_Smenu#item0</td>
+    <td>8,6</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::Root/VOverlay[0]/VMenuBar[0]#item4</td>
+    <td>30,8</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::Root/VOverlay[1]/VMenuBar[0]#item0</td>
+    <td>72,10</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::Root/VOverlay[2]/VMenuBar[0]#item2</td>
+    <td>23,12</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_Smenu#item0</td>
+    <td>42,7</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::Root/VOverlay[0]/VMenuBar[0]#item4</td>
+    <td>46,10</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::Root/VOverlay[1]/VMenuBar[0]#item4</td>
+    <td>58,6</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::Root/VOverlay[2]/VMenuBar[0]#item2</td>
+    <td>96,13</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_Smenu#item0</td>
+    <td>29,13</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::Root/VOverlay[0]/VMenuBar[0]#item3</td>
+    <td>43,8</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::Root/VOverlay[1]/VMenuBar[0]#item2</td>
+    <td>68,2</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_StestComponent/domChild[0]/domChild[1]/domChild[1]/domChild[0]/domChild[0]/domChild[1]/domChild[3]/domChild[3]/domChild[0]</td>
+    <td>15,11</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_SLog_row_0</td>
+    <td>325,15</td>
+</tr>
+<tr>
+    <td>assertText</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_SLog_row_0</td>
+    <td>3. ValueChangeEvent, new value: Dec 14, 2010 12:00:00.000</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_StestComponent/domChild[0]/domChild[1]/domChild[1]/domChild[0]/domChild[0]/domChild[1]/domChild[3]/domChild[2]/domChild[0]</td>
+    <td>20,6</td>
+</tr>
+<tr>
+    <td>assertText</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_SLog_row_0</td>
+    <td>4. ValueChangeEvent, new value: Dec 13, 2010 12:00:00.000</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_StestComponent/domChild[0]/domChild[1]/domChild[0]/domChild[0]/domChild[0]</td>
+    <td>11,13</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_StestComponent/domChild[0]/domChild[1]/domChild[1]/domChild[0]/domChild[0]/domChild[1]/domChild[3]/domChild[2]/domChild[0]</td>
+    <td>18,12</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_SLog_row_0</td>
+    <td>145,9</td>
+</tr>
+<tr>
+    <td>assertText</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_SLog_row_0</td>
+    <td>5. ValueChangeEvent, new value: Dec 14, 2009 12:00:00.000</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_StestComponent/domChild[0]/domChild[1]/domChild[0]/domChild[3]/domChild[0]</td>
+    <td>11,5</td>
+</tr>
+<tr>
+    <td>mouseClick</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_StestComponent/domChild[0]/domChild[1]/domChild[1]/domChild[0]/domChild[0]/domChild[1]/domChild[3]/domChild[3]/domChild[0]</td>
+    <td>20,9</td>
+</tr>
+<tr>
+    <td>assertText</td>
+    <td>vaadin=runcomvaadintestscomponentsdatefieldInlineDateFieldTest::PID_SLog_row_0</td>
+    <td>6. ValueChangeEvent, new value: Jan 12, 2010 12:00:00.000</td>
+</tr>
+
+</tbody></table>
+</body>
+</html>