Strange Flex double click behaviour
-
22-08-2019 - |
Question
When using double click enable on any component, sometimes I have trouble activating the double click.
I realised that if I move between my fast paced single click it will NEVER fire a double click event. If, however, I do not move the mouse between the clicks then the double click is fired.
I'm thinking of using timer to get my own double click.
How would you solve this?
Sample
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" applicationComplete="init()">
<mx:Canvas id="bg" width="100%" height="100%" backgroundColor="white" />
<mx:Script>
<![CDATA[
private function init():void {
var cvstest:Canvas = new Canvas();
cvstest.width = 200;
cvstest.height = 200;
cvstest.x = 100;
cvstest.doubleClickEnabled = true;
cvstest.addEventListener(MouseEvent.DOUBLE_CLICK, dc);
cvstest.addEventListener(MouseEvent.MOUSE_DOWN, md);
cvstest.setStyle("backgroundColor",0xff0000);
this.addChild(cvstest);
}
public function dc (e:MouseEvent) : void {
trace("DOUBLE CLICK ON TEST CANVAS");
}
public function md (e:MouseEvent) : void {
trace("SINCLICK ON TEST CANVAS");
}
]]>
</mx:Script>
</mx:Application>
Solution
On my trackpad, your code works perfectly fine, but i guess thats because it's awfully hard to move the mouse between clicks.
If I use my wacom, it seems like my double click is only successful about 1/3 of the time.
There's also this: http://bugs.adobe.com/jira/browse/FP-15 :(
OTHER TIPS
I can solve this by clearing the classInterval
and calling a deferred validation.