You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ha...@apache.org on 2017/07/23 11:30:45 UTC
flex-asjs git commit: A bit messy and there’s no way to currently set coordinates on MouseEvents in HTML (is that needed?), but this fixes mouse event coordinates from going bonkers.
Repository: flex-asjs
Updated Branches:
refs/heads/feature/browser-event 76dd35ce4 -> 5224af3ff
A bit messy and there’s no way to currently set coordinates on MouseEvents in HTML (is that needed?), but this fixes mouse event coordinates from going bonkers.
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/5224af3f
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/5224af3f
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/5224af3f
Branch: refs/heads/feature/browser-event
Commit: 5224af3ffb85c475ec9d2f5e586efc51175061f5
Parents: 76dd35c
Author: Harbs <ha...@in-tools.com>
Authored: Sun Jul 23 14:30:41 2017 +0300
Committer: Harbs <ha...@in-tools.com>
Committed: Sun Jul 23 14:30:41 2017 +0300
----------------------------------------------------------------------
.../projects/Core/src/main/flex/CoreClasses.as | 1 +
.../flex/org/apache/flex/events/BrowserEvent.as | 11 +-
.../org/apache/flex/events/KeyboardEvent.as | 5 +-
.../flex/org/apache/flex/events/MouseEvent.as | 105 ++++++++++---------
.../flex/events/utils/MouseEventConverter.as | 4 +-
5 files changed, 59 insertions(+), 67 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5224af3f/frameworks/projects/Core/src/main/flex/CoreClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/CoreClasses.as b/frameworks/projects/Core/src/main/flex/CoreClasses.as
index fd6c8a2..25a2c13 100644
--- a/frameworks/projects/Core/src/main/flex/CoreClasses.as
+++ b/frameworks/projects/Core/src/main/flex/CoreClasses.as
@@ -179,6 +179,7 @@ internal class CoreClasses
import org.apache.flex.utils.JXON; JXON;
import org.apache.flex.utils.MD5; MD5;
import org.apache.flex.utils.OSUtils; OSUtils;
+ import org.apache.flex.utils.PointUtils; PointUtils;
import org.apache.flex.utils.StringPadder; StringPadder;
import org.apache.flex.utils.StringTrimmer; StringTrimmer;
import org.apache.flex.utils.StringUtil; StringUtil;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5224af3f/frameworks/projects/Core/src/main/flex/org/apache/flex/events/BrowserEvent.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/BrowserEvent.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/events/BrowserEvent.as
index b0ec5b8..9bcad2e 100644
--- a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/BrowserEvent.as
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/events/BrowserEvent.as
@@ -353,16 +353,7 @@ package org.apache.flex.events
*/
public function get relatedTarget():Object
{
- var o:Object = wrappedEvent.relatedTarget;
-
- if (o)
- {
- if (o.flexjs_wrapper)
- return o.flexjs_wrapper;
- if (o.parentNode && o.parentNode.flexjs_wrapper)
- return o.parentNode.flexjs_wrapper;
- }
- return o;
+ return getTargetWrapper(wrappedEvent.relatedTarget);
}
/**
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5224af3f/frameworks/projects/Core/src/main/flex/org/apache/flex/events/KeyboardEvent.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/KeyboardEvent.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/events/KeyboardEvent.as
index f60110f..cf9109a 100644
--- a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/KeyboardEvent.as
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/events/KeyboardEvent.as
@@ -21,6 +21,7 @@ package org.apache.flex.events
COMPILE::JS
{
import goog.events.BrowserEvent;
+ import org.apache.flex.events.Event;
}
import org.apache.flex.events.IBrowserEvent;
@@ -78,7 +79,7 @@ package org.apache.flex.events
COMPILE::JS
public function get target():Object
{
- return wrappedEvent ? getTargetWrapper(wrappedEvent.target) : super.target;
+ return wrappedEvent ? getTargetWrapper(wrappedEvent.target) : null;
}
/**
@@ -92,7 +93,7 @@ package org.apache.flex.events
COMPILE::JS
public function get currentTarget():Object
{
- return wrappedEvent ? getTargetWrapper(wrappedEvent.currentTarget) : super.currentTarget;
+ return wrappedEvent ? getTargetWrapper(wrappedEvent.currentTarget) : null;
}
private var _key:String;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5224af3f/frameworks/projects/Core/src/main/flex/org/apache/flex/events/MouseEvent.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/MouseEvent.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/events/MouseEvent.as
index 1296065..37ec839 100644
--- a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/MouseEvent.as
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/events/MouseEvent.as
@@ -27,8 +27,9 @@ package org.apache.flex.events
COMPILE::JS
{
import window.MouseEvent;
- import org.apache.flex.events.utils.EventUtils;
import goog.events.BrowserEvent;
+ import org.apache.flex.events.Event;
+ import org.apache.flex.events.utils.EventUtils;
}
import org.apache.flex.core.IFlexJSElement;
@@ -243,8 +244,8 @@ package org.apache.flex.events
{
super(type, bubbles, cancelable);
- this.localX = localX;
- this.localY = localY;
+ // this.localX = localX;
+ // this.localY = localY;
this.relatedObject = relatedObject;
this.ctrlKey = ctrlKey;
this.altKey = altKey;
@@ -259,37 +260,13 @@ package org.apache.flex.events
/**
* @type {?goog.events.BrowserEvent}
*/
- COMPILE::JS
private var wrappedEvent:Object;
- COMPILE::JS
public function wrapEvent(event:goog.events.BrowserEvent):void
{
wrappedEvent = event;
}
- private var _localX:Number;
- public function get localX():Number
- {
- return _localX;
- }
- public function set localX(value:Number):void
- {
- _localX = value;
- _stagePoint = null;
- }
-
- private var _localY:Number;
- public function get localY():Number
- {
- return _localY;
- }
- public function set localY(value:Number):void
- {
- _localY = value;
- _stagePoint = null;
- }
-
public var relatedObject:Object;
public var ctrlKey:Boolean;
public var altKey:Boolean;
@@ -337,7 +314,7 @@ package org.apache.flex.events
*/
public function get target():Object
{
- return wrappedEvent ? getTargetWrapper(wrappedEvent.target) : super.target;
+ return wrappedEvent ? getTargetWrapper(wrappedEvent.target) : null;
}
/**
@@ -350,7 +327,7 @@ package org.apache.flex.events
*/
public function get currentTarget():Object
{
- return wrappedEvent ? getTargetWrapper(wrappedEvent.currentTarget) : super.currentTarget;
+ return wrappedEvent ? getTargetWrapper(wrappedEvent.currentTarget) : null;
}
// TODO remove this when figure out how to preserve the real target
@@ -359,46 +336,70 @@ package org.apache.flex.events
{
return target;
}
- // these map directly to JS MouseEvent fields.
+ /**
+ * X-coordinate relative to the window.
+ * @type {number}
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
public function get clientX():Number
{
- return screenX;
+ return wrappedEvent.clientX;
}
- public function set clientX(value:Number):void
+
+ public function get localX():Number
{
- localX = value;
+ return clientX;
}
+
+ /**
+ * Y-coordinate relative to the window.
+ * @type {number}
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
public function get clientY():Number
{
- return screenY;
+ return wrappedEvent.clientY;
}
- public function set clientY(value:Number):void
+
+ public function get localY():Number
{
- localY = value;
+ return clientY;
}
- private var _stagePoint:Point;
-
+ /**
+ * X-coordinate relative to the monitor.
+ * @type {number}
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
public function get screenX():Number
{
- if (!target) return localX;
- if (!_stagePoint)
- {
- var localPoint:Point = new Point(localX, localY);
- _stagePoint = PointUtils.localToGlobal(localPoint, target);
- }
- return _stagePoint.x;
+ return wrappedEvent.screenX;
}
+ /**
+ * Y-coordinate relative to the monitor.
+ * @type {number}
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
public function get screenY():Number
{
- if (!target) return localY;
- if (!_stagePoint)
- {
- var localPoint:Point = new Point(localX, localY);
- _stagePoint = PointUtils.localToGlobal(localPoint, target);
- }
- return _stagePoint.y;
+ return wrappedEvent.screenY;
}
/**
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/5224af3f/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/MouseEventConverter.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/MouseEventConverter.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/MouseEventConverter.as
index b98177d..5cd5c90 100644
--- a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/MouseEventConverter.as
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/MouseEventConverter.as
@@ -179,9 +179,7 @@ package org.apache.flex.events.utils
{
public static function convert(nativeEvent:Object):MouseEvent
{
- return new MouseEvent(nativeEvent["type"], true, false,
- nativeEvent["clientX"], nativeEvent["clientY"], null,
- nativeEvent["ctrlKey"], nativeEvent["altKey"], nativeEvent["shiftKey"]);
+ return new MouseEvent(nativeEvent["type"], nativeEvent["bubbles"], nativeEvent["cancelable"]);
}
}