JDK-8100657 : Add support for composite operations to WebNode
  • Type: Enhancement
  • Component: javafx
  • Sub-Component: web
  • Affected Version: fx2.0
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2011-07-22
  • Updated: 2015-06-16
  • Resolved: 2011-12-14
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7
7-poolFixed
Related Reports
Relates :  
Description
The HTML5 standard specifies composite graphics operations for 2D graphics contexts, see http://dev.w3.org/html5/2dcontext/#compositing

They should be implemented in WebNode.

A browser's compliance to the standard could be tested with the following test:

http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.html
Comments
With changes suggested by Peter, the following has been finally pushed http://javaweb.us.oracle.com/jcg/fx-webrevs/RT-15263/3 changeset: 15093:9f8b71eb3715 user: lepopov <leonid.popov@oracle.com> date: Tue Dec 13 19:32:57 2011 +0300 files: webnode-prism/src/com/sun/webpane/sg/prism/WCGraphicsPrismContext.java description: Fixed RT-15263
13-12-2011

Looks good, and seems to work fine as well ;) I don't like the name Composite.go() much. Is flush() or render() any better? Also as PassThrough filter is now used by Composite, I think you should move it outside of ClipLayer.
02-12-2011

New version of the proposed fix adapted to the current codebase. http://javaweb.us.oracle.com/jcg/fx-webrevs/RT-15263/2
30-11-2011

Could you refresh the webrev? Current version is too far from webrev base.
16-08-2011

A copy of the proposed fix uploaded to the following location: http://javaweb.us.oracle.com/jcg/fx-webrevs/RT-15263/1
09-08-2011

The attached webrev.zip contains a proposed implementation of composite graphics operations. It has been tested against the test mentioned in the issue description, and most of the operations, except xor, darker, lighter and highlight passed. The proposed implementations wraps each primitive graphics operation with a code that either delegates the call to the current Graphics directly, or blends it with already painted content, depending on the current composite operation setting.
22-07-2011