You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ah...@apache.org on 2015/01/06 00:21:20 UTC
[01/16] git commit: [flex-asjs] [refs/heads/develop] - type cast so
getters and setters are used
Repository: flex-asjs
Updated Branches:
refs/heads/develop c7099238d -> c375ffd25
type cast so getters and setters are used
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/4b9f33c4
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/4b9f33c4
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/4b9f33c4
Branch: refs/heads/develop
Commit: 4b9f33c4ea1467f2ceeaf3e38477cf81bab5b3ad
Parents: faed8de
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 10:08:47 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:20:59 2015 -0800
----------------------------------------------------------------------
examples/FlexJSStore/src/productsView/ProductList.mxml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/4b9f33c4/examples/FlexJSStore/src/productsView/ProductList.mxml
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/productsView/ProductList.mxml b/examples/FlexJSStore/src/productsView/ProductList.mxml
index 2d54ed7..b15c22f 100755
--- a/examples/FlexJSStore/src/productsView/ProductList.mxml
+++ b/examples/FlexJSStore/src/productsView/ProductList.mxml
@@ -115,7 +115,7 @@ limitations under the License.
var ret:Array = [];
for (var i:int = 0; i < items.length; i++)
{
- ret[i] = items[i].product;
+ ret[i] = ProductListItem(items[i]).product;
}
return ret;
}
@@ -182,7 +182,7 @@ limitations under the License.
var n:int = items.length;
for (var i:int = 0; i < items.length; i++)
{
- if (items[i].product.productId == productId)
+ if (ProductListItem(items[i]).product.productId == productId)
{
index = i;
break;
[13/16] git commit: [flex-asjs] [refs/heads/develop] - when
dispatching some events,
target doesn't get set so fallback to using currentTarget which seems to work
for now
Posted by ah...@apache.org.
when dispatching some events, target doesn't get set so fallback to using currentTarget which seems to work for now
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/98487bfc
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/98487bfc
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/98487bfc
Branch: refs/heads/develop
Commit: 98487bfc74e24ca43957c363c9fa27190d66bd7e
Parents: 7487a05
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 14:28:32 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:02 2015 -0800
----------------------------------------------------------------------
.../js/FlexJS/src/org/apache/flex/core/HTMLElementWrapper.js | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/98487bfc/frameworks/js/FlexJS/src/org/apache/flex/core/HTMLElementWrapper.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/core/HTMLElementWrapper.js b/frameworks/js/FlexJS/src/org/apache/flex/core/HTMLElementWrapper.js
index 4eca663..be0426a 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/core/HTMLElementWrapper.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/core/HTMLElementWrapper.js
@@ -138,8 +138,10 @@ org.apache.flex.core.HTMLElementWrapper.prototype.removeBead = function(bead) {
* @return {Object} The wrapping object.
*/
Event.prototype.get_target = function() {
- var obj = this.target.flexjs_wrapper;
- return obj;
+ var obj = this.target;
+ if (!obj)
+ return this.currentTarget;
+ return obj.flexjs_wrapper;
};
[09/16] git commit: [flex-asjs] [refs/heads/develop] - dispatch
certain events from the element
Posted by ah...@apache.org.
dispatch certain events from the element
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/726e1cdf
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/726e1cdf
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/726e1cdf
Branch: refs/heads/develop
Commit: 726e1cdf80779a80c4ef1fc9f79f215453177a2a
Parents: 03d6279
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 10:15:35 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:01 2015 -0800
----------------------------------------------------------------------
frameworks/js/FlexJS/src/org/apache/flex/html/Button.js | 12 ++++++++++++
1 file changed, 12 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/726e1cdf/frameworks/js/FlexJS/src/org/apache/flex/html/Button.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/html/Button.js b/frameworks/js/FlexJS/src/org/apache/flex/html/Button.js
index 671c7d2..ab9f3b9 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/html/Button.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/html/Button.js
@@ -58,3 +58,15 @@ org.apache.flex.html.Button.prototype.createElement =
return this.element;
};
+
+/**
+ * @override
+ * Buttons dispatch events off the element.
+ */
+org.apache.flex.html.Button.prototype.dispatchEvent =
+ function(e) {
+ if (this.element && typeof(e) != 'string')
+ return this.element.dispatchEvent(e);
+ return org.apache.flex.html.Button.base(this, 'dispatchEvent', e);
+};
+
[03/16] git commit: [flex-asjs] [refs/heads/develop] - fix
backgroundImage handling
Posted by ah...@apache.org.
fix backgroundImage handling
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/693d4e6b
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/693d4e6b
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/693d4e6b
Branch: refs/heads/develop
Commit: 693d4e6ba93db6ac0a0113d58293ffc08fc18861
Parents: 17da25b
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 10:12:30 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:00 2015 -0800
----------------------------------------------------------------------
.../js/FlexJS/src/org/apache/flex/core/SimpleCSSValuesImpl.js | 4 ++++
1 file changed, 4 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/693d4e6b/frameworks/js/FlexJS/src/org/apache/flex/core/SimpleCSSValuesImpl.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/core/SimpleCSSValuesImpl.js b/frameworks/js/FlexJS/src/org/apache/flex/core/SimpleCSSValuesImpl.js
index 25b953d..68ead66 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/core/SimpleCSSValuesImpl.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/core/SimpleCSSValuesImpl.js
@@ -306,6 +306,10 @@ org.apache.flex.core.SimpleCSSValuesImpl.prototype.applyStyles =
else
value = value.toString() + 'px';
}
+ else if (p == 'backgroundImage') {
+ if (p.indexOf('url') !== 0)
+ value = 'url(' + value + ')';
+ }
thisObject.element.style[p] = value;
}
};
[16/16] git commit: [flex-asjs] [refs/heads/develop] - drag and drop
in JS
Posted by ah...@apache.org.
drag and drop in JS
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/c375ffd2
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/c375ffd2
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/c375ffd2
Branch: refs/heads/develop
Commit: c375ffd25be06c5477ed7f78e677b18c91888d57
Parents: 98487bf
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 14:29:18 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:03 2015 -0800
----------------------------------------------------------------------
.../src/productsView/ProductCatalogPanel.mxml | 4 +-
.../src/productsView/ProductList.mxml | 2 +-
.../beads/controllers/DragMouseController.as | 47 +++----------
.../beads/controllers/DropMouseController.as | 37 +++++------
.../src/org/apache/flex/events/DragEvent.as | 69 +++++++++++++++-----
.../src/org/apache/flex/events/DragEvent.js | 68 ++++++++++++-------
6 files changed, 125 insertions(+), 102 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c375ffd2/examples/FlexJSStore/src/productsView/ProductCatalogPanel.mxml
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/productsView/ProductCatalogPanel.mxml b/examples/FlexJSStore/src/productsView/ProductCatalogPanel.mxml
index 836b694..92e231a 100755
--- a/examples/FlexJSStore/src/productsView/ProductCatalogPanel.mxml
+++ b/examples/FlexJSStore/src/productsView/ProductCatalogPanel.mxml
@@ -133,14 +133,14 @@ limitations under the License.
if (DragMouseController.dragging == false)
{
var thumb:ProductCatalogThumbnail = event.target as ProductCatalogThumbnail;
- DragMouseController.dragSource = thumb.product;
+ DragEvent.dragSource = thumb.product;
var di:ProductCatalogThumbnail = new ProductCatalogThumbnail();
di.product = thumb.product;
di.currentState = thumb.currentState;
DragMouseController.dragImage = di;
- DragMouseController.dragInitiator = this;
+ DragEvent.dragInitiator = this;
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c375ffd2/examples/FlexJSStore/src/productsView/ProductList.mxml
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/productsView/ProductList.mxml b/examples/FlexJSStore/src/productsView/ProductList.mxml
index b15c22f..8f44786 100755
--- a/examples/FlexJSStore/src/productsView/ProductList.mxml
+++ b/examples/FlexJSStore/src/productsView/ProductList.mxml
@@ -201,7 +201,7 @@ limitations under the License.
private function doDragDrop(event:DragEvent):void
{
trace("doDragDrop");
- var product:Product = event.dragSource as Product;
+ var product:Product = DragEvent.dragSource as Product;
addProduct(product);
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c375ffd2/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DragMouseController.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DragMouseController.as b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DragMouseController.as
index 321a91a..d9be00e 100644
--- a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DragMouseController.as
+++ b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DragMouseController.as
@@ -79,28 +79,6 @@ package org.apache.flex.html.beads.controllers
public class DragMouseController extends EventDispatcher implements IBead
{
/**
- * The data being dragged. Or an instance
- * of an object describing the data.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public static var dragSource:Object;
-
- /**
- * The object that wants to know if a
- * drop is accepted.
- *
- * @langversion 3.0
- * @playerversion Flash 10.2
- * @playerversion AIR 2.6
- * @productversion FlexJS 0.0
- */
- public static var dragInitiator:IDragInitiator;
-
- /**
* Whether there is a drag operation
* in progress.
*
@@ -228,10 +206,9 @@ package org.apache.flex.html.beads.controllers
Math.abs(event.screenY - mouseDownY) > threshold)
{
trace("sending dragStart");
- dragEvent = new DragEvent("dragStart", true, true);
- dragEvent.copyMouseEventProperties(event);
- IEventDispatcher(_strand).dispatchEvent(dragEvent);
- if (dragSource != null)
+ dragEvent = DragEvent.createDragEvent("dragStart", event);
+ DragEvent.dispatchDragEvent(dragEvent, IEventDispatcher(_strand));
+ if (DragEvent.dragSource != null)
{
dragging = true;
host = UIUtils.findPopUpHost(_strand as IUIBase);
@@ -245,14 +222,11 @@ package org.apache.flex.html.beads.controllers
else
{
trace("sending dragMove", event.target);
- dragEvent = new DragEvent("dragMove", true, true);
- dragEvent.copyMouseEventProperties(event);
- dragEvent.dragSource = dragSource;
- dragEvent.dragInitiator = dragInitiator;
+ dragEvent = DragEvent.createDragEvent("dragMove", event);
pt = PointUtils.globalToLocal(new Point(event.screenX, event.screenY), host);
dragImage.x = pt.x + dragImageOffsetX;
dragImage.y = pt.y + dragImageOffsetY;
- event.target.dispatchEvent(dragEvent);
+ DragEvent.dispatchDragEvent(dragEvent, IEventDispatcher(event.target));
}
}
@@ -264,15 +238,12 @@ package org.apache.flex.html.beads.controllers
if (dragging)
{
trace("sending dragEnd");
- dragEvent = new DragEvent("dragEnd", true, true);
- dragEvent.copyMouseEventProperties(event);
- dragEvent.dragSource = dragSource;
- dragEvent.dragInitiator = dragInitiator;
- event.target.dispatchEvent(dragEvent);
+ dragEvent = DragEvent.createDragEvent("dragEnd", event);
+ DragEvent.dispatchDragEvent(dragEvent, IEventDispatcher(event.target));
}
dragging = false;
- dragSource = null;
- dragInitiator = null;
+ DragEvent.dragSource = null;
+ DragEvent.dragInitiator = null;
if (dragImage && host)
host.removeElement(dragImage);
dragImage = null;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c375ffd2/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DropMouseController.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DropMouseController.as b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DropMouseController.as
index 1b32f31..03afba6 100644
--- a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DropMouseController.as
+++ b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DropMouseController.as
@@ -51,6 +51,17 @@ package org.apache.flex.html.beads.controllers
[Event(name="dragOver", type="org.apache.flex.events.DragEvent")]
/**
+ * Indicates that the mouse is moving out of a component during
+ * a drag/drop operation.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ [Event(name="dragExit", type="org.apache.flex.events.DragEvent")]
+
+ /**
* Indicates that a drop operation should be executed.
*
* @langversion 3.0
@@ -126,10 +137,7 @@ package org.apache.flex.html.beads.controllers
var dragEvent:DragEvent;
if (!inside)
{
- dragEvent = new DragEvent("dragEnter", true, true);
- dragEvent.copyMouseEventProperties(event);
- dragSource = dragEvent.dragSource = event.dragSource;
- dragInitiator = dragEvent.dragInitiator = event.dragInitiator;
+ dragEvent = DragEvent.createDragEvent("dragEnter", event);
dispatchEvent(dragEvent);
inside = true;
IUIBase(_strand).topMostEventDispatcher.addEventListener(DragEvent.DRAG_END, dragEndHandler);
@@ -137,11 +145,8 @@ package org.apache.flex.html.beads.controllers
}
else
{
- dragEvent = new DragEvent("dragOver", true, true);
- dragEvent.copyMouseEventProperties(event);
- dragEvent.dragSource = event.dragSource;
- dragEvent.dragInitiator = event.dragInitiator;
- IEventDispatcher(_strand).dispatchEvent(dragEvent);
+ dragEvent = DragEvent.createDragEvent("dragOver", event);
+ dispatchEvent(dragEvent);
}
}
@@ -151,12 +156,7 @@ package org.apache.flex.html.beads.controllers
if (inside)
{
- dragEvent = new DragEvent("dragExit", true, true);
- dragEvent.copyMouseEventProperties(event);
- dragEvent.dragSource = dragSource;
- dragEvent.dragInitiator = dragInitiator;
- dragSource = null;
- dragInitiator = null;
+ dragEvent = DragEvent.createDragEvent("dragExit", event);
dispatchEvent(dragEvent);
inside = false;
}
@@ -169,12 +169,7 @@ package org.apache.flex.html.beads.controllers
trace("dragEnd");
var dragEvent:DragEvent;
- dragEvent = new DragEvent("dragDrop", true, true);
- dragEvent.copyMouseEventProperties(event);
- dragEvent.dragSource = event.dragSource;
- dragEvent.dragInitiator = event.dragInitiator;
- dragSource = null;
- dragInitiator = null;
+ dragEvent = DragEvent.createDragEvent("dragDrop", event);
dispatchEvent(dragEvent);
inside = false;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c375ffd2/frameworks/as/projects/FlexJSUI/src/org/apache/flex/events/DragEvent.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/events/DragEvent.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/events/DragEvent.as
index 9b46dd5..406ad9d 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/events/DragEvent.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/events/DragEvent.as
@@ -228,7 +228,34 @@ package org.apache.flex.events
public static const DRAG_DROP:String = "dragDrop";
/**
- * Constructor.
+ * The object that wants to know if a drop is accepted
+ *
+ * @param type The name of the event.
+ * @param bubbles Whether the event bubbles.
+ * @param cancelable Whether the event can be canceled.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public static var dragInitiator:IDragInitiator;
+
+ /**
+ * The data being dragged. Or an instance
+ * of an object describing the data.
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion FlexJS 0.0
+ */
+ public static var dragSource:Object;
+
+
+ /**
+ * Constructor. Do not call 'new DragEvent', use the
+ * createDragEvent method instead.
*
* @param type The name of the event.
* @param bubbles Whether the event bubbles.
@@ -245,40 +272,46 @@ package org.apache.flex.events
}
/**
- * The object that wants to know if a drop is accepted
+ * Factory for DragEvents.
*
* @param type The name of the event.
- * @param bubbles Whether the event bubbles.
- * @param cancelable Whether the event can be canceled.
+ * @param event The MouseEvent properties to copy into the DragEvent.
+ * @return The new DragEvent.
*
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- public var dragInitiator:IDragInitiator;
+ public static function createDragEvent(type:String, event:MouseEvent):DragEvent
+ {
+ var de:DragEvent = new DragEvent(type, true, true);
+ de.localX = event.localX;
+ de.localY = event.localY;
+ de.altKey = event.altKey;
+ de.ctrlKey = event.ctrlKey;
+ de.shiftKey = event.shiftKey;
+ de.buttonDown = event.buttonDown;
+ de.delta = event.delta;
+ de.relatedObject = event.relatedObject;
+ return de;
+ }
+
/**
- * The data being dragged. Or an instance
- * of an object describing the data.
+ * Dispatch a DragEvent
*
+ * @param event The DragEvent to dispatch.
+ * @param target The target to dispatch the event from.
+ *
* @langversion 3.0
* @playerversion Flash 10.2
* @playerversion AIR 2.6
* @productversion FlexJS 0.0
*/
- public var dragSource:Object;
-
- public function copyMouseEventProperties(event:MouseEvent):void
+ public static function dispatchDragEvent(event:DragEvent, target:IEventDispatcher):void
{
- localX = event.localX;
- localY = event.localY;
- altKey = event.altKey;
- ctrlKey = event.ctrlKey;
- shiftKey = event.shiftKey;
- buttonDown = event.buttonDown;
- delta = event.delta;
- relatedObject = event.relatedObject;
+ target.dispatchEvent(event);
}
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/c375ffd2/frameworks/js/FlexJS/src/org/apache/flex/events/DragEvent.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/events/DragEvent.js b/frameworks/js/FlexJS/src/org/apache/flex/events/DragEvent.js
index 34395e4..648821a 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/events/DragEvent.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/events/DragEvent.js
@@ -14,6 +14,9 @@
goog.provide('org.apache.flex.events.DragEvent');
+goog.require('goog.events.BrowserEvent');
+goog.require('org.apache.flex.events.EventDispatcher');
+
/**
@@ -22,16 +25,16 @@ goog.provide('org.apache.flex.events.DragEvent');
* sent with additional properties like dragInitiator and
* dragSource tacked on.
*
- * @extends {MouseEvent}
+ * @extends {goog.events.BrowserEvent}
* @param {string} type The event type.
*/
org.apache.flex.events.DragEvent = function(type) {
- window.MouseEvent.base(this, 'constructor', type);
+ org.apache.flex.events.DragEvent.base(this, 'constructor');
this.type = type;
};
goog.inherits(org.apache.flex.events.DragEvent,
- window.MouseEvent);
+ goog.events.BrowserEvent);
/**
@@ -47,32 +50,32 @@ org.apache.flex.events.DragEvent.prototype.FLEXJS_CLASS_INFO =
/**
* @expose
* @param {string} type The event type.
+ * @param {Event} event The mouse event to base the DragEvent on.
+ * @return {MouseEvent} The new event.
*/
-org.apache.flex.events.DragEvent.prototype.init = function(type) {
- this.type = type;
+org.apache.flex.events.DragEvent.createDragEvent =
+ function(type, event) {
+ var out = new MouseEvent(type);
+ out.initMouseEvent(type, true, true);
+ out.screenX = event.screenX;
+ out.screenY = event.screenY;
+ out.clientX = event.clientX;
+ out.clientY = event.clientY;
+ out.ctrlKey = event.ctrlKey;
+ out.shiftKey = event.shiftKey;
+ out.alttKey = event.altKey;
+ return out;
};
/**
* @expose
- * @type {Object} dragInitiator The object that started the drag.
- */
-org.apache.flex.events.DragEvent.prototype.dragInitiator = null;
-
-
-/**
- * @expose
- * @type {Object} dragSource The data being dragged.
- */
-org.apache.flex.events.DragEvent.prototype.dragSource = null;
-
-
-/**
- * @expose
- * @param {MouseEvent} event The mouse event to copy.
+ * @param {Event} event The drag event.
+ * @param {Object} target The target for the event.
*/
-org.apache.flex.events.DragEvent.prototype.copyMouseEventProperties =
- function(event) {
+org.apache.flex.events.DragEvent.dispatchDragEvent =
+ function(event, target) {
+ target.element.dispatchEvent(event);
};
@@ -123,3 +126,24 @@ org.apache.flex.events.DragEvent.DRAG_EXIT = 'dragExit';
* @type {string} DRAG_DROP The event type for dropping on a target.
*/
org.apache.flex.events.DragEvent.DRAG_DROP = 'dragDrop';
+
+
+/**
+ * @return {boolean}
+ */
+org.apache.flex.events.DragEvent.installDragEventMixin = function() {
+ var o = org.apache.flex.events.EventDispatcher.elementEvents;
+ o.dragEnd = 1;
+ o.dragMove = 1;
+ return true;
+};
+
+
+/**
+ * Add some other events to listen from the element
+ */
+/**
+ * @type {boolean}
+ */
+org.apache.flex.events.DragEvent.dragEventMixin =
+ org.apache.flex.events.DragEvent.installDragEventMixin();
[04/16] git commit: [flex-asjs] [refs/heads/develop] - use screenXY
and clientXY
Posted by ah...@apache.org.
use screenXY and clientXY
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/17da25b1
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/17da25b1
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/17da25b1
Branch: refs/heads/develop
Commit: 17da25b19b681a992fe74030f2d133914a172757
Parents: 828d0b4
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 10:11:32 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:00 2015 -0800
----------------------------------------------------------------------
.../FlexJSUI/src/org/apache/flex/events/MouseEvent.as | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/17da25b1/frameworks/as/projects/FlexJSUI/src/org/apache/flex/events/MouseEvent.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/events/MouseEvent.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/events/MouseEvent.as
index dabdf35..ad54ddf 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/events/MouseEvent.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/events/MouseEvent.as
@@ -85,6 +85,7 @@ package org.apache.flex.events
public function set localX(value:Number):void
{
_localX = value;
+ clientX = value;
_stagePoint = null;
}
@@ -96,6 +97,7 @@ package org.apache.flex.events
public function set localY(value:Number):void
{
_localY = value;
+ clientY = value;
_stagePoint = null;
}
@@ -109,9 +111,13 @@ package org.apache.flex.events
public var controlKey:Boolean;
public var clickCount:int;
+ // these map directly to JS MouseEvent fields.
+ public var clientX:Number;
+ public var clientY:Number;
+
private var _stagePoint:Point;
- public function get stageX():Number
+ public function get screenX():Number
{
if (!target) return localX;
if (!_stagePoint)
@@ -122,7 +128,7 @@ package org.apache.flex.events
return _stagePoint.x;
}
- public function get stageY():Number
+ public function get screenY():Number
{
if (!target) return localY;
if (!_stagePoint)
[10/16] git commit: [flex-asjs] [refs/heads/develop] - listen for
mouse events from the element
Posted by ah...@apache.org.
listen for mouse events from the element
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/71df7b13
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/71df7b13
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/71df7b13
Branch: refs/heads/develop
Commit: 71df7b13cbbd525eae49201ec814c7525c665be0
Parents: 73f9b83
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 10:13:53 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:01 2015 -0800
----------------------------------------------------------------------
.../src/org/apache/flex/events/EventDispatcher.js | 15 +++++++++++++++
1 file changed, 15 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/71df7b13/frameworks/js/FlexJS/src/org/apache/flex/events/EventDispatcher.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/events/EventDispatcher.js b/frameworks/js/FlexJS/src/org/apache/flex/events/EventDispatcher.js
index 24c4ae2..fd11a82 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/events/EventDispatcher.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/events/EventDispatcher.js
@@ -59,6 +59,9 @@ org.apache.flex.events.EventDispatcher.prototype.addEventListener =
this.element.nodeName.toLowerCase() !== 'div' &&
this.element.nodeName.toLowerCase() !== 'body') {
source = this.element;
+ } else if (this.elementEvents[type]) {
+ // mouse and keyboard events also dispatch off the element.
+ source = this.element;
}
goog.events.listen(source, type, handler);
@@ -95,3 +98,15 @@ function(obj, propName, value) {
}
};
+
+/**
+ * @type {Object}
+ */
+org.apache.flex.events.EventDispatcher.prototype.elementEvents = {
+ mouseover: 1,
+ mouseout: 1,
+ mouseup: 1,
+ mousedown: 1,
+ mousemove: 1
+};
+
[06/16] git commit: [flex-asjs] [refs/heads/develop] - use screenXY
and don't use stopImmediateProp as it doesn't exist in google closure library
Posted by ah...@apache.org.
use screenXY and don't use stopImmediateProp as it doesn't exist in google closure library
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/828d0b4e
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/828d0b4e
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/828d0b4e
Branch: refs/heads/develop
Commit: 828d0b4ef59220955a487fc079407dddb3171d20
Parents: 22666df
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 10:10:30 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:00 2015 -0800
----------------------------------------------------------------------
.../html/beads/controllers/DragMouseController.as | 14 ++++++--------
.../html/beads/controllers/DropMouseController.as | 2 --
2 files changed, 6 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/828d0b4e/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DragMouseController.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DragMouseController.as b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DragMouseController.as
index 5cb5f54..321a91a 100644
--- a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DragMouseController.as
+++ b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DragMouseController.as
@@ -211,8 +211,8 @@ package org.apache.flex.html.beads.controllers
trace("dragMouseDown");
IUIBase(_strand).topMostEventDispatcher.addEventListener(MouseEvent.MOUSE_MOVE, dragMouseMoveHandler);
IUIBase(_strand).topMostEventDispatcher.addEventListener(MouseEvent.MOUSE_UP, dragMouseUpHandler);
- mouseDownX = event.stageX;
- mouseDownY = event.stageY;
+ mouseDownX = event.screenX;
+ mouseDownY = event.screenY;
}
private function dragMouseMoveHandler(event:MouseEvent):void
@@ -224,8 +224,8 @@ package org.apache.flex.html.beads.controllers
if (!dragging)
{
trace("not dragging anything else");
- if (Math.abs(event.stageX - mouseDownX) > threshold ||
- Math.abs(event.stageY - mouseDownY) > threshold)
+ if (Math.abs(event.screenX - mouseDownX) > threshold ||
+ Math.abs(event.screenY - mouseDownY) > threshold)
{
trace("sending dragStart");
dragEvent = new DragEvent("dragStart", true, true);
@@ -236,7 +236,7 @@ package org.apache.flex.html.beads.controllers
dragging = true;
host = UIUtils.findPopUpHost(_strand as IUIBase);
host.addElement(dragImage);
- pt = PointUtils.globalToLocal(new Point(event.stageX, event.stageY), host);
+ pt = PointUtils.globalToLocal(new Point(event.screenX, event.screenY), host);
dragImage.x = pt.x + dragImageOffsetX;
dragImage.y = pt.y + dragImageOffsetY;
}
@@ -246,11 +246,10 @@ package org.apache.flex.html.beads.controllers
{
trace("sending dragMove", event.target);
dragEvent = new DragEvent("dragMove", true, true);
- event.stopImmediatePropagation();
dragEvent.copyMouseEventProperties(event);
dragEvent.dragSource = dragSource;
dragEvent.dragInitiator = dragInitiator;
- pt = PointUtils.globalToLocal(new Point(event.stageX, event.stageY), host);
+ pt = PointUtils.globalToLocal(new Point(event.screenX, event.screenY), host);
dragImage.x = pt.x + dragImageOffsetX;
dragImage.y = pt.y + dragImageOffsetY;
event.target.dispatchEvent(dragEvent);
@@ -267,7 +266,6 @@ package org.apache.flex.html.beads.controllers
trace("sending dragEnd");
dragEvent = new DragEvent("dragEnd", true, true);
dragEvent.copyMouseEventProperties(event);
- event.stopImmediatePropagation();
dragEvent.dragSource = dragSource;
dragEvent.dragInitiator = dragInitiator;
event.target.dispatchEvent(dragEvent);
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/828d0b4e/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DropMouseController.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DropMouseController.as b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DropMouseController.as
index 82a277a..1b32f31 100644
--- a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DropMouseController.as
+++ b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/controllers/DropMouseController.as
@@ -157,7 +157,6 @@ package org.apache.flex.html.beads.controllers
dragEvent.dragInitiator = dragInitiator;
dragSource = null;
dragInitiator = null;
- event.stopImmediatePropagation();
dispatchEvent(dragEvent);
inside = false;
}
@@ -176,7 +175,6 @@ package org.apache.flex.html.beads.controllers
dragEvent.dragInitiator = event.dragInitiator;
dragSource = null;
dragInitiator = null;
- event.stopImmediatePropagation();
dispatchEvent(dragEvent);
inside = false;
[07/16] git commit: [flex-asjs] [refs/heads/develop] - implement
rollover support
Posted by ah...@apache.org.
implement rollover support
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/03d62793
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/03d62793
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/03d62793
Branch: refs/heads/develop
Commit: 03d6279302df429f295798f0a297c9babb45ded3
Parents: 71df7b1
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 10:14:45 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:01 2015 -0800
----------------------------------------------------------------------
.../src/org/apache/flex/events/MouseEvent.js | 110 ++++++++++++++++++-
1 file changed, 107 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/03d62793/frameworks/js/FlexJS/src/org/apache/flex/events/MouseEvent.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/events/MouseEvent.js b/frameworks/js/FlexJS/src/org/apache/flex/events/MouseEvent.js
index 95f77a2..ac9d632 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/events/MouseEvent.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/events/MouseEvent.js
@@ -14,21 +14,24 @@
goog.provide('org.apache.flex.events.MouseEvent');
+goog.require('goog.events.BrowserEvent');
+
/**
* @constructor
- * @extends {MouseEvent}
+ * @extends {goog.events.BrowserEvent}
+ *
* This is a shim class. As long as you don't test
* with "is" or "as", your code should work even
* if the runtime is actually sending a native
* browser MouseEvent
*/
org.apache.flex.events.MouseEvent = function() {
- window.MouseEvent.base(this, 'constructor');
+ org.apache.flex.events.MouseEvent.base(this, 'constructor');
};
goog.inherits(org.apache.flex.events.MouseEvent,
- window.MouseEvent);
+ goog.events.BrowserEvent);
/**
@@ -82,3 +85,104 @@ org.apache.flex.events.MouseEvent.prototype.FLEXJS_CLASS_INFO =
{ names: [{ name: 'MouseEvent',
qName: 'org.apache.flex.events.MouseEvent' }] };
+
+/**
+ * @return {boolean}
+ */
+org.apache.flex.events.MouseEvent.installRollOverMixin = function() {
+ window.addEventListener(org.apache.flex.events.MouseEvent.MOUSE_OVER,
+ org.apache.flex.events.MouseEvent.mouseOverHandler);
+ return true;
+};
+
+
+/**
+ * @param {Event} e The event.
+ * RollOver/RollOut is entirely implemented in mouseOver because
+ * when a parent and child share an edge, you only get a mouseout
+ * for the child and not the parent and you need to send rollout
+ * to both. A similar issue exists for rollover.
+ */
+org.apache.flex.events.MouseEvent.mouseOverHandler = function(e) {
+ var j, m, outs, me, parent;
+ var target = e.target.flexjs_wrapper;
+ if (target === undefined)
+ return; // probably over the html tag
+ var targets = org.apache.flex.events.MouseEvent.targets;
+ var index = targets.indexOf(target);
+ if (index != -1) {
+ // get all children
+ outs = targets.slice(index + 1);
+ m = outs.length;
+ for (j = 0; j < m; j++) {
+ me = org.apache.flex.events.MouseEvent.makeMouseEvent(
+ org.apache.flex.events.MouseEvent.ROLL_OUT, e);
+ outs[j].dispatchEvent(me);
+ }
+ org.apache.flex.events.MouseEvent.targets = targets.slice(0, index + 1);
+ }
+ else {
+ var newTargets = [target];
+ if (target.get_parent === undefined)
+ parent = null;
+ else
+ parent = target.get_parent();
+ while (parent) {
+ index = targets.indexOf(parent);
+ if (index == -1) {
+ newTargets.unshift(parent);
+ if (parent.get_parent === undefined)
+ break;
+ parent = parent.get_parent();
+ }
+ else {
+ outs = targets.slice(index + 1);
+ m = outs.length;
+ for (j = 0; j < m; j++) {
+ me = org.apache.flex.events.MouseEvent.makeMouseEvent(
+ org.apache.flex.events.MouseEvent.ROLL_OUT, e);
+ outs[j].dispatchEvent(me);
+ }
+ targets = targets.slice(0, index + 1);
+ break;
+ }
+ }
+ var n = newTargets.length;
+ for (var i = 0; i < n; i++) {
+ me = org.apache.flex.events.MouseEvent.makeMouseEvent(
+ org.apache.flex.events.MouseEvent.ROLL_OVER, e);
+ newTargets[i].dispatchEvent(me);
+ }
+ org.apache.flex.events.MouseEvent.targets = targets.concat(newTargets);
+ }
+};
+
+
+/**
+ * @type {boolean}
+ */
+org.apache.flex.events.MouseEvent.rollOverMixin =
+ org.apache.flex.events.MouseEvent.installRollOverMixin();
+
+
+/**
+ * @type {Object}
+ */
+org.apache.flex.events.MouseEvent.targets = [];
+
+
+/**
+ * @param {string} type The event type.
+ * @param {Event} e The mouse event.
+ * @return {MouseEvent} The new event.
+ */
+org.apache.flex.events.MouseEvent.makeMouseEvent = function(type, e) {
+ var out = new MouseEvent(type);
+ out.initMouseEvent(type);
+ out.screenX = e.screenX;
+ out.screenY = e.screenY;
+ out.ctrlKey = e.ctrlKey;
+ out.shiftKey = e.shiftKey;
+ out.alttKey = e.altKey;
+ return out;
+};
[11/16] git commit: [flex-asjs] [refs/heads/develop] - move
elementEvents to static so easier to add to list
Posted by ah...@apache.org.
move elementEvents to static so easier to add to list
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/7487a059
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/7487a059
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/7487a059
Branch: refs/heads/develop
Commit: 7487a059699efaa8a4fe4147edd6ac69c4dc88f3
Parents: 1f9061d
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 14:27:50 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:02 2015 -0800
----------------------------------------------------------------------
.../js/FlexJS/src/org/apache/flex/events/EventDispatcher.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/7487a059/frameworks/js/FlexJS/src/org/apache/flex/events/EventDispatcher.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/events/EventDispatcher.js b/frameworks/js/FlexJS/src/org/apache/flex/events/EventDispatcher.js
index fd11a82..8a101ff 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/events/EventDispatcher.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/events/EventDispatcher.js
@@ -59,7 +59,7 @@ org.apache.flex.events.EventDispatcher.prototype.addEventListener =
this.element.nodeName.toLowerCase() !== 'div' &&
this.element.nodeName.toLowerCase() !== 'body') {
source = this.element;
- } else if (this.elementEvents[type]) {
+ } else if (org.apache.flex.events.EventDispatcher.elementEvents[type]) {
// mouse and keyboard events also dispatch off the element.
source = this.element;
}
@@ -102,7 +102,7 @@ function(obj, propName, value) {
/**
* @type {Object}
*/
-org.apache.flex.events.EventDispatcher.prototype.elementEvents = {
+org.apache.flex.events.EventDispatcher.elementEvents = {
mouseover: 1,
mouseout: 1,
mouseup: 1,
[14/16] git commit: [flex-asjs] [refs/heads/develop] - need these
icons
Posted by ah...@apache.org.
need these icons
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/a8dc13a1
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/a8dc13a1
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/a8dc13a1
Branch: refs/heads/develop
Commit: a8dc13a14852a260e4a9f2ef7d6f3185e3ad7ce1
Parents: b69bbf2
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 10:16:43 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:02 2015 -0800
----------------------------------------------------------------------
examples/FlexJSStore/src/assets/icon_compare.png | Bin 0 -> 30218 bytes
examples/FlexJSStore/src/assets/icon_tiles.png | Bin 0 -> 27988 bytes
2 files changed, 0 insertions(+), 0 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a8dc13a1/examples/FlexJSStore/src/assets/icon_compare.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/icon_compare.png b/examples/FlexJSStore/src/assets/icon_compare.png
new file mode 100644
index 0000000..efc3ea1
Binary files /dev/null and b/examples/FlexJSStore/src/assets/icon_compare.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a8dc13a1/examples/FlexJSStore/src/assets/icon_tiles.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/icon_tiles.png b/examples/FlexJSStore/src/assets/icon_tiles.png
new file mode 100644
index 0000000..dbf75b6
Binary files /dev/null and b/examples/FlexJSStore/src/assets/icon_tiles.png differ
[02/16] git commit: [flex-asjs] [refs/heads/develop] - use screenXY
instead of stageXY
Posted by ah...@apache.org.
use screenXY instead of stageXY
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/faed8de6
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/faed8de6
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/faed8de6
Branch: refs/heads/develop
Commit: faed8de69b340b121e560f97a41be285de91d93a
Parents: c709923
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 10:08:01 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:20:59 2015 -0800
----------------------------------------------------------------------
.../FlexJSStore/src/productsView/ProductCatalogThumbnail.mxml | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/faed8de6/examples/FlexJSStore/src/productsView/ProductCatalogThumbnail.mxml
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/productsView/ProductCatalogThumbnail.mxml b/examples/FlexJSStore/src/productsView/ProductCatalogThumbnail.mxml
index ad0609f..0989fb5 100755
--- a/examples/FlexJSStore/src/productsView/ProductCatalogThumbnail.mxml
+++ b/examples/FlexJSStore/src/productsView/ProductCatalogThumbnail.mxml
@@ -91,7 +91,7 @@ limitations under the License.
event.target != compare &&
event.target != details)
{
- dragStartPoint = new Point(event.stageX, event.stageY);
+ dragStartPoint = new Point(event.screenX, event.screenY);
dragStartPoint = PointUtils.globalToLocal(dragStartPoint, this);
}
@@ -102,8 +102,8 @@ limitations under the License.
if (dragStartPoint != null)
{
var dragEvent:DragEvent = new DragEvent(DragEvent.DRAG_START, true);
- dragEvent.localX = dragStartPoint.x;
- dragEvent.localY = dragStartPoint.y;
+ dragEvent.clientX = dragStartPoint.x;
+ dragEvent.clientY = dragStartPoint.y;
dragEvent.buttonDown = true;
dispatchEvent(dragEvent);
[08/16] git commit: [flex-asjs] [refs/heads/develop] - need to
support topMostEventDispatcher
Posted by ah...@apache.org.
need to support topMostEventDispatcher
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/73f9b833
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/73f9b833
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/73f9b833
Branch: refs/heads/develop
Commit: 73f9b8337d48fe9b4b2accfdf99996ac06aaaf67
Parents: 693d4e6
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 10:13:01 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:01 2015 -0800
----------------------------------------------------------------------
frameworks/js/FlexJS/src/org/apache/flex/core/UIBase.js | 9 +++++++++
1 file changed, 9 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/73f9b833/frameworks/js/FlexJS/src/org/apache/flex/core/UIBase.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/core/UIBase.js b/frameworks/js/FlexJS/src/org/apache/flex/core/UIBase.js
index a1753d4..3a35c6e 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/core/UIBase.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/core/UIBase.js
@@ -806,3 +806,12 @@ org.apache.flex.core.UIBase.prototype.set_visible = function(value) {
}
}
};
+
+
+/**
+ * @expose
+ * @return {Object} The top most EventDispatcher.
+ */
+org.apache.flex.core.UIBase.prototype.get_topMostEventDispatcher = function() {
+ return document.body.flexjs_wrapper;
+};
[05/16] git commit: [flex-asjs] [refs/heads/develop] - try to remove
listeners when done and protect if not removed in time
Posted by ah...@apache.org.
try to remove listeners when done and protect if not removed in time
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/22666dfb
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/22666dfb
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/22666dfb
Branch: refs/heads/develop
Commit: 22666dfb4d69bc7dc70d56103c53b3e96b5f18e5
Parents: 4b9f33c
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 10:09:22 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:00 2015 -0800
----------------------------------------------------------------------
.../src/org/apache/flex/core/StatesWithTransitionsImpl.as | 5 +++++
1 file changed, 5 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/22666dfb/frameworks/as/projects/FlexJSJX/src/org/apache/flex/core/StatesWithTransitionsImpl.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/core/StatesWithTransitionsImpl.as b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/core/StatesWithTransitionsImpl.as
index c8aeb6f..75b6815 100644
--- a/frameworks/as/projects/FlexJSJX/src/org/apache/flex/core/StatesWithTransitionsImpl.as
+++ b/frameworks/as/projects/FlexJSJX/src/org/apache/flex/core/StatesWithTransitionsImpl.as
@@ -167,9 +167,14 @@ package org.apache.flex.core
*/
private function effectEndHandler(event:Event):void
{
+ // in case of extraneous calls to effectEndHandler
+ if (transitionEffects == null)
+ return;
+
var n:int = transitionEffects.length;
for (var i:int = 0; i < n; i++)
{
+ event.target.removeEventListener(Effect.EFFECT_END, effectEndHandler);
if (transitionEffects[i] == event.target)
transitionEffects.splice(i, 1);
}
[12/16] git commit: [flex-asjs] [refs/heads/develop] - more screenXY
handling
Posted by ah...@apache.org.
more screenXY handling
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/b69bbf21
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/b69bbf21
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/b69bbf21
Branch: refs/heads/develop
Commit: b69bbf211ca30375ac41978f927e5d030b3f12c8
Parents: 726e1cd
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 10:16:21 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:02 2015 -0800
----------------------------------------------------------------------
.../beads/controllers/SliderMouseController.as | 4 ++--
.../controllers/VScrollBarMouseController.as | 4 ++--
.../org/apache/flex/core/HTMLElementWrapper.js | 25 ++++++++++++++++++++
3 files changed, 29 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b69bbf21/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SliderMouseController.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SliderMouseController.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SliderMouseController.as
index 1568add..cca2307 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SliderMouseController.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/SliderMouseController.as
@@ -90,7 +90,7 @@ package org.apache.flex.html.beads.controllers
var sliderView:ISliderView = _strand.getBeadByType(ISliderView) as ISliderView;
- origin = new Point(event.stageX, event.stageY);
+ origin = new Point(event.screenX, event.screenY);
thumb = new Point(sliderView.thumb.x,sliderView.thumb.y);
}
@@ -115,7 +115,7 @@ package org.apache.flex.html.beads.controllers
{
var sliderView:ISliderView = _strand.getBeadByType(ISliderView) as ISliderView;
- var deltaX:Number = event.stageX - origin.x;
+ var deltaX:Number = event.screenX - origin.x;
var thumbW:Number = sliderView.thumb.width/2;
var newX:Number = thumb.x + deltaX;
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b69bbf21/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/VScrollBarMouseController.as
----------------------------------------------------------------------
diff --git a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/VScrollBarMouseController.as b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/VScrollBarMouseController.as
index dbcaf7d..611f6dd 100644
--- a/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/VScrollBarMouseController.as
+++ b/frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/controllers/VScrollBarMouseController.as
@@ -78,7 +78,7 @@ package org.apache.flex.html.beads.controllers
{
sbView.thumb.stage.addEventListener(MouseEvent.MOUSE_MOVE, thumbMouseMoveHandler);
sbView.thumb.stage.addEventListener(MouseEvent.MOUSE_UP, thumbMouseUpHandler);
- thumbDownY = event.stageY;
+ thumbDownY = event.screenY;
lastThumbY = sbView.thumb.y;
}
@@ -86,7 +86,7 @@ package org.apache.flex.html.beads.controllers
{
var thumb:DisplayObject = sbView.thumb;
var track:DisplayObject = sbView.track;
- thumb.y = Math.max(track.y, Math.min(lastThumbY + (event.stageY - thumbDownY), track.y + track.height - thumb.height));
+ thumb.y = Math.max(track.y, Math.min(lastThumbY + (event.screenY - thumbDownY), track.y + track.height - thumb.height));
var newValue:Number = snap((thumb.y - track.y) / (track.height - thumb.height) * (sbModel.maximum - sbModel.minimum - sbModel.pageSize));
sbModel.value = newValue;
IEventDispatcher(strand).dispatchEvent(new Event("scroll"));
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/b69bbf21/frameworks/js/FlexJS/src/org/apache/flex/core/HTMLElementWrapper.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/core/HTMLElementWrapper.js b/frameworks/js/FlexJS/src/org/apache/flex/core/HTMLElementWrapper.js
index aa043cd..4eca663 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/core/HTMLElementWrapper.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/core/HTMLElementWrapper.js
@@ -150,5 +150,30 @@ Event.prototype.get_target = function() {
* @return {Object} The wrapping object.
*/
goog.events.BrowserEvent.prototype.get_target = function() {
+ // if it is a faked event so just return the target
+ if (!this.event_) return this.target;
+ // for true browser events, get the embedded event's target
return this.event_.get_target();
};
+
+
+/**
+ * Hack to allow event.screenX expressions to work
+ *
+ * @expose
+ * @return {number} The wrapping object.
+ */
+goog.events.BrowserEvent.prototype.get_screenX = function() {
+ return this.screenX;
+};
+
+
+/**
+ * Hack to allow event.screenY expressions to work
+ *
+ * @expose
+ * @return {number} The wrapping object.
+ */
+goog.events.BrowserEvent.prototype.get_screenY = function() {
+ return this.screenY;
+};
[15/16] git commit: [flex-asjs] [refs/heads/develop] - fix bug in
MouseEvent
Posted by ah...@apache.org.
fix bug in MouseEvent
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/1f9061d4
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/1f9061d4
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/1f9061d4
Branch: refs/heads/develop
Commit: 1f9061d444a0e752e511f7acf49c28ae934d580f
Parents: a8dc13a
Author: Alex Harui <ah...@apache.org>
Authored: Mon Jan 5 14:26:31 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Jan 5 15:21:02 2015 -0800
----------------------------------------------------------------------
frameworks/js/FlexJS/src/org/apache/flex/events/MouseEvent.js | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/1f9061d4/frameworks/js/FlexJS/src/org/apache/flex/events/MouseEvent.js
----------------------------------------------------------------------
diff --git a/frameworks/js/FlexJS/src/org/apache/flex/events/MouseEvent.js b/frameworks/js/FlexJS/src/org/apache/flex/events/MouseEvent.js
index ac9d632..885bb02 100644
--- a/frameworks/js/FlexJS/src/org/apache/flex/events/MouseEvent.js
+++ b/frameworks/js/FlexJS/src/org/apache/flex/events/MouseEvent.js
@@ -151,7 +151,7 @@ org.apache.flex.events.MouseEvent.mouseOverHandler = function(e) {
for (var i = 0; i < n; i++) {
me = org.apache.flex.events.MouseEvent.makeMouseEvent(
org.apache.flex.events.MouseEvent.ROLL_OVER, e);
- newTargets[i].dispatchEvent(me);
+ newTargets[i].dispatchEvent(me);
}
org.apache.flex.events.MouseEvent.targets = targets.concat(newTargets);
}
@@ -183,6 +183,6 @@ org.apache.flex.events.MouseEvent.makeMouseEvent = function(type, e) {
out.screenY = e.screenY;
out.ctrlKey = e.ctrlKey;
out.shiftKey = e.shiftKey;
- out.alttKey = e.altKey;
+ out.altKey = e.altKey;
return out;
-};
+};
\ No newline at end of file