From 3a8b97e3697fb7df0c3f54f813e2018168ef05a7 Mon Sep 17 00:00:00 2001 From: Mika Murtojärvi Date: Wed, 17 Jun 2015 07:56:55 +0000 Subject: Revert "Prevent field from updating when removing text change listener. (#16270)" This reverts commit 4af793d06a0f4a6577aad13403ca7982c6fce224. Test ConverterThatEnforcesAFormatTest.checkElaborating is broken by this change. Change-Id: I8243f6a7bff6d7011d402bce4b614f7d2e4206fd --- server/src/com/vaadin/ui/AbstractTextField.java | 33 ++++++++++++++----------- 1 file changed, 18 insertions(+), 15 deletions(-) (limited to 'server/src/com/vaadin/ui') diff --git a/server/src/com/vaadin/ui/AbstractTextField.java b/server/src/com/vaadin/ui/AbstractTextField.java index 14c135228c..93025ac0fd 100644 --- a/server/src/com/vaadin/ui/AbstractTextField.java +++ b/server/src/com/vaadin/ui/AbstractTextField.java @@ -126,22 +126,25 @@ public abstract class AbstractTextField extends AbstractField implements selectionPosition = -1; } - target.addAttribute(TextFieldConstants.ATTR_TEXTCHANGE_EVENTMODE, - getTextChangeEventMode().toString()); - target.addAttribute(TextFieldConstants.ATTR_TEXTCHANGE_TIMEOUT, - getTextChangeTimeout()); - if (lastKnownTextContent != null) { - /* - * The field has be repainted for some reason (e.g. caption, size, - * stylename), but the value has not been changed since the last - * text change event. Let the client side know about the value the - * server side knows. Client side may then ignore the actual value, - * depending on its state. - */ - target.addAttribute( - TextFieldConstants.ATTR_NO_VALUE_CHANGE_BETWEEN_PAINTS, - true); + if (hasListeners(TextChangeEvent.class)) { + target.addAttribute(TextFieldConstants.ATTR_TEXTCHANGE_EVENTMODE, + getTextChangeEventMode().toString()); + target.addAttribute(TextFieldConstants.ATTR_TEXTCHANGE_TIMEOUT, + getTextChangeTimeout()); + if (lastKnownTextContent != null) { + /* + * The field has be repainted for some reason (e.g. caption, + * size, stylename), but the value has not been changed since + * the last text change event. Let the client side know about + * the value the server side knows. Client side may then ignore + * the actual value, depending on its state. + */ + target.addAttribute( + TextFieldConstants.ATTR_NO_VALUE_CHANGE_BETWEEN_PAINTS, + true); + } } + } @Override -- cgit v1.2.3 From 122fccfe01f8f1aca922d861b44853b09fe8f603 Mon Sep 17 00:00:00 2001 From: Leif Åstrand Date: Mon, 18 May 2015 15:10:30 +0300 Subject: Write true as attribute="" (#17519) Change-Id: I49287cc38605abb75059cb553e3baed2a8359067 --- server/src/com/vaadin/ui/AbstractComponent.java | 12 ++--- .../com/vaadin/ui/declarative/DesignFormatter.java | 6 ++- .../components/menubar/MenuBarDeclarativeTest.java | 21 +++++---- .../design/AbstractComponentSetResponsiveTest.java | 2 +- .../vaadin/tests/design/DesignFormatterTest.java | 2 +- .../component/DeclarativeMarginTestBase.java | 10 ++--- .../AbstractComponentDeclarativeTest.java | 16 +++---- .../AbstractFieldDeclarativeTest.java | 8 ++-- .../AbstractSelectDeclarativeTest.java | 8 ++-- .../OptionGroupDeclarativeTests.java | 2 +- .../AbstractSplitPanelDeclarativeTest.java | 2 +- .../AbstractTextFieldDeclarativeTest.java | 2 +- .../component/audio/AudioDeclarativeTest.java | 2 +- .../component/audio/VideoDeclarativeTest.java | 2 +- .../checkbox/CheckboxDeclarativeTest.java | 2 +- .../AbstractColorPickerDeclarativeTest.java | 4 +- .../datefield/DateFieldDeclarativeTest.java | 2 +- .../declarative/GridColumnDeclarativeTest.java | 8 ++-- .../declarative/GridDeclarativeAttributeTest.java | 4 +- .../GridHeaderFooterDeclarativeTest.java | 52 +++++++++++----------- .../declarative/GridInlineDataDeclarativeTest.java | 14 +++--- .../popupview/PopupViewDeclarativeTest.java | 2 +- .../progressbar/ProgressBarDeclarativeTest.java | 2 +- .../richtextarea/RichTextAreaDeclarativeTest.java | 2 +- .../component/table/TableDeclarativeTest.java | 8 ++-- .../tabsheet/TabSheetDeclarativeTest.java | 8 ++-- .../treetable/TreeTableDeclarativeTest.java | 2 +- .../component/window/WindowDeclarativeTest.java | 4 +- 28 files changed, 105 insertions(+), 104 deletions(-) (limited to 'server/src/com/vaadin/ui') diff --git a/server/src/com/vaadin/ui/AbstractComponent.java b/server/src/com/vaadin/ui/AbstractComponent.java index 18c3509af7..f499cb1fec 100644 --- a/server/src/com/vaadin/ui/AbstractComponent.java +++ b/server/src/com/vaadin/ui/AbstractComponent.java @@ -1170,16 +1170,16 @@ public abstract class AbstractComponent extends AbstractClientConnector // first try the full shorthands if (widthFull && heightFull) { - attributes.put("size-full", "true"); + attributes.put("size-full", ""); } else if (widthAuto && heightAuto) { - attributes.put("size-auto", "true"); + attributes.put("size-auto", ""); } else { // handle width if (!hasEqualWidth(defaultInstance)) { if (widthFull) { - attributes.put("width-full", "true"); + attributes.put("width-full", ""); } else if (widthAuto) { - attributes.put("width-auto", "true"); + attributes.put("width-auto", ""); } else { String widthString = DesignAttributeHandler.getFormatter() .format(getWidth()) + getWidthUnits().getSymbol(); @@ -1190,9 +1190,9 @@ public abstract class AbstractComponent extends AbstractClientConnector if (!hasEqualHeight(defaultInstance)) { // handle height if (heightFull) { - attributes.put("height-full", "true"); + attributes.put("height-full", ""); } else if (heightAuto) { - attributes.put("height-auto", "true"); + attributes.put("height-auto", ""); } else { String heightString = DesignAttributeHandler.getFormatter() .format(getHeight()) + getHeightUnits().getSymbol(); diff --git a/server/src/com/vaadin/ui/declarative/DesignFormatter.java b/server/src/com/vaadin/ui/declarative/DesignFormatter.java index b1d2520631..73c45caed4 100644 --- a/server/src/com/vaadin/ui/declarative/DesignFormatter.java +++ b/server/src/com/vaadin/ui/declarative/DesignFormatter.java @@ -94,7 +94,11 @@ public class DesignFormatter implements Serializable { public String convertToPresentation(Boolean value, Class targetType, Locale locale) throws Converter.ConversionException { - return String.valueOf(value.booleanValue()); + if (value.booleanValue()) { + return ""; + } else { + return "false"; + } } @Override diff --git a/server/tests/src/com/vaadin/tests/components/menubar/MenuBarDeclarativeTest.java b/server/tests/src/com/vaadin/tests/components/menubar/MenuBarDeclarativeTest.java index 3bc1ebfbf9..d058ae1dcd 100644 --- a/server/tests/src/com/vaadin/tests/components/menubar/MenuBarDeclarativeTest.java +++ b/server/tests/src/com/vaadin/tests/components/menubar/MenuBarDeclarativeTest.java @@ -38,10 +38,10 @@ public class MenuBarDeclarativeTest extends DeclarativeTestBase { @Test // #16328 public void testReadWrite() throws IOException { - String design = "" - + "Save" + String design = "" + + "Save" + "Open" - + "Close" + + "Close" + "Help" + "About" + "SubItem" @@ -69,19 +69,19 @@ public class MenuBarDeclarativeTest extends DeclarativeTestBase { @Test // #16328 public void testTicketSpec1() throws IOException { - String design = " " + String design = " " + "File" + "Save" + "Open" - + "" - + "Exit" + + "" + + "Exit" + "Not for everybody" + "" + "Other" + "Sub" - + "Option 1 - no html" - + "Option 2" - + "Option 3" // + + "Option 1 - no html" + + "Option 2" + + "Option 3" // + "" // + "" // + "foo" @@ -124,8 +124,7 @@ public class MenuBarDeclarativeTest extends DeclarativeTestBase { + "File" + "Save" + "Open" - + "" - + "Exit" // + + "" + "Exit" // + ""; MenuBar menuBar = new MenuBar(); menuBar.setHtmlContentAllowed(true); diff --git a/server/tests/src/com/vaadin/tests/design/AbstractComponentSetResponsiveTest.java b/server/tests/src/com/vaadin/tests/design/AbstractComponentSetResponsiveTest.java index 83b3e577dc..1119301c55 100644 --- a/server/tests/src/com/vaadin/tests/design/AbstractComponentSetResponsiveTest.java +++ b/server/tests/src/com/vaadin/tests/design/AbstractComponentSetResponsiveTest.java @@ -29,7 +29,7 @@ public class AbstractComponentSetResponsiveTest extends label.setContentMode(ContentMode.HTML); label.setResponsive(true); - String design = ""; + String design = ""; testWrite(design, label); testRead(design, label); diff --git a/server/tests/src/com/vaadin/tests/design/DesignFormatterTest.java b/server/tests/src/com/vaadin/tests/design/DesignFormatterTest.java index 00af20ea8c..acee3e2ca8 100644 --- a/server/tests/src/com/vaadin/tests/design/DesignFormatterTest.java +++ b/server/tests/src/com/vaadin/tests/design/DesignFormatterTest.java @@ -78,7 +78,7 @@ public class DesignFormatterTest { @Test public void testBoolean() { - assertEquals("true", formatter.format(true)); + assertEquals("", formatter.format(true)); assertEquals("false", formatter.format(false)); assertEquals(true, formatter.parse("true", boolean.class)); diff --git a/server/tests/src/com/vaadin/tests/server/component/DeclarativeMarginTestBase.java b/server/tests/src/com/vaadin/tests/server/component/DeclarativeMarginTestBase.java index 9fcb64acca..42715e52ae 100644 --- a/server/tests/src/com/vaadin/tests/server/component/DeclarativeMarginTestBase.java +++ b/server/tests/src/com/vaadin/tests/server/component/DeclarativeMarginTestBase.java @@ -52,19 +52,19 @@ public abstract class DeclarativeMarginTestBase"; diff --git a/server/tests/src/com/vaadin/tests/server/component/abstractcomponent/AbstractComponentDeclarativeTest.java b/server/tests/src/com/vaadin/tests/server/component/abstractcomponent/AbstractComponentDeclarativeTest.java index 4f45168a32..71021a06e1 100644 --- a/server/tests/src/com/vaadin/tests/server/component/abstractcomponent/AbstractComponentDeclarativeTest.java +++ b/server/tests/src/com/vaadin/tests/server/component/abstractcomponent/AbstractComponentDeclarativeTest.java @@ -71,7 +71,7 @@ public class AbstractComponentDeclarativeTest extends public void testProperties() { String design = "test-error\" immediate=\"true\"/>"; + + "error=\"
test-error
\" immediate=\"\"/>"; component.setId("testId"); component.setPrimaryStyleName("test-style"); component.setCaption("test-caption"); @@ -139,7 +139,7 @@ public class AbstractComponentDeclarativeTest extends @Test public void testSizeFull() { - String design = ""; + String design = ""; component.setSizeFull(); testRead(design, component); testWrite(design, component); @@ -147,7 +147,7 @@ public class AbstractComponentDeclarativeTest extends @Test public void testSizeAuto() { - String design = ""; + String design = ""; component.setSizeUndefined(); testRead(design, component); testWrite(design, component); @@ -155,7 +155,7 @@ public class AbstractComponentDeclarativeTest extends @Test public void testHeightFull() { - String design = ""; + String design = ""; component.setHeight("100%"); component.setWidth("20px"); testRead(design, component); @@ -164,7 +164,7 @@ public class AbstractComponentDeclarativeTest extends @Test public void testHeightAuto() { - String design = ""; + String design = ""; // we need to have default height of 100% -> use split panel AbstractComponent component = new HorizontalSplitPanel(); component.setHeight(null); @@ -175,7 +175,7 @@ public class AbstractComponentDeclarativeTest extends @Test public void testWidthFull() { - String design = "Foo"; + String design = "Foo"; AbstractComponent component = new Button(); component.setCaptionAsHtml(true); component.setCaption("Foo"); @@ -187,7 +187,7 @@ public class AbstractComponentDeclarativeTest extends @Test public void testWidthAuto() { - String design = ""; + String design = ""; component.setCaptionAsHtml(false); component.setHeight("20px"); component.setWidth(null); @@ -197,7 +197,7 @@ public class AbstractComponentDeclarativeTest extends @Test public void testResponsive() { - String design = ""; + String design = ""; Responsive.makeResponsive(component); testRead(design, component); testWrite(design, component); diff --git a/server/tests/src/com/vaadin/tests/server/component/abstractfield/AbstractFieldDeclarativeTest.java b/server/tests/src/com/vaadin/tests/server/component/abstractfield/AbstractFieldDeclarativeTest.java index 55231e5494..b4afde5923 100644 --- a/server/tests/src/com/vaadin/tests/server/component/abstractfield/AbstractFieldDeclarativeTest.java +++ b/server/tests/src/com/vaadin/tests/server/component/abstractfield/AbstractFieldDeclarativeTest.java @@ -33,9 +33,9 @@ public class AbstractFieldDeclarativeTest extends @Test public void testPlainText() { - String design = ""; + String design = ""; AbstractField tf = new TextField(); tf.setBuffered(true); tf.setBuffered(true); @@ -51,7 +51,7 @@ public class AbstractFieldDeclarativeTest extends testWrite(design, tf); // Test with readonly=false - design = design.replace("readonly='true'", ""); + design = design.replace("readonly=''", ""); tf.setReadOnly(false); testRead(design, tf); testWrite(design, tf); diff --git a/server/tests/src/com/vaadin/tests/server/component/abstractselect/AbstractSelectDeclarativeTest.java b/server/tests/src/com/vaadin/tests/server/component/abstractselect/AbstractSelectDeclarativeTest.java index b3867a7a3a..b294ffad72 100644 --- a/server/tests/src/com/vaadin/tests/server/component/abstractselect/AbstractSelectDeclarativeTest.java +++ b/server/tests/src/com/vaadin/tests/server/component/abstractselect/AbstractSelectDeclarativeTest.java @@ -42,7 +42,7 @@ public class AbstractSelectDeclarativeTest extends DeclarativeTestBase { public String getDesignSingleSelectNewItemsAllowed() { - return ""; } @@ -57,7 +57,7 @@ public class AbstractSelectDeclarativeTest extends } public String getDesignMultiSelect() { - return ""; + return ""; } public AbstractSelect getExpectedMultiSelect() { @@ -210,7 +210,7 @@ public class AbstractSelectDeclarativeTest extends attributes.put("item-caption-mode", "property"); attributes.put("item-caption-property-id", "name"); attributes.put("item-icon-property-id", "icon"); - attributes.put("null-selection-allowed", "true"); + attributes.put("null-selection-allowed", ""); attributes.put("null-selection-item-id", "No items selected"); return new Element(Tag.valueOf("v-combo-box"), "", attributes); } @@ -231,7 +231,7 @@ public class AbstractSelectDeclarativeTest extends assertEquals("Wrong caption for the combo box.", "A combo box", e.attr("caption")); Assert.assertTrue("Adding new items should be allowed.", - "true".equals(e.attr("new-items-allowed"))); + "".equals(e.attr("new-items-allowed"))); assertEquals("Wrong item caption mode.", "icon_only", e.attr("item-caption-mode")); assertEquals("Wrong item icon property id.", "icon", diff --git a/server/tests/src/com/vaadin/tests/server/component/abstractselect/OptionGroupDeclarativeTests.java b/server/tests/src/com/vaadin/tests/server/component/abstractselect/OptionGroupDeclarativeTests.java index 4d75e0b59f..efcdc3e997 100644 --- a/server/tests/src/com/vaadin/tests/server/component/abstractselect/OptionGroupDeclarativeTests.java +++ b/server/tests/src/com/vaadin/tests/server/component/abstractselect/OptionGroupDeclarativeTests.java @@ -111,7 +111,7 @@ public class OptionGroupDeclarativeTests extends //@formatter:off String expected = - "" + "" + "" + "" + "" diff --git a/server/tests/src/com/vaadin/tests/server/component/abstractsplitpanel/AbstractSplitPanelDeclarativeTest.java b/server/tests/src/com/vaadin/tests/server/component/abstractsplitpanel/AbstractSplitPanelDeclarativeTest.java index 2d6db6d19a..11d97d191b 100644 --- a/server/tests/src/com/vaadin/tests/server/component/abstractsplitpanel/AbstractSplitPanelDeclarativeTest.java +++ b/server/tests/src/com/vaadin/tests/server/component/abstractsplitpanel/AbstractSplitPanelDeclarativeTest.java @@ -38,7 +38,7 @@ public class AbstractSplitPanelDeclarativeTest extends @Test public void testWithBothChildren() { String design = " " + ""; AbstractSplitPanel sp = new HorizontalSplitPanel(); diff --git a/server/tests/src/com/vaadin/tests/server/component/abstracttextfield/AbstractTextFieldDeclarativeTest.java b/server/tests/src/com/vaadin/tests/server/component/abstracttextfield/AbstractTextFieldDeclarativeTest.java index a3594b7159..b8e570bc89 100644 --- a/server/tests/src/com/vaadin/tests/server/component/abstracttextfield/AbstractTextFieldDeclarativeTest.java +++ b/server/tests/src/com/vaadin/tests/server/component/abstracttextfield/AbstractTextFieldDeclarativeTest.java @@ -34,7 +34,7 @@ public class AbstractTextFieldDeclarativeTest extends @Test public void testAttributes() { String design = ""; AbstractTextField tf = new TextField(); diff --git a/server/tests/src/com/vaadin/tests/server/component/audio/AudioDeclarativeTest.java b/server/tests/src/com/vaadin/tests/server/component/audio/AudioDeclarativeTest.java index 4390499c4e..ec2b5241f3 100644 --- a/server/tests/src/com/vaadin/tests/server/component/audio/AudioDeclarativeTest.java +++ b/server/tests/src/com/vaadin/tests/server/component/audio/AudioDeclarativeTest.java @@ -43,7 +43,7 @@ public class AudioDeclarativeTest extends DeclarativeTestBase