[prev in list] [next in list] [prev in thread] [next in thread] 

List:       htmlunit-develop
Subject:    [HtmlUnit] SVN: [8309] trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit
From:       rbri () users ! sourceforge ! net
Date:       2013-05-26 18:43:00
Message-ID: E1UgfuK-0002mm-29 () sfs-ml-1 ! v29 ! ch3 ! sourceforge ! com
[Download RAW message or body]

Revision: 8309
          http://sourceforge.net/p/htmlunit/code/8309
Author:   rbri
Date:     2013-05-26 18:42:59 +0000 (Sun, 26 May 2013)
Log Message:
-----------
more basefont hacking

Modified Paths:
--------------
    trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/BrowserVersionFeatures.java
  trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlBaseFont.java
    trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/html/HTMLBaseFontElement.java
  trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/html/HTMLSpanElement.java


Modified: trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/BrowserVersionFeatures.java
 ===================================================================
--- trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/BrowserVersionFeatures.java	2013-05-26 \
                15:56:47 UTC (rev 8308)
+++ trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/BrowserVersionFeatures.java	2013-05-26 \
18:42:59 UTC (rev 8309) @@ -538,14 +538,14 @@
     @BrowserFeature(@WebBrowser(value = IE, minVersion = 7))
     HTMLABBREVIATED,
 
+    /** Should {@link \
com.gargoylesoftware.htmlunit.javascript.host.html.HTMLBaseFontElement#isEndTagForbidden}. \
*/ +    @BrowserFeature({ @WebBrowser(FF), @WebBrowser(CHROME) })
+    HTMLBASEFONT_END_TAG_FORBIDDEN,
+
     /** Supports basefont. */
     @BrowserFeature({ @WebBrowser(IE), @WebBrowser(value = FF, maxVersion = 3.6f) })
     HTMLBASEFONT_SUPPORTED,
 
-    /** Should {@link \
com.gargoylesoftware.htmlunit.javascript.host.html.HTMLBaseFontElement#isEndTagForbidden}. \
                */
-    @BrowserFeature({ @WebBrowser(FF), @WebBrowser(CHROME) })
-    HTMLBASEFONT_END_TAG_FORBIDDEN,
-
     /** [object HTMLBGSoundElement]. */
     @BrowserFeature(@WebBrowser(IE))
     HTMLBGSOUND,
@@ -769,6 +769,11 @@
     @BrowserFeature(@WebBrowser(value = FF, maxVersion = 3.6f))
     JS_CHAR_UNDEFINED_DOT,
 
+    /** Indicates that the click method call does not trigger the onchange
+     * event handlers for checkboxes. */
+    @BrowserFeature(@WebBrowser(IE))
+    JS_CLICK_CHECKBOX_TRIGGERS_NO_CHANGE_EVENT,
+
     /** Indicates that the clientLeft and clientTop returning zero in all cases. */
     @BrowserFeature(@WebBrowser(IE))
     JS_CLIENT_LEFT_TOP_ZERO,

Modified: trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlBaseFont.java
 ===================================================================
--- trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlBaseFont.java	2013-05-26 \
                15:56:47 UTC (rev 8308)
+++ trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlBaseFont.java	2013-05-26 \
18:42:59 UTC (rev 8309) @@ -42,9 +42,6 @@
     HtmlBaseFont(final String namespaceURI, final String qualifiedName, final \
SgmlPage page,  final Map<String, DomAttr> attributes) {
         super(namespaceURI, qualifiedName, page, attributes);
-        if (ATTRIBUTE_NOT_DEFINED == getSizeAttribute()) {
-            setAttribute("size", "3");
-        }
     }
 
     /**
@@ -66,7 +63,11 @@
      * @return the value of the attribute "size" or an empty string if that \
                attribute isn't defined
      */
     public final String getSizeAttribute() {
-        return getAttribute("size");
+        final String size = getAttribute("size");
+        if (ATTRIBUTE_NOT_DEFINED == size) {
+            return "3";
+        }
+        return size;
     }
 
     /**

Modified: trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/html/HTMLBaseFontElement.java
 ===================================================================
--- trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/html/HTMLBaseFontElement.java	2013-05-26 \
                15:56:47 UTC (rev 8308)
+++ trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/html/HTMLBaseFontElement.java	2013-05-26 \
18:42:59 UTC (rev 8309) @@ -40,7 +40,8 @@
      */
     @JsxGetter
     public String getColor() {
-        return getDomNodeOrDie().getAttribute("color");
+        final HtmlBaseFont base = (HtmlBaseFont) getDomNodeOrDie();
+        return base.getColorAttribute();
     }
 
     /**
@@ -58,7 +59,8 @@
      */
     @JsxGetter
     public String getFace() {
-        return getDomNodeOrDie().getAttribute("face");
+        final HtmlBaseFont base = (HtmlBaseFont) getDomNodeOrDie();
+        return base.getFaceAttribute();
     }
 
     /**
@@ -76,7 +78,8 @@
      */
     @JsxGetter
     public int getSize() {
-        return (int) Context.toNumber(getDomNodeOrDie().getAttribute("size"));
+        final HtmlBaseFont base = (HtmlBaseFont) getDomNodeOrDie();
+        return (int) Context.toNumber(base.getSizeAttribute());
     }
 
     /**

Modified: trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/html/HTMLSpanElement.java
 ===================================================================
--- trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/html/HTMLSpanElement.java	2013-05-26 \
                15:56:47 UTC (rev 8308)
+++ trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/html/HTMLSpanElement.java	2013-05-26 \
18:42:59 UTC (rev 8309) @@ -69,6 +69,7 @@
         HtmlSmall.class, HtmlSpan.class, HtmlStrike.class, HtmlStrong.class, \
                HtmlSubscript.class,
         HtmlSuperscript.class, HtmlTeletype.class, HtmlUnderlined.class, \
HtmlVariable.class, HtmlExample.class })  public class HTMLSpanElement extends \
HTMLElement { +    private boolean endTagForbidden_;
 
     /**
      * Sets the DOM node that corresponds to this JavaScript object.
@@ -79,6 +80,10 @@
         super.setDomNode(domNode);
         final BrowserVersion browser = getBrowserVersion();
         if (!browser.hasFeature(GENERATED_90)) {
+            if ("basefont".equalsIgnoreCase(domNode.getLocalName())) {
+                endTagForbidden_ = true;
+            }
+
             return;
         }
 
@@ -162,4 +167,13 @@
         }
         return super.isLowerCaseInOuterHtml();
     }
+
+    /**
+     * Returns whether the end tag is forbidden or not.
+     * @see <a href="http://www.w3.org/TR/html4/index/elements.html">HTML 4 \
specs</a> +     * @return whether the end tag is forbidden or not
+     */
+    protected boolean isEndTagForbidden() {
+        return endTagForbidden_;
+    }
 }


------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
HtmlUnit-develop mailing list
HtmlUnit-develop@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/htmlunit-develop


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic