Re: [royale-asjs] 01/02: global point should ignore window scrolling

2018-06-02 Thread Harbs
Good point.

I’ll try to convert these to utility functions.

FWIW, The only difference is "- window.scrollX”.

I’m also pretty sure that the “older browser fallback” which is a major part of 
the code is not necessary. getBoundingClientRec() seems to be supported back 
through IE9.[1] We should probably clean out the “offset” code.

Harbs

[1]https://caniuse.com/#search=getBoundingClientRect 



> On Jun 1, 2018, at 7:22 PM, Alex Harui  wrote:
> 
> For PAYG, should we have a version of the API that worries about window 
> scrolling and one that doesn't?  If your app is designed not to scroll, I 
> would think you wouldn't have to pay for this extra code?
> 
> -Alex
> 
> On 6/1/18, 4:26 AM, "ha...@apache.org " 
> mailto:ha...@apache.org>> wrote:
> 
>This is an automated email from the ASF dual-hosted git repository.
> 
>harbs pushed a commit to branch develop
>in repository 
> https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitbox.apache.org%2Frepos%2Fasf%2Froyale-asjs.git=02%7C01%7Caharui%40adobe.com%7C85aafe13907e4728298508d5c7b28caa%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636634492071894168=upjYhaXnXu4zo0rSp731%2ByM89crQMlK%2BothTSTXQlqA%3D=0
>  
> 
> 
>commit e5328655b9991fe44b92c61d1b18aa7a4cc104b5
>Author: Harbs mailto:ha...@in-tools.com>>
>AuthorDate: Tue May 29 12:25:55 2018 +0300
> 
>global point should ignore window scrolling
>---
> .../royale/org/apache/royale/utils/PointUtils.as   | 28 
> +-
> 1 file changed, 17 insertions(+), 11 deletions(-)
> 
>diff --git 
> a/frameworks/projects/Core/src/main/royale/org/apache/royale/utils/PointUtils.as
>  
> b/frameworks/projects/Core/src/main/royale/org/apache/royale/utils/PointUtils.as
>index 264102c..f96e61c 100644
>--- 
> a/frameworks/projects/Core/src/main/royale/org/apache/royale/utils/PointUtils.as
>+++ 
> b/frameworks/projects/Core/src/main/royale/org/apache/royale/utils/PointUtils.as
>@@ -71,18 +71,24 @@ package org.apache.royale.utils
> var x:Number = pt.x;
> var y:Number = pt.y;
> var element:HTMLElement = local.element as HTMLElement;
>+  if ( element.getBoundingClientRect ) {// TODO 
> take scrollbar widths into account
>+  var rect:Object = 
> element.getBoundingClientRect();
>+  x = x - rect.left - window.scrollX;
>+  y = y - rect.top - window.scrollY;
>+  } else { // for older browsers, but 
> offsetParent is soon to be deprecated from chrome
> 
>-do {
>-x -= element.offsetLeft;
>-y -= element.offsetTop;
>-  if (local['parent'] !== undefined) {
>-local = local.parent;
>-element = local ? local.element as HTMLElement : 
> null;
>-} else {
>-element = null;
>+do {
>+x -= element.offsetLeft;
>+y -= element.offsetTop;
>+if (local['parent'] !== undefined) {
>+local = local.parent;
>+element = local ? local.element as 
> HTMLElement : null;
>+} else {
>+element = null;
>+}
> }
>+while (element);
> }
>-while (element);
> return new org.apache.royale.geom.Point(x, y);
> 
> }
>@@ -119,8 +125,8 @@ package org.apache.royale.utils
> 
>   if ( element.getBoundingClientRect ) {// TODO 
> take scrollbar widths into account
>   var rect:Object = 
> element.getBoundingClientRect();
>-  x = rect.left + x;
>-  y = rect.top + y;
>+  x = rect.left + x + window.scrollX;
>+  y = rect.top + y + window.scrollY;
>   } else { // for older browsers, but 
> offsetParent is soon to be deprecated from from chrome
>   do {
>   x += element.offsetLeft;
> 
>-- 
>To stop receiving notification emails like this 

Re: [royale-asjs] 01/02: global point should ignore window scrolling

2018-06-01 Thread Alex Harui
For PAYG, should we have a version of the API that worries about window 
scrolling and one that doesn't?  If your app is designed not to scroll, I would 
think you wouldn't have to pay for this extra code?

-Alex

On 6/1/18, 4:26 AM, "ha...@apache.org"  wrote:

This is an automated email from the ASF dual-hosted git repository.

harbs pushed a commit to branch develop
in repository 
https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitbox.apache.org%2Frepos%2Fasf%2Froyale-asjs.git=02%7C01%7Caharui%40adobe.com%7C85aafe13907e4728298508d5c7b28caa%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636634492071894168=upjYhaXnXu4zo0rSp731%2ByM89crQMlK%2BothTSTXQlqA%3D=0

commit e5328655b9991fe44b92c61d1b18aa7a4cc104b5
Author: Harbs 
AuthorDate: Tue May 29 12:25:55 2018 +0300

global point should ignore window scrolling
---
 .../royale/org/apache/royale/utils/PointUtils.as   | 28 
+-
 1 file changed, 17 insertions(+), 11 deletions(-)

diff --git 
a/frameworks/projects/Core/src/main/royale/org/apache/royale/utils/PointUtils.as
 
b/frameworks/projects/Core/src/main/royale/org/apache/royale/utils/PointUtils.as
index 264102c..f96e61c 100644
--- 
a/frameworks/projects/Core/src/main/royale/org/apache/royale/utils/PointUtils.as
+++ 
b/frameworks/projects/Core/src/main/royale/org/apache/royale/utils/PointUtils.as
@@ -71,18 +71,24 @@ package org.apache.royale.utils
 var x:Number = pt.x;
 var y:Number = pt.y;
 var element:HTMLElement = local.element as HTMLElement;
+   if ( element.getBoundingClientRect ) {// TODO 
take scrollbar widths into account
+   var rect:Object = 
element.getBoundingClientRect();
+   x = x - rect.left - window.scrollX;
+   y = y - rect.top - window.scrollY;
+   } else { // for older browsers, but 
offsetParent is soon to be deprecated from chrome
 
-do {
-x -= element.offsetLeft;
-y -= element.offsetTop;
-   if (local['parent'] !== undefined) {
-local = local.parent;
-element = local ? local.element as HTMLElement : 
null;
-} else {
-element = null;
+do {
+x -= element.offsetLeft;
+y -= element.offsetTop;
+if (local['parent'] !== undefined) {
+local = local.parent;
+element = local ? local.element as HTMLElement 
: null;
+} else {
+element = null;
+}
 }
+while (element);
 }
-while (element);
 return new org.apache.royale.geom.Point(x, y);
 
 }
@@ -119,8 +125,8 @@ package org.apache.royale.utils
 
if ( element.getBoundingClientRect ) {// TODO 
take scrollbar widths into account
var rect:Object = 
element.getBoundingClientRect();
-   x = rect.left + x;
-   y = rect.top + y;
+   x = rect.left + x + window.scrollX;
+   y = rect.top + y + window.scrollY;
} else { // for older browsers, but 
offsetParent is soon to be deprecated from from chrome
do {
x += element.offsetLeft;

-- 
To stop receiving notification emails like this one, please contact
ha...@apache.org.