You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by al...@apache.org on 2010/08/31 23:22:55 UTC

svn commit: r991337 - in /myfaces/gsoc/html5-comp-lib/trunk: html5-comp-lib-core/pom.xml html5-comp-lib-core/src/main/java/org/apache/myfaces/html5/renderkit/input/delegate/HtmlTextAreaRendererDelegate.java myfaces-shared-html5/pom.xml

Author: aliok
Date: Tue Aug 31 21:22:55 2010
New Revision: 991337

URL: http://svn.apache.org/viewvc?rev=991337&view=rev
Log:
Html5 -
Make myfaces shared as provided dependency
Fix the bugs related to old dependency scope

Modified:
    myfaces/gsoc/html5-comp-lib/trunk/html5-comp-lib-core/pom.xml
    myfaces/gsoc/html5-comp-lib/trunk/html5-comp-lib-core/src/main/java/org/apache/myfaces/html5/renderkit/input/delegate/HtmlTextAreaRendererDelegate.java
    myfaces/gsoc/html5-comp-lib/trunk/myfaces-shared-html5/pom.xml

Modified: myfaces/gsoc/html5-comp-lib/trunk/html5-comp-lib-core/pom.xml
URL: http://svn.apache.org/viewvc/myfaces/gsoc/html5-comp-lib/trunk/html5-comp-lib-core/pom.xml?rev=991337&r1=991336&r2=991337&view=diff
==============================================================================
--- myfaces/gsoc/html5-comp-lib/trunk/html5-comp-lib-core/pom.xml (original)
+++ myfaces/gsoc/html5-comp-lib/trunk/html5-comp-lib-core/pom.xml Tue Aug 31 21:22:55 2010
@@ -42,7 +42,6 @@
             <groupId>org.apache.myfaces.html5-comp-lib</groupId>
             <artifactId>myfaces-shared-html5</artifactId>
             <version>0.0.3-SNAPSHOT</version>
-            <scope>compile</scope>
         </dependency>
         <dependency>
             <groupId>javax.servlet.jsp</groupId>

Modified: myfaces/gsoc/html5-comp-lib/trunk/html5-comp-lib-core/src/main/java/org/apache/myfaces/html5/renderkit/input/delegate/HtmlTextAreaRendererDelegate.java
URL: http://svn.apache.org/viewvc/myfaces/gsoc/html5-comp-lib/trunk/html5-comp-lib-core/src/main/java/org/apache/myfaces/html5/renderkit/input/delegate/HtmlTextAreaRendererDelegate.java?rev=991337&r1=991336&r2=991337&view=diff
==============================================================================
--- myfaces/gsoc/html5-comp-lib/trunk/html5-comp-lib-core/src/main/java/org/apache/myfaces/html5/renderkit/input/delegate/HtmlTextAreaRendererDelegate.java (original)
+++ myfaces/gsoc/html5-comp-lib/trunk/html5-comp-lib-core/src/main/java/org/apache/myfaces/html5/renderkit/input/delegate/HtmlTextAreaRendererDelegate.java Tue Aug 31 21:22:55 2010
@@ -26,11 +26,15 @@ import javax.faces.component.UIComponent
 import javax.faces.component.behavior.ClientBehavior;
 import javax.faces.component.behavior.ClientBehaviorHolder;
 import javax.faces.context.FacesContext;
+import javax.faces.context.ResponseWriter;
 
 import org.apache.myfaces.html5.component.input.HtmlInputText;
 import org.apache.myfaces.html5.renderkit.util.Html5RendererUtils;
 import org.apache.myfaces.html5.renderkit.util.PassThroughAttributes;
 import org.apache.myfaces.html5.renderkit.util.PassThroughClientBehaviorEvents;
