Withdrawn: 8218973: SVG with masking is not rendering image with mask effect

2020-09-30 Thread Bhawesh Choudhary
On Thu, 7 May 2020 09:19:28 GMT, Bhawesh Choudhary  
wrote:

> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

This pull request has been closed without being integrated.

-

PR: https://git.openjdk.java.net/jfx/pull/213


Withdrawn: 8169501: GIF animation is too fast

2020-09-30 Thread Bhawesh Choudhary
On Fri, 15 May 2020 07:42:40 GMT, Bhawesh Choudhary  
wrote:

> issue is caused by the threshold value for frame duration used by javaFx 
> before it gets normalized. JavaFx is using
> threshold value 10 while other browser (Safari, Firefox) is using 50 due to 
> which, value between 10 and 50 don't get
> normalized and animation runs at faster speed. To fix the issue change frame 
> duration normalization value to <= 50.
> Safari : https://bugs.webkit.org/show_bug.cgi?id=14413 Firefox : 
> https://bugzilla.mozilla.org/show_bug.cgi?id=386269

This pull request has been closed without being integrated.

-

PR: https://git.openjdk.java.net/jfx/pull/221


Re: RFR: 8169501: GIF animation is too fast

2020-09-16 Thread Bhawesh Choudhary
On Tue, 15 Sep 2020 14:11:23 GMT, Nir Lisker  wrote:

> 
> 
> Is this related to https://bugs.openjdk.java.net/browse/JDK-8209560?

it seems not.

-

PR: https://git.openjdk.java.net/jfx/pull/221


Re: RFR: 8169501: GIF animation is too fast

2020-09-15 Thread Bhawesh Choudhary
On Thu, 23 Jul 2020 17:42:57 GMT, Kevin Rushforth  wrote:

>> issue is caused by the threshold value for frame duration used by javaFx 
>> before it gets normalized. JavaFx is using
>> threshold value 10 while other browser (Safari, Firefox) is using 50 due to 
>> which, value between 10 and 50 don't get
>> normalized and animation runs at faster speed. To fix the issue change frame 
>> duration normalization value to <= 50.
>> Safari : https://bugs.webkit.org/show_bug.cgi?id=14413 Firefox : 
>> https://bugzilla.mozilla.org/show_bug.cgi?id=386269
>
> This is pending response to comments above.

