Project

General

Profile

chrome_images_issue_1.txt

Sergey Ivanovskiy, 12/15/2015 05:38 PM

Download (2.29 KB)

 
1
=== modified file 'src/com/goldencode/p2j/ui/client/driver/web/res/p2j.js'
2
--- src/com/goldencode/p2j/ui/client/driver/web/res/p2j.js	2015-12-15 19:53:13 +0000
3
+++ src/com/goldencode/p2j/ui/client/driver/web/res/p2j.js	2015-12-15 22:28:24 +0000
4
@@ -20,7 +20,7 @@
5
 ** 007 SBI 20150901 Modifications to initialization order.
6
 ** 008 SBI 20151020 Increased logging buffer size.
7
 ** 009 SBI 20151215 Fixed to take into an account that for Chrome an element style object has only
8
-**                  the "getter" access function. 
9
+**                  the "getter" access function. Changed to detect Chrome. 
10
 */
11
 
12
 "use strict";
13
@@ -53,8 +53,8 @@
14
 
15
    /** Browser detection flags. */
16
    me.isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') > -1;
17
-   me.isChromium = navigator.userAgent.toLowerCase().indexOf('chromium') > -1;
18
-   me.isChrome = !!window.chrome;
19
+   me.isChrome   = navigator.userAgent.toLowerCase().indexOf('chrome') > -1;
20
+   me.isChromium = !!window.chrome;
21
    me.isIe = !!window.ActiveXObject;
22
    
23
    /** The default container element (if specified), or <code>document.body</code>. */
24

    
25
=== modified file 'src/com/goldencode/p2j/ui/client/gui/driver/web/res/p2j.canvas_renderer.js'
26
--- src/com/goldencode/p2j/ui/client/gui/driver/web/res/p2j.canvas_renderer.js	2015-12-09 13:24:04 +0000
27
+++ src/com/goldencode/p2j/ui/client/gui/driver/web/res/p2j.canvas_renderer.js	2015-12-15 22:32:04 +0000
28
@@ -18,6 +18,8 @@
29
 ** 004 SBI 20151125 Move clipping logic from putImageData to drawing primitives: drawImage and
30
 **                  drawLineSegment.
31
 ** 005 SBI 20151205 Changed to adjust clipping regions according to a new origin.
32
+** 006 SBI 20151216 Changed to work around that the Chrome's implementation of getImageData
33
+**                  rounds function parameters.
34
 */
35
 
36
 "use strict";
37
@@ -781,7 +783,15 @@
38
     * Pixels must be returned as non-premultiplied alpha values according to:
39
     * http://www.w3.org/TR/2dcontext/#pixel-manipulation
40
     */
41
-   var img = ctx.getImageData(xo, yo, width, height);
42
+   var img;
43
+   if (p2j.isChrome)
44
+   {
45
+      img = ctx.getImageData(Math.round(xo), Math.round(yo), width, height);
46
+   }
47
+   else
48
+   {
49
+      img = ctx.getImageData(xo, yo, width, height);
50
+   }
51
    var data = img.data;
52
    var pixelsInBytes = width * height * 4;
53
    var offset = imgDataOffset;
54