+import org.apache.myfaces.shared_html5.renderkit.html.HTML;
+import org.apache.myfaces.shared_html5.renderkit.html.HtmlRendererUtils;
+import org.apache.myfaces.shared_html5.renderkit.html.util.JavascriptUtils;
 import org.apache.myfaces.shared_html5.renderkit.html.HtmlTextareaRendererBase;
 
 /**
@@ -41,13 +45,48 @@ import org.apache.myfaces.shared_html5.r
  */
 public class HtmlTextAreaRendererDelegate extends HtmlTextareaRendererBase
 {
-
     @Override
-    protected void renderTextAreaBegin(FacesContext facesContext, UIComponent uiComponent) throws IOException
+    protected void renderTextAreaBegin(FacesContext facesContext,
+            UIComponent uiComponent) throws IOException
     {
-        super.renderTextAreaBegin(facesContext, uiComponent);
-
+        //TODO: use super.renderTextAreaBegin(...) when it is available on the SNAPSHOT!!
+        ResponseWriter writer = facesContext.getResponseWriter();
+        writer.startElement(HTML.TEXTAREA_ELEM, uiComponent);
+
+        Map<String, List<ClientBehavior>> behaviors = null;
+        if (uiComponent instanceof ClientBehaviorHolder && JavascriptUtils.isJavascriptAllowed(facesContext.getExternalContext()))
+        {
+            behaviors = ((ClientBehaviorHolder) uiComponent).getClientBehaviors();
+            if (!behaviors.isEmpty())
+            {
+                HtmlRendererUtils.writeIdAndName(writer, uiComponent, facesContext);
+            }
+            else
+            {
+                HtmlRendererUtils.writeIdIfNecessary(writer, uiComponent, facesContext);
+                writer.writeAttribute(HTML.NAME_ATTR, uiComponent.getClientId(facesContext), null);
+            }
+            HtmlRendererUtils.renderBehaviorizedOnchangeEventHandler(facesContext, writer, uiComponent, behaviors);
+            HtmlRendererUtils.renderBehaviorizedEventHandlers(facesContext, writer, uiComponent, behaviors);
+            HtmlRendererUtils.renderBehaviorizedFieldEventHandlersWithoutOnchange(facesContext, writer, uiComponent, behaviors);
+            HtmlRendererUtils.renderHTMLAttributes(writer, uiComponent, HTML.TEXTAREA_PASSTHROUGH_ATTRIBUTES_WITHOUT_DISABLED_AND_EVENTS);
+        }
+        else
+        {
+            HtmlRendererUtils.writeIdIfNecessary(writer, uiComponent, facesContext);
+            writer.writeAttribute(HTML.NAME_ATTR, uiComponent.getClientId(facesContext), null);
+            HtmlRendererUtils.renderHTMLAttributes(writer, uiComponent, HTML.TEXTAREA_PASSTHROUGH_ATTRIBUTES_WITHOUT_DISABLED);
+        }
+
+        if (isDisabled(facesContext, uiComponent))
+        {
+            writer.writeAttribute(org.apache.myfaces.shared_html5.renderkit.html.HTML.DISABLED_ATTR, Boolean.TRUE, null);
+        }
+        
         renderPassThruAttrsAndEvents(facesContext, uiComponent);
+
+        String strValue = org.apache.myfaces.shared_html5.renderkit.RendererUtils.getStringValue(facesContext, uiComponent);
+        writer.writeText(strValue, org.apache.myfaces.shared_html5.renderkit.JSFAttr.VALUE_ATTR);
     }
 
     // to make this extendible

Modified: myfaces/gsoc/html5-comp-lib/trunk/myfaces-shared-html5/pom.xml
URL: http://svn.apache.org/viewvc/myfaces/gsoc/html5-comp-lib/trunk/myfaces-shared-html5/pom.xml?rev=991337&r1=991336&r2=991337&view=diff
==============================================================================
--- myfaces/gsoc/html5-comp-lib/trunk/myfaces-shared-html5/pom.xml (original)
+++ myfaces/gsoc/html5-comp-lib/trunk/myfaces-shared-html5/pom.xml Tue Aug 31 21:22:55 2010
@@ -129,6 +129,7 @@
             <groupId>org.apache.myfaces.shared</groupId>
             <artifactId>myfaces-shared-core</artifactId>
             <version>${shared-core-version}</version>
+            <scope>provided</scope>
         </dependency>