10ms![10ms](https://user-images.githubusercontent.com/4208131/93172831-3c9fcb80-f749-11ea-93ee-46b58ecff4c3.gif)

11ms![11ms](https://user-images.githubusercontent.com/4208131/93172833-3dd0f880-f749-11ea-8fa7-5cf2f3cfdcdc.gif)
12ms![12ms](https://user-images.githubusercontent.com/4208131/93172834-3e698f00-f749-11ea-92ae-24b3087758d2.gif)
15ms![15ms](https://user-images.githubusercontent.com/4208131/93172836-3e698f00-f749-11ea-9b9b-15c5f21dd5af.gif)
__
19ms![19ms](https://user-images.githubusercontent.com/4208131/93172837-3f022580-f749-11ea-84be-7adc712bf230.gif)
20ms![20ms](https://user-images.githubusercontent.com/4208131/93172839-3f9abc00-f749-11ea-8d5d-98b4ae131546.gif)
21ms![21ms](https://user-images.githubusercontent.com/4208131/93172841-3f9abc00-f749-11ea-9b50-0cb5aa56b525.gif)
40ms![40ms](https://user-images.githubusercontent.com/4208131/93172843-40335280-f749-11ea-8572-5bcfae11e28f.gif)

 __
75ms![75ms](https://user-images.githubusercontent.com/4208131/93172846-40cbe900-f749-11ea-8cc2-e20d2ce74947.gif)

Original![gif](https://user-images.githubusercontent.com/4208131/93172848-41647f80-f749-11ea-88a9-429fa956e428.gif)



Without the fix, gif animation speed matches for all interval gifs with all 
other browser (Which includes firefox,
safari, chrome). Only animation speed for gif file which is attached in issue 
doesn't match. javafx webkit plays it
faster. Imageview plays everything at its original speed. No clamping happens 
here.

-

PR: https://git.openjdk.java.net/jfx/pull/221


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v12]

2020-09-14 Thread Bhawesh Choudhary
On Fri, 11 Sep 2020 00:13:48 GMT, Kevin Rushforth  wrote:

>> Bhawesh Choudhary has updated the pull request incrementally with one 
>> additional commit since the last revision:
>> 
>>   Added unit test for strokes
>
> modules/javafx.web/src/main/java/com/sun/javafx/webkit/prism/WCGraphicsPrismContext.java
>  line 524:
> 
>> 522: }
>> 523: if (isFill) {
>> 524: g1.fill(shape);
> 
> This will call the slower `fill(Shape)` method in all cases rather than the 
> specialized `fillRect` or `fillRoundRect`
> method. Given all the other things that are done to draw a shape with a clip 
> mask, I suspect that this is fine. One
> thing to consider is to pass in an enum instead of a boolean. The enum could 
> say whether to use the specialized calls
> or the generic `fill` call. It's probably not worth the effort to make this 
> change.

other than paths only RoundRectangle2D is passed to this function. Shape can be 
checked if it is an instance of
RoundRectangle2D and faster draw api can be called. added the same along with 
enum private to this class.

> modules/javafx.web/src/test/java/test/javafx/scene/web/SVGTest.java line 164:
> 
>> 162: final WebPage webPage = WebEngineShim.getPage(getEngine());
>> 163: assertNotNull(webPage);
>> 164: final BufferedImage img = WebPageShim.paint(webPage, 0, 0, 
>> 200, 200);
> 
> This is added to the (preexisting) problem of calling `paint` on the wrong 
> thread. In this case, it doesn't seem to
> cause any additional problems, and other tests in this same class do it, so 
> we can fix this in the follow-on issue that
> is already filed, 
> [JDK-8252596](https://bugs.openjdk.java.net/browse/JDK-8252596).

moved tests to system test. also consolidated all tests into one.

-

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v12]

2020-09-14 Thread Bhawesh Choudhary
On Fri, 11 Sep 2020 00:10:29 GMT, Kevin Rushforth  wrote:

>> Bhawesh Choudhary has updated the pull request incrementally with one 
>> additional commit since the last revision:
>> 
>>   Added unit test for strokes
>
> modules/javafx.web/src/main/java/com/sun/javafx/webkit/prism/WCGraphicsPrismContext.java
>  line 447:
> 
>> 445: public void setClip(int cx, int cy, int cw, int ch, WCImage 
>> maskImage) {
>> 446: setClip(new Rectangle(cx, cy, cw, ch));
>> 447: state.setClipMaskImage(maskImage);
> 
> Should all of the other variants of setClip (the ones that don't take a 
> maskImage) set the clipMaskImage to null?
> Otherwise it seems that it might not be reset to null in all cases.

added setting of null to maskImage for all the overloads of setClip where mask 
image is not present.

> modules/javafx.web/src/main/java/com/sun/javafx/webkit/prism/WCGraphicsPrismContext.java
>  line 520:
> 
>> 518: state.apply(g1);
>> 519: g1.setPaint(paint);
>> 520: if(stroke != null) {
> 
> Minor: there should be a space after the `if`.

Fixed

-

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v7]

2020-09-14 Thread Bhawesh Choudhary
On Fri, 11 Sep 2020 06:48:35 GMT, Bhawesh Choudhary  
wrote:

>> This question is still outstanding. It seems like the call to `setCTM` is 
>> either needed before all of the `setGradient`
>> calls or none of them. Can you comment?
>
> i believe setCTM call is needed for none of them. it is a workaround i have 
> added till i have more concrete fix. also
> please note that this workaround is needed only in cases where ui scaling is 
> more than 1.

Removed the workaround and added right fix. `setCTM` call is not needed in any 
of the case.

-

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v13]

2020-09-14 Thread Bhawesh Choudhary
> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Updates as per review comments

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/213/files
  - new: https://git.openjdk.java.net/jfx/pull/213/files/ed2dd092..f26f03df

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jfx=213=12
 - incr: https://webrevs.openjdk.java.net/?repo=jfx=213=11-12

  Stats: 336 lines in 6 files changed: 173 ins; 152 del; 11 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v7]

2020-09-11 Thread Bhawesh Choudhary
On Fri, 11 Sep 2020 00:29:53 GMT, Kevin Rushforth  wrote:

>> modules/javafx.web/src/main/native/Source/WebCore/platform/graphics/java/GraphicsContextJava.cpp
>>  line 235:
>> 
>>> 233: } else {
>>> 234: if (m_state.fillGradient) {
>>> 235: setCTM(m_state.transform);
>> 
>> Why is this needed here, but not in the other places `setGradient` is 
>> called? Won't there be a similar problem with
>> `strokeRect`, `fillPath`, etc?
>
> This question is still outstanding. It seems like the call to `setCTM` is 
> either needed before all of the `setGradient`
> calls or none of them. Can you comment?

i believe setCTM call is needed for none of them. it is a workaround i have 
added till i have more concrete fix. also
please note that this workaround is needed only in cases where ui scaling is 
more than 1.

-

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v12]

2020-09-08 Thread Bhawesh Choudhary
> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Added unit test for strokes

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/213/files
  - new: https://git.openjdk.java.net/jfx/pull/213/files/ec272623..ed2dd092

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jfx=213=11
 - incr: https://webrevs.openjdk.java.net/?repo=jfx=213=10-11

  Stats: 39 lines in 1 file changed: 37 ins; 0 del; 2 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v11]

2020-09-08 Thread Bhawesh Choudhary
> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  rendering fix for paths and strokes + refactoring

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/213/files
  - new: https://git.openjdk.java.net/jfx/pull/213/files/87f63074..ec272623

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jfx=213=10
 - incr: https://webrevs.openjdk.java.net/?repo=jfx=213=09-10

  Stats: 132 lines in 1 file changed: 54 ins; 70 del; 8 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


Integrated: 8202990: javafx webview css filter property with display scaling

2020-09-03 Thread Bhawesh Choudhary
On Tue, 11 Aug 2020 16:18:37 GMT, Bhawesh Choudhary  
wrote:

> ImageJava.cpp ignores CompositeOperator parameter in drawImage function due 
> to which shadow was getting drawn on top of
> actual image. apply given composite operator to graphics context before 
> drawing image to fix this issue. another issue
> is into WCGraphicsPrismContext.java. while blending two layers, applying 
> state to the destination layer was missed due
> to which image was not getting drawn with right scale in hidpi mode. apply 
> state to fix the issue.

This pull request has now been integrated.

Changeset: 3cb3ca84
Author:Bhawesh Choudhary 
Committer: Kevin Rushforth 
URL:   https://git.openjdk.java.net/jfx/commit/3cb3ca84
Stats: 200 lines in 4 files changed: 0 ins; 199 del; 1 mod

8202990: javafx webview css filter property with display scaling

Reviewed-by: kcr, ajoseph

-

PR: https://git.openjdk.java.net/jfx/pull/279


Integrated: 8252387: Deprecate for removal css Selector and ShapeConverter constructors

2020-09-03 Thread Bhawesh Choudhary
On Fri, 28 Aug 2020 14:55:55 GMT, Bhawesh Choudhary  
wrote:

> Deprecate the public constructor of javafx.css.Selector as it should not be 
> public due to only being extended by
> classes in same package. Deprecate the public constructor of 
> javafx.css.converter.ShapeConverter as its a singleton
> class.

This pull request has now been integrated.

Changeset: a5ecfb68
Author:Bhawesh Choudhary 
Committer: Nir Lisker 
URL:   https://git.openjdk.java.net/jfx/commit/a5ecfb68
Stats: 14 lines in 2 files changed: 0 ins; 14 del; 0 mod

8252387: Deprecate for removal css Selector and ShapeConverter constructors

Reviewed-by: nlisker, kcr

-

PR: https://git.openjdk.java.net/jfx/pull/290


Re: RFR: 8202990: javafx webview css filter property with display scaling [v3]

2020-09-03 Thread Bhawesh Choudhary
> ImageJava.cpp ignores CompositeOperator parameter in drawImage function due 
> to which shadow was getting drawn on top of
> actual image. apply given composite operator to graphics context before 
> drawing image to fix this issue. another issue
> is into WCGraphicsPrismContext.java. while blending two layers, applying 
> state to the destination layer was missed due
> to which image was not getting drawn with right scale in hidpi mode. apply 
> state to fix the issue.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Updated test as per review comment

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/279/files
  - new: https://git.openjdk.java.net/jfx/pull/279/files/a99141df..62dc4592

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jfx=279=02
 - incr: https://webrevs.openjdk.java.net/?repo=jfx=279=01-02

  Stats: 6 lines in 1 file changed: 0 ins; 5 del; 1 mod
  Patch: https://git.openjdk.java.net/jfx/pull/279.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/279/head:pull/279

PR: https://git.openjdk.java.net/jfx/pull/279


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v10]

2020-09-01 Thread Bhawesh Choudhary
> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Added fillRoundedRect and fillPath drawing with mask

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/213/files
  - new: https://git.openjdk.java.net/jfx/pull/213/files/41f64c0e..87f63074

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jfx=213=09
 - incr: https://webrevs.openjdk.java.net/?repo=jfx=213=08-09

  Stats: 42 lines in 1 file changed: 42 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8202990: javafx webview css filter property with display scaling [v2]

2020-09-01 Thread Bhawesh Choudhary
> ImageJava.cpp ignores CompositeOperator parameter in drawImage function due 
> to which shadow was getting drawn on top of
> actual image. apply given composite operator to graphics context before 
> drawing image to fix this issue. another issue
> is into WCGraphicsPrismContext.java. while blending two layers, applying 
> state to the destination layer was missed due
> to which image was not getting drawn with right scale in hidpi mode. apply 
> state to fix the issue.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Moved test from unit test to system test

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/279/files
  - new: https://git.openjdk.java.net/jfx/pull/279/files/91e8bdf0..a99141df

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jfx=279=01
 - incr: https://webrevs.openjdk.java.net/?repo=jfx=279=00-01

  Stats: 211 lines in 3 files changed: 185 ins; 26 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/279.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/279/head:pull/279

PR: https://git.openjdk.java.net/jfx/pull/279


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v9]

2020-08-31 Thread Bhawesh Choudhary
> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Added unit tests

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/213/files
  - new: https://git.openjdk.java.net/jfx/pull/213/files/b1299ba1..41f64c0e

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jfx=213=08
 - incr: https://webrevs.openjdk.java.net/?repo=jfx=213=07-08

  Stats: 72 lines in 1 file changed: 71 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8252387: Deprecate for removal css Selector and ShapeConverter constructors [v2]

2020-08-28 Thread Bhawesh Choudhary
> Deprecate the public constructor of javafx.css.Selector as it should not be 
> public due to only being extended by
> classes in same package. Deprecate the public constructor of 
> javafx.css.converter.ShapeConverter as its a singleton
> class.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Updated Selector class comments as per review

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/290/files
  - new: https://git.openjdk.java.net/jfx/pull/290/files/4719ef18..eb2f71b8

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/290/webrev.01
 - incr: https://webrevs.openjdk.java.net/jfx/290/webrev.00-01

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jfx/pull/290.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/290/head:pull/290

PR: https://git.openjdk.java.net/jfx/pull/290


RFR: 8252387: Deprecate for removal css Selector and ShapeConverter constructors

2020-08-28 Thread Bhawesh Choudhary
Deprecate the public constructor of javafx.css.Selector and 
javafx.css.converter.ShapeConverter

 Constrcutor for class javafx.css.Selector should not be public as it is only 
extended by classes in same package. it
 should be changed to package-private Constrcutor for class 
javafx.css.converter.ShapeConverter should be private rather
 than public as its a singleton class.

-

Commit messages:
 - 8252387: Deprecate for removal css Selector and ShapeConverter constructors

Changes: https://git.openjdk.java.net/jfx/pull/290/files
 Webrev: https://webrevs.openjdk.java.net/jfx/290/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8252387
  Stats: 14 lines in 2 files changed: 14 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/290.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/290/head:pull/290

PR: https://git.openjdk.java.net/jfx/pull/290


Re: RFR: 8252381: Cherry pick GTK WebKit 2.28.4 changes

2020-08-28 Thread Bhawesh Choudhary
On Thu, 27 Aug 2020 14:59:56 GMT, Arun Joseph  wrote:

> Update to GTK WebKit 2.28.4
> https://webkitgtk.org/2020/07/28/webkitgtk2.28.4-released.html

Marked as reviewed by bchoudhary (Author).

-

PR: https://git.openjdk.java.net/jfx/pull/289


Re: RFR: 8252381: Cherry pick GTK WebKit 2.28.4 changes

2020-08-28 Thread Bhawesh Choudhary
On Thu, 27 Aug 2020 21:27:18 GMT, Kevin Rushforth  wrote:

>> Update to GTK WebKit 2.28.4
>> https://webkitgtk.org/2020/07/28/webkitgtk2.28.4-released.html
>
> Looks good. Also, I tested on all three platforms.

Verified with all three platform. Looks good.

-

PR: https://git.openjdk.java.net/jfx/pull/289


Integrated: 8251353: Many javafx scenegraph classes have implicit no-arg constructors

2020-08-28 Thread Bhawesh Choudhary
On Mon, 17 Aug 2020 11:16:55 GMT, Bhawesh Choudhary  
wrote:

> Added missing explicit no-arg constructors to classes in package 
> javafx.scene, javafx.css and javafx.stage.

This pull request has now been integrated.

Changeset: 23ad8f40
Author:Bhawesh Choudhary 
Committer: Nir Lisker 
URL:   https://git.openjdk.java.net/jfx/commit/23ad8f40
Stats: 80 lines in 12 files changed: 0 ins; 80 del; 0 mod

8251353: Many javafx scenegraph classes have implicit no-arg constructors

Reviewed-by: kcr, nlisker

-

PR: https://git.openjdk.java.net/jfx/pull/283


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v8]

2020-08-26 Thread Bhawesh Choudhary
> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

Bhawesh Choudhary has updated the pull request with a new target base due to a 
merge or a rebase. The incremental
webrev excludes the unrelated changes brought in by the merge/rebase. The pull 
request contains 12 additional commits
since the last revision:

 - Merge branch 'master' into clip_mask_support
 - Removed RenderSVGResourceMasker changes and added fix for HIDPI mask 
rendering
 - HiDPI printing and Rendering fix
 - Removed unnecessery Ceil Functions
 - Refactoring, Utilize getFilterContext() function
 - Moved Printing drawing path to non MaskTextureGraphics interface
 - added dispose of resources
 - Formatting correction (Line Endings)
 - removed executable file mode
 - Added unit test + SW Graphics rendering part
 - ... and 2 more: https://git.openjdk.java.net/jfx/compare/31912a00...b1299ba1

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/213/files
  - new: https://git.openjdk.java.net/jfx/pull/213/files/ef47709f..b1299ba1

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/213/webrev.07
 - incr: https://webrevs.openjdk.java.net/jfx/213/webrev.06-07

  Stats: 404841 lines in 5801 files changed: 202048 ins; 139986 del; 62807 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8251353: Many javafx scenegraph classes have implicit no-arg constructors [v5]

2020-08-26 Thread Bhawesh Choudhary
> Added missing explicit no-arg constructors to classes in package 
> javafx.scene, javafx.css and javafx.stage.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Updated comments as per JDK Convention

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/283/files
  - new: https://git.openjdk.java.net/jfx/pull/283/files/69b75d69..5bb07901

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/283/webrev.04
 - incr: https://webrevs.openjdk.java.net/jfx/283/webrev.03-04

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jfx/pull/283.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/283/head:pull/283

PR: https://git.openjdk.java.net/jfx/pull/283


Re: RFR: 8251353: Many javafx scenegraph classes have implicit no-arg constructors [v4]

2020-08-26 Thread Bhawesh Choudhary
> Added missing explicit no-arg constructors to classes in package 
> javafx.scene, javafx.css and javafx.stage.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Updated comments as per JDK convention

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/283/files
  - new: https://git.openjdk.java.net/jfx/pull/283/files/38a7551d..69b75d69

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/283/webrev.03
 - incr: https://webrevs.openjdk.java.net/jfx/283/webrev.02-03

  Stats: 12 lines in 12 files changed: 0 ins; 0 del; 12 mod
  Patch: https://git.openjdk.java.net/jfx/pull/283.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/283/head:pull/283

PR: https://git.openjdk.java.net/jfx/pull/283


Re: RFR: 8251353: Many javafx scenegraph classes have implicit no-arg constructors [v3]

2020-08-25 Thread Bhawesh Choudhary
> Added missing explicit no-arg constructors to classes in package 
> javafx.scene, javafx.css and javafx.stage.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Reverted changes for class Selector and ShapeConverter as per review comment

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/283/files
  - new: https://git.openjdk.java.net/jfx/pull/283/files/16d8b9ad..38a7551d

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/283/webrev.02
 - incr: https://webrevs.openjdk.java.net/jfx/283/webrev.01-02

  Stats: 14 lines in 2 files changed: 0 ins; 14 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/283.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/283/head:pull/283

PR: https://git.openjdk.java.net/jfx/pull/283


Re: RFR: 8251353: Many javafx scenegraph classes have implicit no-arg constructors [v2]

2020-08-24 Thread Bhawesh Choudhary
> Added missing explicit no-arg constructors to classes in package 
> javafx.scene, javafx.css and javafx.stage.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Marked few class constructor as deprecated as per review

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/283/files
  - new: https://git.openjdk.java.net/jfx/pull/283/files/25c7b37c..16d8b9ad

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/283/webrev.01
 - incr: https://webrevs.openjdk.java.net/jfx/283/webrev.00-01

  Stats: 6 lines in 2 files changed: 2 ins; 0 del; 4 mod
  Patch: https://git.openjdk.java.net/jfx/pull/283.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/283/head:pull/283

PR: https://git.openjdk.java.net/jfx/pull/283


Integrated: 8251352: Many javafx.base classes have implicit no-arg constructors

2020-08-18 Thread Bhawesh Choudhary
On Mon, 17 Aug 2020 09:23:34 GMT, Bhawesh Choudhary  
wrote:

> Added missing explicit no-arg constructors to classes in package 
> javafx.beans.property, javafx.collections, javafx.util
> and javafx.util.converter in module javafx.base.

This pull request has now been integrated.

Changeset: b25ffc7a
Author:    Bhawesh Choudhary 
Committer: Kevin Rushforth 
URL:   https://git.openjdk.java.net/jfx/commit/b25ffc7a
Stats: 224 lines in 35 files changed: 0 ins; 224 del; 0 mod

8251352: Many javafx.base classes have implicit no-arg constructors

Reviewed-by: nlisker, kcr

-

PR: https://git.openjdk.java.net/jfx/pull/282


RFR: 8251353: Many javafx scenegraph classes have implicit no-arg constructors

2020-08-17 Thread Bhawesh Choudhary
Added missing explicit no-arg constructors to classes in package javafx.scene, 
javafx.css and javafx.stage.

-

Commit messages:
 - 8251353: Many javafx scenegraph classes have implicit no-arg constructors

Changes: https://git.openjdk.java.net/jfx/pull/283/files
 Webrev: https://webrevs.openjdk.java.net/jfx/283/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8251353
  Stats: 92 lines in 14 files changed: 92 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/283.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/283/head:pull/283

PR: https://git.openjdk.java.net/jfx/pull/283


RFR: 8251352: Many javafx.base classes have implicit no-arg constructors

2020-08-17 Thread Bhawesh Choudhary
Added missing explicit no-arg constructors to classes in package 
javafx.beans.property, javafx.collections, javafx.util
and javafx.util.converter in module javafx.base.

-

Commit messages:
 - 8251352: Many javafx.base classes have implicit no-arg constructors

Changes: https://git.openjdk.java.net/jfx/pull/282/files
 Webrev: https://webrevs.openjdk.java.net/jfx/282/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8251352
  Stats: 224 lines in 35 files changed: 224 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/282.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/282/head:pull/282

PR: https://git.openjdk.java.net/jfx/pull/282


RFR: 8202990: javafx webview css filter property with display scaling

2020-08-11 Thread Bhawesh Choudhary
ImageJava.cpp ignores CompositeOperator parameter in drawImage function due to 
which shadow was getting drawn on top of
actual image. apply given composite operator to graphics context before drawing 
image to fix this issue. another issue
is into WCGraphicsPrismContext.java. while blending two layers, applying state 
to the destination layer was missed due
to which image was not getting drawn with right scale in hidpi mode. apply 
state to fix the issue.

-

Commit messages:
 - Formatting
 - Formatting
 - added Unit Test
 - 8202990: javafx webview css filter property with display scaling

Changes: https://git.openjdk.java.net/jfx/pull/279/files
 Webrev: https://webrevs.openjdk.java.net/jfx/279/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8202990
  Stats: 46 lines in 4 files changed: 45 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jfx/pull/279.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/279/head:pull/279

PR: https://git.openjdk.java.net/jfx/pull/279


Integrated: 8181775: JavaFX WebView does not calculate border-radius properly

2020-08-10 Thread Bhawesh Choudhary
On Thu, 14 May 2020 08:15:19 GMT, Bhawesh Choudhary  
wrote:

> root cause of issue is prism's fillRoundedRect() API doesn't allow rendering 
> of rounded corner rectangle if four
> corners have different radii. but same can be achieved via Path. to fix the 
> issue, in GraphicsContextJava.cpp while
> rendering fillRoundedRect, check if all four corners have same radii. if yes, 
> use FILL_ROUNDED_RECT to draw it
> otherwise construct a path from given rounded rect and draw it.

This pull request has now been integrated.

Changeset: f216c5fe
Author:Bhawesh Choudhary 
Committer: Kevin Rushforth 
URL:   https://git.openjdk.java.net/jfx/commit/f216c5fe
Stats: 104 lines in 2 files changed: 0 ins; 95 del; 9 mod

8181775: JavaFX WebView does not calculate border-radius properly

Reviewed-by: kcr, ajoseph

-

PR: https://git.openjdk.java.net/jfx/pull/218


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v7]

2020-07-28 Thread Bhawesh Choudhary
> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Removed RenderSVGResourceMasker changes and added fix for HIDPI mask rendering

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/213/files
  - new: https://git.openjdk.java.net/jfx/pull/213/files/312d068a..ef47709f

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/213/webrev.06
 - incr: https://webrevs.openjdk.java.net/jfx/213/webrev.05-06

  Stats: 3 lines in 2 files changed: 1 ins; 2 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v6]

2020-07-28 Thread Bhawesh Choudhary
On Fri, 24 Jul 2020 12:10:00 GMT, Arun Joseph  wrote:

>> Bhawesh Choudhary has updated the pull request incrementally with one 
>> additional commit since the last revision:
>> 
>>   HiDPI printing and Rendering fix
>
> modules/javafx.web/src/main/native/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp
>  line 93:
> 
>> 92: auto deviceScaleFactor = document().deviceScaleFactor();
>> 93: maskImageContext.applyDeviceScaleFactor(deviceScaleFactor);
>> 94:
> 
> For javafx port specific code in WebKit, it should be enclosed in `#if 
> PLATFORM(JAVA)`. But I think that there should
> be a better approach as other ports don't require this scaling of 
> `deviceScaleFactor`

RenderSVGResourceMasker.cpp changes are removed now.

-

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8249839: Cherry pick GTK WebKit 2.28.3 changes

2020-07-24 Thread Bhawesh Choudhary
On Thu, 23 Jul 2020 16:36:01 GMT, Kevin Rushforth  wrote:

>> Update to GTK WebKit 2.28.3
>> https://webkitgtk.org/2020/07/09/webkitgtk2.28.3-released.html
>
> Marked as reviewed by kcr (Lead).

Tested on all three platform. Looks good.

-

PR: https://git.openjdk.java.net/jfx/pull/271


Re: RFR: 8249839: Cherry pick GTK WebKit 2.28.3 changes

2020-07-24 Thread Bhawesh Choudhary
On Thu, 23 Jul 2020 05:34:50 GMT, Arun Joseph  wrote:

> Update to GTK WebKit 2.28.3
> https://webkitgtk.org/2020/07/09/webkitgtk2.28.3-released.html

Marked as reviewed by bchoudhary (Author).

-

PR: https://git.openjdk.java.net/jfx/pull/271


Re: RFR: 8181775: JavaFX WebView does not calculate border-radius properly [v4]

2020-07-23 Thread Bhawesh Choudhary
> root cause of issue is prism's fillRoundedRect() API doesn't allow rendering 
> of rounded corner rectangle if four
> corners have different radii. but same can be achieved via Path. to fix the 
> issue, in GraphicsContextJava.cpp while
> rendering fillRoundedRect, check if all four corners have same radii. if yes, 
> use FILL_ROUNDED_RECT to draw it
> otherwise construct a path from given rounded rect and draw it.

Bhawesh Choudhary has updated the pull request with a new target base due to a 
merge or a rebase. The pull request now
contains four commits:

 - Merge branch 'master' into 8181775
 - Removed wildcard import statement
 - Formatting (File Mode Attribute change)
 - 8181775: JavaFX WebView does not calculate border-radius properly

-

Changes: https://git.openjdk.java.net/jfx/pull/218/files
 Webrev: https://webrevs.openjdk.java.net/jfx/218/webrev.03
  Stats: 104 lines in 2 files changed: 95 ins; 0 del; 9 mod
  Patch: https://git.openjdk.java.net/jfx/pull/218.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/218/head:pull/218

PR: https://git.openjdk.java.net/jfx/pull/218


Re: RFR: 8181775: JavaFX WebView does not calculate border-radius properly [v3]

2020-07-22 Thread Bhawesh Choudhary
> root cause of issue is prism's fillRoundedRect() API doesn't allow rendering 
> of rounded corner rectangle if four
> corners have different radii. but same can be achieved via Path. to fix the 
> issue, in GraphicsContextJava.cpp while
> rendering fillRoundedRect, check if all four corners have same radii. if yes, 
> use FILL_ROUNDED_RECT to draw it
> otherwise construct a path from given rounded rect and draw it.

Bhawesh Choudhary has updated the pull request incrementally with 54 additional 
commits since the last revision:

 - 8181775: JavaFX WebView does not calculate border-radius properly
 - 8220484: JFXPanel renders a slanted image with a hidpi monitor scale of 125% 
or 175%
   
   Reviewed-by: kcr, psadhukhan
 - 8248381: Create a daemon thread for MonocleTimer
   
   Reviewed-by: kcr, jvos
 - 8248490: [macOS] Undecorated stage does not minimize
   
   Reviewed-by: arapte, aghaisas
 - 8248908: Printer.createPageLayout() returns 0.75" margins instead of 
hardware margins
   
   Reviewed-by: kcr
 - 8245284: Update to 610.1 version of WebKit
   
   Co-authored-by: Guru Hb 
   Co-authored-by: Bhawesh Choudhary 
   Reviewed-by: kcr, bchoudhary, sykora
 - 8176270: Adding ChangeListener to TextField.selectedTextProperty causes 
StringOutOfBoundsException
   
   Reviewed-by: aghaisas, kcr
 - 8245422: Better Pisces rasterizing
   
   Reviewed-by: prr, rhalade, arapte, mschoene
 - 8241108: Glib improvements
   
   Reviewed-by: kcr, ahgross, rhalade
 - 8248365: Debug build crashes on Windows when playing media file
   
   Reviewed-by: kcr
 - ... and 44 more: https://git.openjdk.java.net/jfx/compare/e7cb98fe...586af326

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/218/files
  - new: https://git.openjdk.java.net/jfx/pull/218/files/e7cb98fe..586af326

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/218/webrev.02
 - incr: https://webrevs.openjdk.java.net/jfx/218/webrev.01-02

  Stats: 393560 lines in 5665 files changed: 200813 ins; 130033 del; 62714 mod
  Patch: https://git.openjdk.java.net/jfx/pull/218.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/218/head:pull/218

PR: https://git.openjdk.java.net/jfx/pull/218


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v5]

2020-07-21 Thread Bhawesh Choudhary
On Fri, 12 Jun 2020 22:01:47 GMT, Kevin Rushforth  wrote:

>> The code looks good (with a couple minor formatting issues).
>> 
>> All of the onscreen testing I did  looks good on Windows. I'd like to test 
>> it on Mac as well.
>> 
>> There is an issue with printing in the case of Hi-DPI scaling, which is what 
>> I run by default on Windows. The gradient
>> texture appears to be scaled incorrectly (as if the scale was applied more 
>> than once). If I force scaling to 1 with
>> `-Dglass.win.uiScale=1` then it prints correctly.
>
> It behaves the same on Mac with a Retina display as it does on Windows with 
> Hi-DPI scaling. The gradient doesn't appear
> to be scaled correctly when printing. It's fine with on-screen rendering 
> (with both HW and SW pipeline).

Issue related to hidpi rendering was caused due to correct pixel scale factor 
not being set to the context in which
mask texture was getting rendered. setting correct device scale factor in 
`RenderSVGResourceMasker.cpp` fixed the
issue. Below images shows the rendered mask texture in both case (HiDpi and 
Normal respectively)

![HiDpi_Mask_1](https://user-images.githubusercontent.com/4208131/88110579-125ae300-cbca-11ea-9c02-ceec2ccdf7d1.png)
![Normal_Mask_1](https://user-images.githubusercontent.com/4208131/88110582-138c1000-cbca-11ea-88ce-5e15d124.png)

Another issue was in Hi DPI printing. PrintGraphics draws with different 
resolution than the mask texture. Before the
fix mask was not drawn correctly to RTTexture, due to which only top left 
portion which comes inside current draw
bounds was taken to draw the whole image. After fix, entire mask texture is 
always considered while doing final drawing.

-

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8218973: SVG with masking is not rendering image with mask effect [v6]

2020-07-21 Thread Bhawesh Choudhary
> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  HiDPI printing and Rendering fix

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/213/files
  - new: https://git.openjdk.java.net/jfx/pull/213/files/f0c217ec..312d068a

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/213/webrev.05
 - incr: https://webrevs.openjdk.java.net/jfx/213/webrev.04-05

  Stats: 34 lines in 2 files changed: 5 ins; 9 del; 20 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


Re: RFR: 8245284: Update to 610.1 version of WebKit

2020-07-13 Thread Bhawesh Choudhary
On Fri, 10 Jul 2020 05:26:39 GMT, Arun Joseph  wrote:

> Update JavaFX WebKit to GTK WebKit 2.28 (610.1)

Marked as reviewed by bchoudhary (Author).

-

PR: https://git.openjdk.java.net/jfx/pull/263


Re: RFR: 8245284: Update to 610.1 version of WebKit

2020-07-13 Thread Bhawesh Choudhary
On Fri, 10 Jul 2020 22:03:22 GMT, Kevin Rushforth  wrote:

>> Update JavaFX WebKit to GTK WebKit 2.28 (610.1)
>
> Looks good. Tested on all three platforms.

Checked with various websites on all three platform. Looks good.

-

PR: https://git.openjdk.java.net/jfx/pull/263


Integrated: 8208169: can not print selected pages of web page

2020-06-17 Thread Bhawesh Choudhary
On Fri, 15 May 2020 16:36:29 GMT, Bhawesh Choudhary 
 wrote:

> Print function of WebEngine.java ignores page range setting and prints given 
> number of pages starting from first page,
> which is the root cause of this issue. To fix it, put check for page ranges 
> and if it available, use it for printing
> pages otherwise print all pages as usual.

This pull request has now been integrated.

Changeset: 8440b64b
Author:bhawesh 
Committer: Kevin Rushforth 
URL:   https://git.openjdk.java.net/jfx/commit/8440b64b
Stats: 159 lines in 2 files changed: 0 ins; 155 del; 4 mod

8208169: can not print selected pages of web page

Reviewed-by: prr, kcr

-

PR: https://git.openjdk.java.net/jfx/pull/222


Re: [Rev 04] RFR: 8208169: can not print selected pages of web page

2020-06-16 Thread Bhawesh Choudhary
> Print function of WebEngine.java ignores page range setting and prints given 
> number of pages starting from first page,
> which is the root cause of this issue. To fix it, put check for page ranges 
> and if it available, use it for printing
> pages otherwise print all pages as usual.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Formatting changes

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/222/files
  - new: https://git.openjdk.java.net/jfx/pull/222/files/717dac0f..456d0a16

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/222/webrev.04
 - incr: https://webrevs.openjdk.java.net/jfx/222/webrev.03-04

  Stats: 5 lines in 2 files changed: 0 ins; 0 del; 5 mod
  Patch: https://git.openjdk.java.net/jfx/pull/222.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/222/head:pull/222

PR: https://git.openjdk.java.net/jfx/pull/222


Re: [Rev 03] RFR: 8208169: can not print selected pages of web page

2020-06-14 Thread Bhawesh Choudhary
> Print function of WebEngine.java ignores page range setting and prints given 
> number of pages starting from first page,
> which is the root cause of this issue. To fix it, put check for page ranges 
> and if it available, use it for printing
> pages otherwise print all pages as usual.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  cleanup unused variable

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/222/files
  - new: https://git.openjdk.java.net/jfx/pull/222/files/4d973a33..717dac0f

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/222/webrev.03
 - incr: https://webrevs.openjdk.java.net/jfx/222/webrev.02-03

  Stats: 2 lines in 1 file changed: 0 ins; 2 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/222.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/222/head:pull/222

PR: https://git.openjdk.java.net/jfx/pull/222


Re: [Rev 02] RFR: 8208169: can not print selected pages of web page

2020-06-14 Thread Bhawesh Choudhary
On Thu, 21 May 2020 17:41:46 GMT, Phil Race  wrote:

>> Bhawesh Choudhary has updated the pull request incrementally with one 
>> additional commit since the last revision:
>> 
>>   Replaced webpage with locally generated html content in test
>
> looks ok. Approval waiting on a test.

@prrace
updated test which uses locally generated html content which should be large 
enough to cover 4 pages.

-

PR: https://git.openjdk.java.net/jfx/pull/222


Re: [Rev 02] RFR: 8208169: can not print selected pages of web page

2020-06-14 Thread Bhawesh Choudhary
> Print function of WebEngine.java ignores page range setting and prints given 
> number of pages starting from first page,
> which is the root cause of this issue. To fix it, put check for page ranges 
> and if it available, use it for printing
> pages otherwise print all pages as usual.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Replaced webpage with locally generated html content in test

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/222/files
  - new: https://git.openjdk.java.net/jfx/pull/222/files/75a0362f..4d973a33

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/222/webrev.02
 - incr: https://webrevs.openjdk.java.net/jfx/222/webrev.01-02

  Stats: 66 lines in 1 file changed: 21 ins; 32 del; 13 mod
  Patch: https://git.openjdk.java.net/jfx/pull/222.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/222/head:pull/222

PR: https://git.openjdk.java.net/jfx/pull/222


Re: [Rev 01] RFR: 8208169: can not print selected pages of web page

2020-06-01 Thread Bhawesh Choudhary
> Print function of WebEngine.java ignores page range setting and prints given 
> number of pages starting from first page,
> which is the root cause of this issue. To fix it, put check for page ranges 
> and if it available, use it for printing
> pages otherwise print all pages as usual.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  added manual test

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/222/files
  - new: https://git.openjdk.java.net/jfx/pull/222/files/39748929..75a0362f

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/222/webrev.01
 - incr: https://webrevs.openjdk.java.net/jfx/222/webrev.00-01

  Stats: 153 lines in 1 file changed: 153 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/222.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/222/head:pull/222

PR: https://git.openjdk.java.net/jfx/pull/222


Re: [Rev 04] RFR: 8218973: SVG with masking is not rendering image with mask effect

2020-05-19 Thread Bhawesh Choudhary
> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Removed unnecessery Ceil Functions

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/213/files
  - new: https://git.openjdk.java.net/jfx/pull/213/files/a55f9f23..f0c217ec

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/213/webrev.04
 - incr: https://webrevs.openjdk.java.net/jfx/213/webrev.03-04

  Stats: 3 lines in 1 file changed: 0 ins; 2 del; 1 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


Re: [Rev 03] RFR: 8218973: SVG with masking is not rendering image with mask effect

2020-05-18 Thread Bhawesh Choudhary
> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Refactoring, Utilize getFilterContext() function

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/213/files
  - new: https://git.openjdk.java.net/jfx/pull/213/files/5b85b47d..a55f9f23

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/213/webrev.03
 - incr: https://webrevs.openjdk.java.net/jfx/213/webrev.02-03

  Stats: 8 lines in 1 file changed: 0 ins; 7 del; 1 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


Re: [Rev 01] RFR: 8181775: JavaFX WebView does not calculate border-radius properly

2020-05-18 Thread Bhawesh Choudhary
> root cause of issue is prism's fillRoundedRect() API doesn't allow rendering 
> of rounded corner rectangle if four
> corners have different radii. but same can be achieved via Path. to fix the 
> issue, in GraphicsContextJava.cpp while
> rendering fillRoundedRect, check if all four corners have same radii. if yes, 
> use FILL_ROUNDED_RECT to draw it
> otherwise construct a path from given rounded rect and draw it.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Removed wildcard import statement

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/218/files
  - new: https://git.openjdk.java.net/jfx/pull/218/files/a742ba43..e7cb98fe

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/218/webrev.01
 - incr: https://webrevs.openjdk.java.net/jfx/218/webrev.00-01

  Stats: 2 lines in 1 file changed: 1 ins; 1 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/218.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/218/head:pull/218

PR: https://git.openjdk.java.net/jfx/pull/218


RFR: 8208169: can not print selected pages of web page

2020-05-15 Thread Bhawesh Choudhary
Print function of WebEngine.java ignores page range setting and prints given 
number of pages starting from first page,
which is the root cause of this issue. To fix it, put check for page ranges and 
if it available, use it for printing
pages otherwise print all pages as usual.

-

Commit messages:
 - 8208169: can not print selected pages of web page

Changes: https://git.openjdk.java.net/jfx/pull/222/files
 Webrev: https://webrevs.openjdk.java.net/jfx/222/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8208169
  Stats: 19 lines in 1 file changed: 15 ins; 0 del; 4 mod
  Patch: https://git.openjdk.java.net/jfx/pull/222.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/222/head:pull/222

PR: https://git.openjdk.java.net/jfx/pull/222


RFR: 8169501: GIF animation is too fast

2020-05-15 Thread Bhawesh Choudhary
issue is caused by the threshold value for frame duration used by javaFx before 
it gets normalized. JavaFx is using
threshold value 10 while other browser (Safari, Firefox) is using 50 due to 
which, value between 10 and 50 don't get
normalized and animation runs at faster speed. To fix the issue change frame 
duration normalization value to <= 50.
Safari : https://bugs.webkit.org/show_bug.cgi?id=14413 Firefox : 
https://bugzilla.mozilla.org/show_bug.cgi?id=386269

-

Commit messages:
 - 8169501: GIF animation is too fast

Changes: https://git.openjdk.java.net/jfx/pull/221/files
 Webrev: https://webrevs.openjdk.java.net/jfx/221/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8169501
  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jfx/pull/221.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/221/head:pull/221

PR: https://git.openjdk.java.net/jfx/pull/221


RFR: 8181775: JavaFX WebView does not calculate border-radius properly

2020-05-14 Thread Bhawesh Choudhary
root cause of issue is prism's fillRoundedRect() API doesn't allow rendering of 
rounded corner rectangle if four
corners have different radii. but same can be achieved via Path. to fix the 
issue, in GraphicsContextJava.cpp while
rendering fillRoundedRect, check if all four corners have same radii. if yes, 
use FILL_ROUNDED_RECT to draw it
otherwise construct a path from given rounded rect and draw it.

-

Commit messages:
 - Formatting (File Mode Attribute change)
 - 8181775: JavaFX WebView does not calculate border-radius properly

Changes: https://git.openjdk.java.net/jfx/pull/218/files
 Webrev: https://webrevs.openjdk.java.net/jfx/218/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8181775
  Stats: 104 lines in 2 files changed: 95 ins; 0 del; 9 mod
  Patch: https://git.openjdk.java.net/jfx/pull/218.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/218/head:pull/218

PR: https://git.openjdk.java.net/jfx/pull/218


Re: [Rev 02] RFR: 8218973: SVG with masking is not rendering image with mask effect

2020-05-10 Thread Bhawesh Choudhary
On Fri, 8 May 2020 23:37:51 GMT, Kevin Rushforth  wrote:

>> Bhawesh Choudhary has updated the pull request incrementally with one 
>> additional commit since the last revision:
>> 
>>   Moved Printing drawing path to non MaskTextureGraphics interface
>
> modules/javafx.web/src/main/java/com/sun/javafx/webkit/prism/WCGraphicsPrismContext.java
>  line 566:
> 
>> 565: filterContext = 
>> PrFilterContext.getInstance(screen);
>> 566: }
>> 567: PrDrawable imagePrDrawable = 
>> PrDrawable.create(filterContext, paintRtTexture);
> 
> Did you test both the SW pipeline and printing paths?

Yes, used -Dprism.order=sw to run HelloWebView test to verify SW Pipeline
Yes, i have added a modified HelloWebView test in attached bug which is used to 
test printing paths.
https://bugs.openjdk.java.net/secure/attachment/88102/HelloWebView.java

-

PR: https://git.openjdk.java.net/jfx/pull/213


Re: [Rev 02] RFR: 8218973: SVG with masking is not rendering image with mask effect

2020-05-10 Thread Bhawesh Choudhary
On Fri, 8 May 2020 23:25:18 GMT, Kevin Rushforth  wrote:

>> Bhawesh Choudhary has updated the pull request incrementally with one 
>> additional commit since the last revision:
>> 
>>   Moved Printing drawing path to non MaskTextureGraphics interface
>
> modules/javafx.web/src/main/java/com/sun/javafx/webkit/prism/WCGraphicsPrismContext.java
>  line 549:
> 
>> 548: Texture.WrapMode.CLAMP_NOT_NEEDED);
>> 549: RTTexture maskRtTexture = 
>> g.getResourceFactory().createRTTexture(nativeMaskImage.getWidth(),
>> 550: nativeMaskImage.getHeight(), 
>> Texture.WrapMode.CLAMP_NOT_NEEDED);
> 
> Why do you need to create a second RTT here? I would have thought you could 
> use the mask texture directly (you may need
> to scale the image in order to do that).

main problem with not using second RTTexture is the interface 
MaskTextureGraphics, which accept RTTexture only. also it
difficult to add new API taking Texture instead of RTTexture given that SW 
Pipeline and J2D pipeline has direct
dependency on RTTexture interface.

-

PR: https://git.openjdk.java.net/jfx/pull/213


Re: [Rev 02] RFR: 8218973: SVG with masking is not rendering image with mask effect

2020-05-10 Thread Bhawesh Choudhary
> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  Moved Printing drawing path to non MaskTextureGraphics interface

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/213/files
  - new: https://git.openjdk.java.net/jfx/pull/213/files/e66fa3bc..5b85b47d

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/213/webrev.02
 - incr: https://webrevs.openjdk.java.net/jfx/213/webrev.01-02

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


Re: [Rev 01] RFR: 8218973: SVG with masking is not rendering image with mask effect

2020-05-10 Thread Bhawesh Choudhary
> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp 
> in WebKit was not implemented, so masking
> doesn't take place at all while rendering SVGRect. to fix this issue add 
> implementation of function clipToImageBuffer()
> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java 
>  While rendering in
> WCGraphicsPrismContext.java if image clip mask is available, use it for 
> rendering using MaskTextureGraphics interface
> otherwise use usual way of rendering.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  added dispose of resources

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/213/files
  - new: https://git.openjdk.java.net/jfx/pull/213/files/c2729a9c..e66fa3bc

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/213/webrev.01
 - incr: https://webrevs.openjdk.java.net/jfx/213/webrev.00-01

  Stats: 3 lines in 1 file changed: 3 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


RFR: 8218973: SVG with masking is not rendering image with mask effect

2020-05-07 Thread Bhawesh Choudhary
Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp in 
WebKit was not implemented, so masking
doesn't take place at all while rendering SVGRect. to fix this issue add 
implementation of function clipToImageBuffer()
in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java  
While rendering in
WCGraphicsPrismContext.java if image clip mask is available, use it for 
rendering using MaskTextureGraphics interface
otherwise use usual way of rendering.

-

Commit messages:
 - Formatting correction (Line Endings)
 - removed executable file mode
 - Added unit test + SW Graphics rendering part
 - Pixel scale issue fix
 - 8218973: SVG with masking is not rendering image with mask effect

Changes: https://git.openjdk.java.net/jfx/pull/213/files
 Webrev: https://webrevs.openjdk.java.net/jfx/213/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8218973
  Stats: 132 lines in 6 files changed: 130 ins; 0 del; 2 mod
  Patch: https://git.openjdk.java.net/jfx/pull/213.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/213/head:pull/213

PR: https://git.openjdk.java.net/jfx/pull/213


Re: [Integrated] RFR: 8191758: Match WebKit's font weight rendering with JavaFX

2020-04-30 Thread Bhawesh Choudhary
On Tue, 14 Apr 2020 10:25:52 GMT, Bhawesh Choudhary 
 wrote:

> As per JavaFx 700 font weight is considered to be bold but webkit is using 
> 600 font weight for text to become bold. to
> fix issue, use boldWeightValue() function which uses 700 font weight rather 
> than isFontWeightBold() which compare
> against 600 font weight.

This pull request has now been integrated.

Changeset: 8ad58052
Author:bhawesh 
Committer: Kevin Rushforth 
URL:   https://git.openjdk.java.net/jfx/commit/8ad58052
Stats: 26 lines in 2 files changed: 0 ins; 25 del; 1 mod

8191758: Match WebKit's font weight rendering with JavaFX

Reviewed-by: kcr, ajoseph

-

PR: https://git.openjdk.java.net/jfx/pull/180


Re: RFR: 8191758: Match WebKit's font weight rendering with JavaFX

2020-04-21 Thread Bhawesh Choudhary
On Fri, 17 Apr 2020 18:06:06 GMT, Phil Race  wrote:

>> Can you add a unit test to go along with this fix?
>
> Per the opentype spec, 700 is bold. 600 is semi-bold
> https://docs.microsoft.com/en-us/typography/opentype/spec/os2#usweightclass
> 
> CSS agrees : https://developer.mozilla.org/en-US/docs/Web/CSS/font-weight
> 
> So are you saying webkit has been using bold at a lower weight than these 
> specs suggest ?
> I see the logic all comes from 
> Source/WebCore/platform/graphics/FontSelectionAlgorithm.h
> 
> I suppose the existing code thinks that if we have reached what that file 
> calls the bold threshold of 600 then we
> should use bold. It isn't necessarily "wrong" but I think I agree that it is 
> more important to be consistent with the
> rest of Java FX ... which I believe is the point of this change ?

@prrace
yes, webkit is set to use 600 weight where javafx consider 700 weight for it to 
be consider bold.
https://docs.oracle.com/javafx/2/api/javafx/scene/text/FontWeight.html

-

PR: https://git.openjdk.java.net/jfx/pull/180


Re: [Rev 02] RFR: 8191758: Match WebKit's font weight rendering with JavaFX

2020-04-21 Thread Bhawesh Choudhary
> As per JavaFx 700 font weight is considered to be bold but webkit is using 
> 600 font weight for text to become bold. to
> fix issue, use boldWeightValue() function which uses 700 font weight rather 
> than isFontWeightBold() which compare
> against 600 font weight.

Bhawesh Choudhary has refreshed the contents of this pull request, and previous 
commits have been removed. The
incremental views will show differences compared to the previous content of the 
PR. The pull request contains one new
commit since the last revision:

  added unit test for jdk-8191758

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/180/files
  - new: https://git.openjdk.java.net/jfx/pull/180/files/43c7cbf1..f6fb1075

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/180/webrev.02
 - incr: https://webrevs.openjdk.java.net/jfx/180/webrev.01-02

  Stats: 0 lines in 0 files changed: 0 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/180.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/180/head:pull/180

PR: https://git.openjdk.java.net/jfx/pull/180


Re: [Rev 01] RFR: 8191758: Match WebKit's font weight rendering with JavaFX

2020-04-21 Thread Bhawesh Choudhary
> As per JavaFx 700 font weight is considered to be bold but webkit is using 
> 600 font weight for text to become bold. to
> fix issue, use boldWeightValue() function which uses 700 font weight rather 
> than isFontWeightBold() which compare
> against 600 font weight.

Bhawesh Choudhary has updated the pull request incrementally with one 
additional commit since the last revision:

  added unit test for 8191758

-

Changes:
  - all: https://git.openjdk.java.net/jfx/pull/180/files
  - new: https://git.openjdk.java.net/jfx/pull/180/files/d3d3e716..43c7cbf1

Webrevs:
 - full: https://webrevs.openjdk.java.net/jfx/180/webrev.01
 - incr: https://webrevs.openjdk.java.net/jfx/180/webrev.00-01

  Stats: 25 lines in 1 file changed: 25 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jfx/pull/180.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/180/head:pull/180

PR: https://git.openjdk.java.net/jfx/pull/180


RFR: 8191758: Match WebKit's font weight rendering with JavaFX

2020-04-17 Thread Bhawesh Choudhary
As per JavaFx 700 font weight is considered to be bold but webkit is using 600 
font weight for text to become bold. to
fix issue, use boldWeightValue() function which uses 700 font weight rather 
than isFontWeightBold() which compare
against 600 font weight.

-

Commit messages:
 - 8191758: Match WebKit's font weight rendering with JavaFX

Changes: https://git.openjdk.java.net/jfx/pull/180/files
 Webrev: https://webrevs.openjdk.java.net/jfx/180/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8191758
  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jfx/pull/180.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/180/head:pull/180

PR: https://git.openjdk.java.net/jfx/pull/180