From 8fe92b94ce5e1e2857d088752d94e19db7e3d8a8 Mon Sep 17 00:00:00 2001 From: Valerio Virgillito Date: Sun, 17 Jun 2012 22:31:44 -0700 Subject: montage v11 merge into ninja Signed-off-by: Valerio Virgillito --- node_modules/montage/ui/composer/key-composer.js | 16 ++++--- node_modules/montage/ui/composer/press-composer.js | 52 ++++++++++++++-------- .../montage/ui/composer/translate-composer.js | 2 +- 3 files changed, 44 insertions(+), 26 deletions(-) (limited to 'node_modules/montage/ui/composer') diff --git a/node_modules/montage/ui/composer/key-composer.js b/node_modules/montage/ui/composer/key-composer.js index 9d2c0f14..015ab115 100644 --- a/node_modules/montage/ui/composer/key-composer.js +++ b/node_modules/montage/ui/composer/key-composer.js @@ -103,9 +103,9 @@ var KeyComposer = exports.KeyComposer = Montage.create(Composer, /** @lends modu @default null */ identifier: { - get: function() { - return this._identifier; - }, + get: function() { + return this._identifier; + }, set: function(identifier) { this._identifier = identifier; } @@ -234,7 +234,7 @@ var KeyComposer = exports.KeyComposer = Montage.create(Composer, /** @lends modu this._keyRegistered = true; } } else if (component && typeof component.addComposer !== "function") { - // this keyComposer is associated with an element, let's make it a global key + // this keyComposer is not associated with an element, let's make it a global key if (!this.element) { this.element = window; } @@ -264,11 +264,15 @@ var KeyComposer = exports.KeyComposer = Montage.create(Composer, /** @lends modu value: function() { var component = this.component; + if (this.identifier === null) { + this.identifier = Montage.getInfoForObject(this).label; + } + if (component) { if (typeof component.addComposer == "function") { component.addComposer(this); } else if (!this._isLoaded) { - // this keyComposer is associated with an element, let's make it a global key + // this keyComposer is not associated with an element, let's make it a global key if (!this.element) { this.element = window; } @@ -284,7 +288,7 @@ var KeyComposer = exports.KeyComposer = Montage.create(Composer, /** @lends modu /** @class KeyManagerProxy @classdesc Provide a proxy for lazy load of module:montage/core/event/key-manager.KeyManager. - @extends module:montage + @extends module:montage/core/core.Montage @private */ var _keyManagerProxy= null; diff --git a/node_modules/montage/ui/composer/press-composer.js b/node_modules/montage/ui/composer/press-composer.js index d71d2ec6..55903b5f 100644 --- a/node_modules/montage/ui/composer/press-composer.js +++ b/node_modules/montage/ui/composer/press-composer.js @@ -58,9 +58,9 @@ var PressComposer = exports.PressComposer = Montage.create(Composer,/** @lends m load: { value: function() { if (window.Touch) { - this._element.addEventListener("touchstart", this); + this._element.addEventListener("touchstart", this, true); } else { - this._element.addEventListener("mousedown", this); + this._element.addEventListener("mousedown", this, true); } } }, @@ -75,6 +75,19 @@ var PressComposer = exports.PressComposer = Montage.create(Composer,/** @lends m } }, + /** + Delegate that implements surrenderPointer. See Component for + explanation of what this method should do. + + @type {Object} + @default null + */ + delegate: { + serializable: true, + value: null + }, + + /** Cancel the current press. @@ -191,16 +204,16 @@ var PressComposer = exports.PressComposer = Montage.create(Composer,/** @lends m return false; } - document.addEventListener("touchend", this); - document.addEventListener("touchcancel", this); + document.addEventListener("touchend", this, false); + document.addEventListener("touchcancel", this, false); } else if (event.type === "mousedown") { this._observedPointer = "mouse"; // Needed to cancel action event dispatch is mouseup'd when // not on the component - document.addEventListener("mouseup", this); + document.addEventListener("mouseup", this, false); // Needed to preventDefault if another component has claimed // the pointer - document.addEventListener("click", this); + document.addEventListener("click", this, false); } this.component.eventManager.claimPointer(this._observedPointer, this); @@ -239,18 +252,19 @@ var PressComposer = exports.PressComposer = Montage.create(Composer,/** @lends m // in surrenderPointer, just end the interaction. this._endInteraction(event); return; - } - - if (!isSurrendered && isTarget && event.type === "mouseup") { - this._dispatchPress(event); - this._endInteraction(event); - return; - } + } else if (event.type === "mouseup") { - if (!isSurrendered && !isTarget && event.type === "mouseup") { - this._dispatchPressCancel(event); - this._endInteraction(event); - return; + if (!isSurrendered && isTarget) { + this._dispatchPress(event); + this._endInteraction(event); + return; + } else if (!isSurrendered && !isTarget) { + this._dispatchPressCancel(event); + this._endInteraction(event); + return; + } else if (isSurrendered && !isTarget) { + this._endInteraction(event); + } } } }, @@ -319,7 +333,7 @@ var PressComposer = exports.PressComposer = Montage.create(Composer,/** @lends m // Handlers - handleTouchstart: { + captureTouchstart: { value: function(event) { this._startInteraction(event); } @@ -352,7 +366,7 @@ var PressComposer = exports.PressComposer = Montage.create(Composer,/** @lends m } }, - handleMousedown: { + captureMousedown: { value: function(event) { this._startInteraction(event); } diff --git a/node_modules/montage/ui/composer/translate-composer.js b/node_modules/montage/ui/composer/translate-composer.js index 78459b9d..f82ca393 100644 --- a/node_modules/montage/ui/composer/translate-composer.js +++ b/node_modules/montage/ui/composer/translate-composer.js @@ -622,7 +622,7 @@ var TranslateComposer = exports.TranslateComposer = Montage.create(Composer,/** captureTouchend: { value: function(event) { var i = 0, len = event.changedTouches.length; - while (i < len && !this.eventManager.isPointerClaimedByComponent(event.changedTouches[i].identifier, this)) { + while (i < len && event.changedTouches[i].identifier !== this._observedPointer) { i++; } if (i < len) { -- cgit v1.2.3