[Laszlo-checkins] r12771 - openlaszlo/trunk/WEB-INF/lps/lfc/kernel/swf9
max@openlaszlo.org
max at openlaszlo.org
Fri Feb 6 19:27:47 PST 2009
Author: max
Date: 2009-02-06 19:27:45 -0800 (Fri, 06 Feb 2009)
New Revision: 12771
Modified:
openlaszlo/trunk/WEB-INF/lps/lfc/kernel/swf9/LzMouseKernel.as
Log:
Change 20090206-maxcarlson-y by maxcarlson at Bank.local on 2009-02-06 19:03:11 PST
in /Users/maxcarlson/openlaszlo/trunk-clean
for http://svn.openlaszlo.org/openlaszlo/trunk
Summary: Send mouseup events when mouse goes up outside the app in swf9
Bugs Fixed: LPP-7724 - Mouse events behave wrong in opaque mode (FireFox)
Technical Reviewer: andre.bargull at udo.edu
QA Reviewer: hminsky
Details: Add mouseLeft flag to track whether the mouse left the app. Send a mouseup event if the mouse left the app, the button is still down and there is a view to receive the event (lastMouseDown)
Tests: See LPP-7724.
Modified: openlaszlo/trunk/WEB-INF/lps/lfc/kernel/swf9/LzMouseKernel.as
===================================================================
--- openlaszlo/trunk/WEB-INF/lps/lfc/kernel/swf9/LzMouseKernel.as 2009-02-07 03:12:15 UTC (rev 12770)
+++ openlaszlo/trunk/WEB-INF/lps/lfc/kernel/swf9/LzMouseKernel.as 2009-02-07 03:27:45 UTC (rev 12771)
@@ -1,7 +1,7 @@
/**
* LzMouseKernel.as
*
- * @copyright Copyright 2001-2008 Laszlo Systems, Inc. All Rights Reserved.
+ * @copyright Copyright 2001-2009 Laszlo Systems, Inc. All Rights Reserved.
* Use is subject to license terms.
*
* @topic Kernel
@@ -26,6 +26,7 @@
static var __callback = null;
static var __scope = null;
static var __lastMouseDown = null;
+ static var __mouseLeft:Boolean = false;
static var __listeneradded:Boolean = false ;
/**
@@ -53,6 +54,13 @@
LzMouseKernel.__lastMouseDown.__globalmouseup(event);
__lastMouseDown = null;
} else {
+ if (__mouseLeft && event.buttonDown && LzMouseKernel.__lastMouseDown != null) {
+ __mouseLeft = false;
+ //Debug.write(eventname, event.buttonDown, LzMouseKernel.__lastMouseDown);
+ var ev = new MouseEvent('mouseup');
+ LzMouseKernel.__lastMouseDown.__globalmouseup(ev);
+ LzMouseKernel.__lastMouseDown = null;
+ }
LzMouseKernel.__sendEvent(null, eventname);
}
}
@@ -60,6 +68,7 @@
// handles MOUSE_LEAVES event
static function __mouseLeavesHandler(event:Event):void {
var eventname = 'on' + event.type.toLowerCase();
+ LzMouseKernel.__mouseLeft = true;
LzMouseKernel.__sendEvent(null, eventname);
}
More information about the Laszlo-checkins
mailing list