You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by hn...@apache.org on 2017/06/01 13:36:20 UTC
svn commit: r1797223 - in /myfaces/tobago/trunk:
tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/
tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/
tobago-example/tobago-example-demo/src/main/webapp...
Author: hnoeth
Date: Thu Jun 1 13:36:20 2017
New Revision: 1797223
URL: http://svn.apache.org/viewvc?rev=1797223&view=rev
Log:
TOBAGO-1741 tc:out labelLayout="skip" must not render any html tags
* fix duplicated IDs for tc:selectOneRadio, tc:selectManyCheckbox and tc:date
* fix QUnitTests ignoring "duplicated ID"-test
Modified:
myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUIInput.java
myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectManyCheckbox.java
myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectOneRadio.java
myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxInsideCommandRenderer.java
myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxRenderer.java
myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioInsideCommandRenderer.java
myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioRenderer.java
myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/040-command/20-buttons/buttons.xhtml
myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/test/java/org/apache/myfaces/tobago/example/demo/QUnitTests.java
Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUIInput.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUIInput.java?rev=1797223&r1=1797222&r2=1797223&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUIInput.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUIInput.java Thu Jun 1 13:36:20 2017
@@ -52,7 +52,7 @@ public abstract class AbstractUIInput ex
final UIComponent before = getFacet(Facets.before.name());
final UIComponent after = getFacet(Facets.after.name());
- if (getLabelLayout() == LabelLayout.skip && before == null && after==null) {
+ if (getLabelLayout() == LabelLayout.skip && before == null && after == null && !(this instanceof AbstractUIDate)) {
return getClientId(facesContext);
} else {
return getClientId(facesContext) + ComponentUtils.SUB_SEPARATOR + "field";
Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectManyCheckbox.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectManyCheckbox.java?rev=1797223&r1=1797222&r2=1797223&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectManyCheckbox.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectManyCheckbox.java Thu Jun 1 13:36:20 2017
@@ -19,8 +19,24 @@
package org.apache.myfaces.tobago.internal.component;
+import org.apache.myfaces.tobago.component.LabelLayout;
+
/**
* {@link org.apache.myfaces.tobago.internal.taglib.component.SelectManyCheckboxTagDeclaration}
*/
public abstract class AbstractUISelectManyCheckbox extends AbstractUISelectManyBase {
+
+ public abstract boolean isDisabled();
+
+ public abstract boolean isFocus();
+
+ public abstract boolean isInline();
+
+ public abstract boolean isReadonly();
+
+ public abstract Integer getTabIndex();
+
+ public boolean isLabelLayoutSkip() {
+ return getLabelLayout() == LabelLayout.skip;
+ }
}
Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectOneRadio.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectOneRadio.java?rev=1797223&r1=1797222&r2=1797223&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectOneRadio.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/component/AbstractUISelectOneRadio.java Thu Jun 1 13:36:20 2017
@@ -19,8 +19,22 @@
package org.apache.myfaces.tobago.internal.component;
+import org.apache.myfaces.tobago.component.LabelLayout;
+
/**
* {@link org.apache.myfaces.tobago.internal.taglib.component.SelectOneRadioTagDeclaration}
*/
public abstract class AbstractUISelectOneRadio extends AbstractUISelectOneBase {
+
+ public abstract boolean isDisabled();
+
+ public abstract boolean isFocus();
+
+ public abstract boolean isInline();
+
+ public abstract Integer getTabIndex();
+
+ public boolean isLabelLayoutSkip() {
+ return getLabelLayout() == LabelLayout.skip;
+ }
}
Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxInsideCommandRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxInsideCommandRenderer.java?rev=1797223&r1=1797222&r2=1797223&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxInsideCommandRenderer.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxInsideCommandRenderer.java Thu Jun 1 13:36:20 2017
@@ -19,7 +19,7 @@
package org.apache.myfaces.tobago.internal.renderkit.renderer;
-import org.apache.myfaces.tobago.component.UISelectManyCheckbox;
+import org.apache.myfaces.tobago.internal.component.AbstractUISelectManyCheckbox;
import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
import org.apache.myfaces.tobago.renderkit.css.CssItem;
@@ -46,7 +46,7 @@ public class SelectManyCheckboxInsideCom
}
@Override
- protected void addCssItems(final FacesContext facesContext, final UISelectManyCheckbox select,
+ protected void addCssItems(final FacesContext facesContext, final AbstractUISelectManyCheckbox select,
final List<CssItem> collected) {
collected.add(BootstrapClass.DROPDOWN_ITEM);
}
Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxRenderer.java?rev=1797223&r1=1797222&r2=1797223&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxRenderer.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectManyCheckboxRenderer.java Thu Jun 1 13:36:20 2017
@@ -19,7 +19,7 @@
package org.apache.myfaces.tobago.internal.renderkit.renderer;
-import org.apache.myfaces.tobago.component.UISelectManyCheckbox;
+import org.apache.myfaces.tobago.internal.component.AbstractUISelectManyCheckbox;
import org.apache.myfaces.tobago.internal.util.HtmlRendererUtils;
import org.apache.myfaces.tobago.internal.util.JsonUtils;
import org.apache.myfaces.tobago.internal.util.RenderUtils;
@@ -45,7 +45,7 @@ public class SelectManyCheckboxRenderer
@Override
public void encodeBeginField(final FacesContext facesContext, final UIComponent component) throws IOException {
- final UISelectManyCheckbox select = (UISelectManyCheckbox) component;
+ final AbstractUISelectManyCheckbox select = (AbstractUISelectManyCheckbox) component;
final TobagoResponseWriter writer = getResponseWriter(facesContext);
final String id = select.getClientId(facesContext);
@@ -56,7 +56,9 @@ public class SelectManyCheckboxRenderer
final boolean inline = select.isInline();
writer.startElement(HtmlElements.DIV);
- writer.writeIdAttribute(id);
+ if (select.isLabelLayoutSkip()) {
+ writer.writeIdAttribute(id);
+ }
writer.writeStyleAttribute(select.getStyle());
// TODO: optimize class attribute writing
@@ -138,7 +140,7 @@ public class SelectManyCheckboxRenderer
return true;
}
- protected void addCssItems(final FacesContext facesContext, final UISelectManyCheckbox select,
+ protected void addCssItems(final FacesContext facesContext, final AbstractUISelectManyCheckbox select,
final List<CssItem> collected) {
}
}
Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioInsideCommandRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioInsideCommandRenderer.java?rev=1797223&r1=1797222&r2=1797223&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioInsideCommandRenderer.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioInsideCommandRenderer.java Thu Jun 1 13:36:20 2017
@@ -19,7 +19,7 @@
package org.apache.myfaces.tobago.internal.renderkit.renderer;
-import org.apache.myfaces.tobago.component.UISelectOneRadio;
+import org.apache.myfaces.tobago.internal.component.AbstractUISelectOneRadio;
import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
import org.apache.myfaces.tobago.renderkit.css.CssItem;
@@ -46,7 +46,7 @@ public class SelectOneRadioInsideCommand
}
@Override
- protected void addCssItems(final FacesContext facesContext, final UISelectOneRadio select,
+ protected void addCssItems(final FacesContext facesContext, final AbstractUISelectOneRadio select,
final List<CssItem> collected) {
collected.add(BootstrapClass.DROPDOWN_ITEM);
}
Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioRenderer.java?rev=1797223&r1=1797222&r2=1797223&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioRenderer.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/SelectOneRadioRenderer.java Thu Jun 1 13:36:20 2017
@@ -19,7 +19,7 @@
package org.apache.myfaces.tobago.internal.renderkit.renderer;
-import org.apache.myfaces.tobago.component.UISelectOneRadio;
+import org.apache.myfaces.tobago.internal.component.AbstractUISelectOneRadio;
import org.apache.myfaces.tobago.internal.util.HtmlRendererUtils;
import org.apache.myfaces.tobago.internal.util.JsonUtils;
import org.apache.myfaces.tobago.internal.util.ObjectUtils;
@@ -46,7 +46,7 @@ public class SelectOneRadioRenderer exte
@Override
protected void encodeBeginField(FacesContext facesContext, UIComponent component) throws IOException {
- final UISelectOneRadio select = (UISelectOneRadio) component;
+ final AbstractUISelectOneRadio select = (AbstractUISelectOneRadio) component;
final TobagoResponseWriter writer = getResponseWriter(facesContext);
final String id = select.getClientId(facesContext);
@@ -58,7 +58,9 @@ public class SelectOneRadioRenderer exte
final boolean inline = select.isInline();
writer.startElement(HtmlElements.DIV);
- writer.writeIdAttribute(id);
+ if (select.isLabelLayoutSkip()) {
+ writer.writeIdAttribute(id);
+ }
writer.writeStyleAttribute(select.getStyle());
// TODO: optimize class attribute writing
@@ -151,7 +153,7 @@ public class SelectOneRadioRenderer exte
return true;
}
- protected void addCssItems(final FacesContext facesContext, final UISelectOneRadio select,
+ protected void addCssItems(final FacesContext facesContext, final AbstractUISelectOneRadio select,
final List<CssItem> collected) {
}
}
Modified: myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/040-command/20-buttons/buttons.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/040-command/20-buttons/buttons.xhtml?rev=1797223&r1=1797222&r2=1797223&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/040-command/20-buttons/buttons.xhtml (original)
+++ myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/040-command/20-buttons/buttons.xhtml Thu Jun 1 13:36:20 2017
@@ -68,7 +68,7 @@
<tc:button label="Right"/>
</tc:buttons></code></pre>
<tc:buttons>
- <tc:button label="Dropdown" omit="true">
+ <tc:button id="buttonWithLinks" label="Dropdown" omit="true">
<tc:link label="Action 1"/>
<tc:link label="Action 2"/>
<tc:link label="Action 3">
Modified: myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/test/java/org/apache/myfaces/tobago/example/demo/QUnitTests.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/test/java/org/apache/myfaces/tobago/example/demo/QUnitTests.java?rev=1797223&r1=1797222&r2=1797223&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/test/java/org/apache/myfaces/tobago/example/demo/QUnitTests.java (original)
+++ myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/test/java/org/apache/myfaces/tobago/example/demo/QUnitTests.java Thu Jun 1 13:36:20 2017
@@ -105,7 +105,10 @@ public class QUnitTests {
Assert.assertTrue("There must be at least one test case.", testCases.size() > 0);
final String textContent = qunitTests.getAttribute("textContent");
- boolean testFailed = timeout || (textContent != null && textContent.contains(" msfailed@ "));
+
+ boolean testFailed = timeout || (textContent != null
+ && textContent.contains(" msfailed@ ") || textContent.contains("Expected:") || textContent.contains("Result:"));
+
int testCaseCount = 1;
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(qunitTestresult.getAttribute("textContent"));