You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lo...@apache.org on 2016/11/18 11:40:02 UTC

svn commit: r1770366 - /myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/RowRenderer.java

Author: lofwyr
Date: Fri Nov 18 11:40:02 2016
New Revision: 1770366

URL: http://svn.apache.org/viewvc?rev=1770366&view=rev
Log:
TOBAGO-1572: Sheet: use of <tc:columnEvent> not possible with <tc:popup>
- hotfix

Modified:
    myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/RowRenderer.java

Modified: myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/RowRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/RowRenderer.java?rev=1770366&r1=1770365&r2=1770366&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/RowRenderer.java (original)
+++ myfaces/tobago/trunk/tobago-core/src/main/java/org/apache/myfaces/tobago/internal/renderkit/renderer/RowRenderer.java Fri Nov 18 11:40:02 2016
@@ -19,5 +19,27 @@
 
 package org.apache.myfaces.tobago.internal.renderkit.renderer;
 
+import org.apache.myfaces.tobago.internal.component.AbstractUIEvent;
+
+import javax.faces.component.UIComponent;
+import javax.faces.event.ActionEvent;
+
 public class RowRenderer extends DecodingCommandRendererBase {
+
+  // XXX hack to fix TOBAGO-1572
+  @Override
+  protected void commandActivated(UIComponent component) {
+
+    AbstractUIEvent event = null;
+    for (UIComponent uiComponent : component.getChildren()) {
+      if (uiComponent instanceof AbstractUIEvent) {
+        event = (AbstractUIEvent) uiComponent;
+      }
+    }
+    if (event != null) {
+      event.queueEvent(new ActionEvent(event));
+    } else {
+      component.queueEvent(new ActionEvent(component));
+    }
+  }
 }