You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flex.apache.org by "Tamás Nepusz (JIRA)" <ji...@apache.org> on 2014/06/10 17:36:02 UTC

[jira] [Created] (FLEX-34364) FlexEvent.BUTTON_DOWN events are sometimes lost

Tamás Nepusz created FLEX-34364:
-----------------------------------

             Summary: FlexEvent.BUTTON_DOWN events are sometimes lost
                 Key: FLEX-34364
                 URL: https://issues.apache.org/jira/browse/FLEX-34364
             Project: Apache Flex
          Issue Type: Bug
          Components: Spark: Button
    Affects Versions: Apache Flex 4.12.0
         Environment: Mac OS X 10.9, Apache Flex 4.12.1 + AIR 13
            Reporter: Tamás Nepusz
            Priority: Minor
         Attachments: ButtonDownBugTest.fxp

{{FlexEvent.BUTTON_DOWN}} events are sometimes not fired for Spark Buttons. More precisely, they are _usually_ not fired (in ~80% of the cases) when I click on the button by tapping the touchpad of my MacBook Pro _and_ the window that contains the button is not the first window of the application. The events are _always_ fired properly when I click on the button using the mouse or the button at the bottom of my touchpad, _or_ when the button is contained in the first window of the application.

I strongly suspect that this happens because {{FlexEvent.BUTTON_DOWN}} events are dispatched in {{ButtonBase.commitProperties()}}, but the {{MouseEvent.MOUSE_DOWN}} and {{MouseEvent.MOUSE_UP}} events happen so quickly when I tap the touchpad that {{ButtonBase.commitProperties()}} only gets a chance to run when the button is already up again (although this does not explain why it is not a problem for the first window of the application). This is not a big issue on its own, but note that {{DropDownController}} relies on the {{BUTTON_DOWN}} event to decide when to open the dropdown in a {{DropDownList}}, so Spark dropdowns do not work reliably in the presence of this bug.

Steps to reproduce:

# You might have to get a Mac to reproduce this issue.
# Open the attached project.
# Tap on the button of the first window that opens using the touchpad. Note that you get both a {{BUTTON_DOWN}} event and a {{CLICK}} event, and these are logged properly in the list shown below the button.
# Open a new window by clicking on the button in the lower right corner.
# Tap on the button of the new window a few times. Note that {{CLICK}} events are always dispatched, but in ~80% of the cases they are not preceded by a {{BUTTON_DOWN}} event.



--
This message was sent by Atlassian JIRA
(v6.2#6252)