Details
-
Task
-
Resolution: Duplicate
-
Major
-
None
-
9.7
-
None
-
Unknown
-
N/A
-
N/A
-
Description
Currently using version 0.31.
New:
Version 0.35.1 -------------- * Core: - BUG: Fix wrong match of the :link pseudo-class. Reported by V. Massol. - Use plain styles for override and inline styles. - Better spec conformance for DOMTokenList implementations. - Remove OriginPolicy implementation from core, and create new css4j-agent module. - Move doc.structure package to staging tree. - Improvements to TokenProducer. - Move css unescape method to new class ParseHelper. - Move parsing error codes to ParseHelper. - Selectors: implementations of SAC's AttributeCondition.getSpecified() cannot be trusted. - Small correction to AbstractUserAgent.java. - Try to increase feature coverage in tests. - A few javadoc comment changes. * Dom4j module: - Use plain styles instead of computed styles for override and inline styles. - Try to increase feature coverage in tests. Version 0.35 ------------ * Core: - Support for level 4 media queries, backed by CSSCanvas implementations. If only plain media types are found, the old DOMMediaList-based infrastructure is used instead. - Remove method parseMediaQueryList from CSSCanvas and add getFeatureValue(String). - Add method getTargetMedium() to CSSDocument. - Add method CSSDocument.hasStyleIssues(). - Add method isKnownProperty(String) to PropertyDatabase. - Change DOMMediaList.create to DOMMediaList.createMediaList. - calc() values: report a DIMENSION primitive type if it has a sized-unit operand, NUMBER otherwise. - Support for the font-size-adjust, font-stretch and font-synthesis properties (CSS Fonts Module Level 3). - Add meta-information about properties font-min-size and font-max-size. - Do not stop parsing if a valid SAC value turns out to be a wrong css value. - Avoid bogus "unknown identifier" errors when processing the 'background' and 'border-image' shorthands. - Fixes for the 'background' shorthand parsing: the specification was misread regarding when to invalidate layers. Additionally, some background-repeat values could be lost, and unitless zero-values were not recognized as belonging to background-position or background-size. - Fix a possible problem setting border-image-outset when it is set to zero with the border-image shorthand. - Improved handling of wrong color values (e.g. 'rgb(12, 45)'). - Give currentColor as the initial value for all properties with a name that ends with "-color". - Improvements to error handlers. - More efficient implementation of AbstractCSSStyleSheet.hasRuleErrors() - PropertyDatabase.isInherited(String) is now backed by a set instead of a list. - Remove unused CSSPropertyName infrastructure. * Dom4j module: - Adapt to changes in core. Version 0.32.1 -------------- * Core: - DOM implementation: change attribute's getLocalName() behavior to match element's. - DOM implementation: document current getLocalName() behavior and other differences with the spec. - DOM implementation: small conformance changes to Node.getTextContent() implementation. - Fixes for nth-* pseudo-class selectors. - More conformant handling of '[att|=val]' attribute selectors. - Add support for the disabled, enabled, read-write, read-only, matches, has, not, placeholder-shown, default, checked and indeterminate pseudo-classes. - Attempt to support namespaces in selectors (untested as not being supported by SAC parsers). - Support more SAC conditional selectors, essentially unused or unsupported by SAC parsers. - SelectorMatcher: replace hasStatePseudoClasses static method with findStatePseudoClasses. - Remove several useless 'XXX' task markers. * Dom4j module: - Add a createElement(String) convenience override to XHTMLDocumentFactory. - Fixes for nth-* pseudo-class selectors. - Support the selector changes in core. * Java2d module: - Java2DXHTMLElementReplacer: use getTagName() instead of getLocalName() to replace elements. * Visual module: - LogErrorHandler: use getNodeName() instead of getLocalName() when logging. Version 0.33 ------------ * Core: - ContentModel: throw IllegalArgumentException instead of NullPointerException for unknown declarations. - Add the getId() method to CSSElement. - Now getComputedStyle returns a ComputedCSSStyle instead of a CSSComputedProperties, enabling access to methods like 'diff' without a class cast. - DOM implementation: add methods getClassList and getElementsByClassName to HTMLElement, and the latter to HTMLDocument. - DOM implementation: createDocument now returns HTMLDocument instead of CSSDocument. - DOM implementation: report the availability of new link or style elements when added to an element. - DOM implementation: set an empty user agent style sheet instead of just loading the HTML5 one, if the default has not been loaded explicitly. - Avoid an index out of bounds exception when retrieving items from a value list. - Fixed an index out of bounds exception when parsing a multiple transition shorthand property. - Avoid a charset error when retrieving an URL. - Catch Batik's ParseException when parsing sheets, by catching any RuntimeException. - Support rect() value syntax without commas. - Check for the form owner when matching the 'default' pseudo-class. - Safer handling of the has() pseudo-class. - Slightly more efficient handling of pseudo-classes in SelectorMatcher. - Remove unsupported code from SelectorMatcher. - More meaningful error logging when parsing remote style sheets. - Add methods logSacErrors() and logSacWarnings() to DefaultSheetErrorHandler. - Set a default connection timeout of 100 seconds to AbstractUserAgent. - DOMCSSStyleSheetFactory's agent now accepts a DocumentBuilder to be used in the readURL(URL) method. - Alphabetically reorder the unit tests in AllTests. * Dom4j module: - Adapt to core changes. - Order tests in AllTestsDOM4J. Version 0.34 ------------ * Core: - Get rid of ExtendedCSSFontFaceRule interface. - Get rid of getOwnerXPath()/getParentXPath() as they were not being used for anything. - Remove DocumentCSSStyleSheet.getComputedStyle(CSSElement, String, List<String>), and use instead CSSCanvas.isActivePseudoClass(CSSElement, String) to find active state pseudo-classes. - DOM implementation: implement ParentNode's attribute getters in HTMLElement, HTMLDocument and DocumentFragment: getChildren(), getFirstElementChild(), getLastElementChild() and getChildElementCount(). - DOM implementation: add querySelectorAll(String) to ParentNode. - Pseudo-element support for both Batik's and Steadystate cssparser SAC implementations. - Add matches(String), matches(SelectorList) and getSelectorMatcher() (which returns the now-interface SelectorMatcher) to CSSElement. - Provide getCssText() for font-face rules with 'format' hint. - Support for subsequent sibling selectors (SS parser only). - Initial infrastructure for @supports rules. - Temptative support for calc() values. - Instantiate SAC parser through a java.security.AccessController, and throw a DOMException.INVALID_ACCESS_ERR instead of a NOT_SUPPORTED_ERR if not possible. - String values: process an escaped code point according to https://drafts.csswg.org/css-syntax/#consume-escaped-code-point - Add inheritance metadata for text-emphasis-* and other text-related properties. - Fix a NPE introduced in 0.33 when parsing the 'transition' shorthand. The fix shipped in that version was applied to the wrong if() block. - Use steadystate SAC parser to run a number of tests. - Give the bad identifier when throwing a DOMException for an invalid identifier. - Updated javadoc package overview. * Dom4j module: - Conform to modifications in core. - Get rid of ExtendedCSSFontFaceRule interface in dom4j backend. - Get rid of getOwnerXPath()/getParentXPath() in dom4j backend. - Updated javadoc package overview. * Java2d module: - Get rid of ExtendedCSSFontFaceRule interface in this backend. * Visual module: - Get rid of ExtendedCSSFontFaceRule interface in this backend. Version 0.32 ------------ * Core: - LENIENT mode was not working. - DOM implementation: html-style namespace support. - DOM implementation: several spec compliance corrections. - DOM implementation: fix for compareDocumentPosition(). - DOM implementation: allow appending a <link> element to an element that is not <head> nor <noscript>, if an allowed attribute is present. - DOM implementation: allow <style> elements in flow content, following W3C's change https://github.com/w3c/html/pull/843 - DOM implementation: add the getStartTag() convenience method to HTMLElement. - More reliable getBaseURL() computation in StylableDocumentWrapper and DOM implementation. - DOM wrapper: make <link> element more tolerant to lack of 'type' attribute, and ignore link if alternate stylesheet has no title. - Remove an unneeded setOwnerNode() in StylableDocumentWrapper. - Remove 1e-4 alpha channel tolerance in RGBColor implementation's equals method. - Add the BaseCSSStyleDeclaration.diff(BaseCSSStyleDeclaration) method. - Fix a potential NPE in style sheets when css parsing problems are found. - Avoid a possible NPE when parsing the 'background' shorthand. - Avoid a circular dependency in the equals() method for rect values. - CSS functions: support the old argument format without commas. - Fix a potential NPE when handling direct adjacent selectors. - Avoid a class cast exception when explicitly inheriting up to a system-default color value. - Fix a few unescape text errors when setting string property values. - Catch (unlikely) runtime exceptions produced when unescaping text in a css string value. - Import rules: behave more as described by the draft spec if the import fails. See https://drafts.csswg.org/cssom/#the-cssimportrule-interface - Elements implementing the LinkStyle interface: getSheet() returns null only if there is no associated CSS style sheet. - Better implementation for SelectorMatcher.isFirstChild(). - Remove deprecated method loadXHTMLDefaultSheet() from style sheet factories. - StyleSheetList implementation: add a remove(StyleSheet) method needed by the DOM4J backend. - Add the reloadStyleState() method to CSSCanvas. - Support for these pseudo-classes: last-child, only-child, first-of-type, last-of-type, only-of-type, nth-child, nth-last-child, nth-of-type, nth-last-of-type, link, visited, target, root, empty and blank. Currently only the Steadystate SAC parser supports the functional syntax of the nth-* pseudo-classes. - Formal support for state pseudo-classes like 'hover' through the new getComputedStyle(CSSElement, String, List<String>) method in interface DocumentCSSStyleSheet. - Reduced the visibility of some SelectorMatcher methods. - Code formatting and other minor changes. - Add a comment to sample XHTML used for testing. * Dom4j module: - LENIENT mode was not working, and general cleanup. - Make <link> element more tolerant to lack of 'type' attribute, and ignore link if alternate stylesheet has no title. - Account for <style> elements descending from non-<head> elements, as per W3C's change https://github.com/w3c/html/pull/843 - Elements implementing the LinkStyle interface: getSheet() returns null only if there is no associated CSS style sheet. - DOM4J user agent: do not overwrite base url if set in the document. - Fix an index out of bounds exception waiting to happen when handling direct adjacent selectors. - Fix a selector NPE caused by getParent() returning null for root element. - Fix a style sheet accounting bug triggered by changing the attributes of a <style> element. - Compress white spaces in DOM4JCSSStyleDeclaration.getText() and remove a TODO task mark. - Reduced the visibility of some DOM4JSelectorMatcher methods. - Support new pseudo-classes in core. - Adapt to other changes in core. - Code formatting. * Java2d module: - Add a prototype for Java2DUserAgent class.