You are viewing a plain text version of this content. The canonical link for it is here.
Posted to adffaces-commits@incubator.apache.org by jw...@apache.org on 2007/03/09 18:31:43 UTC
svn commit: r516496 - in
/incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal:
renderkit/core/xhtml/OutputUtils.java skin/SkinStyleSheetParserUtils.java
Author: jwaldman
Date: Fri Mar 9 10:31:42 2007
New Revision: 516496
URL: http://svn.apache.org/viewvc?view=rev&rev=516496
Log:
fixes for ADFFaces-404 & ADFFaces-403
http://issues.apache.org/jira/browse/ADFFACES-404
absolute urls do not work in skinning
Fixed in SkinStyleSheetParserUtils.java
http://issues.apache.org/jira/browse/ADFFACES-403
need new method outputUtils.renderImage that takes a style class
Fixed in OutputUtils.java
Modified:
incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/OutputUtils.java
incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/skin/SkinStyleSheetParserUtils.java
Modified: incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/OutputUtils.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/OutputUtils.java?view=diff&rev=516496&r1=516495&r2=516496
==============================================================================
--- incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/OutputUtils.java (original)
+++ incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/OutputUtils.java Fri Mar 9 10:31:42 2007
@@ -312,7 +312,7 @@
) throws IOException
{
renderImage(context, arc, absoluteUri,
- width, height, id, altText, comp, null);
+ width, height, id, altText, comp, null, null);
}
static public void renderImage(
@@ -327,6 +327,23 @@
String inlineStyle
) throws IOException
{
+ renderImage(context, arc, absoluteUri,
+ width, height, id, altText, comp, inlineStyle, null);
+ }
+
+ static public void renderImage(
+ FacesContext context,
+ RenderingContext arc,
+ Object absoluteUri,
+ Object width,
+ Object height,
+ Object id,
+ Object altText,
+ UIComponent comp,
+ String inlineStyle,
+ String styleClass
+ ) throws IOException
+ {
if (absoluteUri == null)
return;
@@ -354,6 +371,11 @@
if (inlineStyle != null)
{
writer.writeAttribute("style", inlineStyle, null);
+ }
+
+ if (styleClass != null)
+ {
+ writer.writeAttribute("class", styleClass, null);
}
writer.endElement("img");
Modified: incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/skin/SkinStyleSheetParserUtils.java
URL: http://svn.apache.org/viewvc/incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/skin/SkinStyleSheetParserUtils.java?view=diff&rev=516496&r1=516495&r2=516496
==============================================================================
--- incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/skin/SkinStyleSheetParserUtils.java (original)
+++ incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/skin/SkinStyleSheetParserUtils.java Fri Mar 9 10:31:42 2007
@@ -137,13 +137,15 @@
* */
public static String trimQuotes(String in)
{
+ int length = in.length();
+ if (length <= 1)
+ return in;
// strip off the starting/ending quotes if there are any
char firstChar = in.charAt(0);
int firstCharIndex = 0;
if ((firstChar == '\'') || (firstChar == '"'))
firstCharIndex = 1;
- int length = in.length();
char lastChar = in.charAt(length-1);
if ((lastChar == '\'') || (lastChar == '"'))
length--;
@@ -447,7 +449,11 @@
int endIndex = -1;
int index = url.indexOf("url(");
StringBuilder builder = new StringBuilder();
- builder.append(url, 0 , index);
+ // this loops takes care of the usecase where there can be more than
+ // one url, like this:
+ // background-image: url("/skins/purple/images/btns.gif"),
+ // url("/skins/purple/images/checkdn.gif");
+
while(index >= 0)
{
// Appends values before url()
@@ -526,6 +532,12 @@
// relative values will be resolved relative to the
// generated style sheet, not the source CSS file.
builder.append(_getAbsoluteURLValue(baseUrl, uri, sourceName, selectorName));
+ }
+ else if (uri.startsWith("http:"))
+ {
+ builder.append("url(");
+ builder.append(uri);
+ builder.append(')');
}
index = url.indexOf("url(", endIndex);