incubator-callback-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jesse MacFadyen (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (CB-953) mousedown and mouseup events are fired twice
Date Wed, 27 Jun 2012 23:37:42 GMT

     [ https://issues.apache.org/jira/browse/CB-953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Jesse MacFadyen updated CB-953:
-------------------------------

    Remaining Estimate:     (was: 9h)
     Original Estimate:     (was: 9h)
    
> mousedown and mouseup events are fired twice
> --------------------------------------------
>
>                 Key: CB-953
>                 URL: https://issues.apache.org/jira/browse/CB-953
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: WP7
>    Affects Versions: 1.7.0
>            Reporter: Jesse MacFadyen
>            Assignee: Jesse MacFadyen
>             Fix For: 1.9.0
>
>
> I have a simple Cordova 1.7.0. test app that just handles mouse events and logs event
target (attached). I found out that mousedown and mouseup events are fired twice. First time
they are fired in code by C# InvokeSimulatedMouseEvent function and the second time by WebBrowser
control itself. That leads to event handlers also to be called twice for each event.
> I found out that the second time WebBrowser fires events because native Tap event is
not prevented. So I added tap handler that prevents event bubbling in order to illuminate
unnecessary event firing:
>  
>             private void browser_Loaded(object sender, RoutedEventArgs e)
>             {
>             …          
>             border.Tap += Border_Tap;
>             …
>             }
>             
>             void Border_Tap(object sender, GestureEventArgs e)
>             {
>             e.Handled = true;
>             }
>  
>  
> In this case events are fired only once, but I have the following issues:
> a.       After clicking on input field it is highlighted but virtual keyboard is not
opened.
> b.      Play button of audio element becomes not clickable.
>  
> It seems that all events are fired correctly but there are some little difference between
system and Cordova events (see below): 
> Cordova generated:
> Log:"isCordova=true; fromElement=null; layerX=0; layerY=0; toElement=null; which=1; altKey=false;
button=0; buttons=0; clientX=233; clientY=209; ctrlKey=false; metaKey=false; offsetX=0; offsetY=0;
pageX=233; pageY=209; relatedTarget=[object HTMLInputElement]; screenX=233; screenY=209; shiftKey=false;
x=0; y=0; getModifierState=\nfunction getModifierState() {\n    [native code]\n}\n; initMouseEvent=\nfunction
initMouseEvent() {\n    [native code]\n}\n; detail=1; view=[object Window]; initUIEvent=\nfunction
initUIEvent() {\n    [native code]\n}\n; bubbles=true; cancelable=true; currentTarget=[object
Window]; defaultPrevented=false; eventPhase=1; isTrusted=false; target=[object HTMLInputElement];
timeStamp=1The thread '<No Name>' (0xf3204da) has exited with code 0 (0x0).
> Log:"isCordova=true; fromElement=null; layerX=0; layerY=0; toElement=null; which=1; altKey=false;
button=0; buttons=0; clientX=233; clientY=209; ctrlKey=false; metaKey=false; offsetX=0; offsetY=0;
pageX=233; pageY=209; relatedTarget=[object HTMLInputElement]; screenX=233; screenY=209; shiftKey=false;
x=0; y=0; getModifierState=\nfunction getModifierState() {\n    [native code]\n}\n; initMouseEvent=\nfunction
initMouseEvent() {\n    [native code]\n}\n; detail=1; view=[object Window]; initUIEvent=\nfunction
initUIEvent() {\n    [native code]\n}\n; bubbles=true; cancelable=true; currentTarget=[object
Window]; defaultPrevented=false; eventPhase=1; isTrusted=false; target=[object HTMLInputElement];
timeStamp=1Log:"trace end"
> System:
> Log:"fromElement=null; layerX=67; layerY=20; toElement=null; which=1; altKey=false; button=0;
buttons=1; clientX=233; clientY=209; ctrlKey=false; metaKey=false; offsetX=67; offsetY=20;
pageX=233; pageY=209; relatedTarget=null; screenX=1345; screenY=1309; shiftKey=false; x=67;
y=20; getModifierState=\nfunction getModifierState() {\n    [native code]\n}\n; initMouseEvent=\nfunction
initMouseEvent() {\n    [native code]\n}\n; detail=1; view=[object Window]; initUIEvent=\nfunction
initUIEvent() {\n    [native code]\n}\n; bubbles=true; cancelable=true; currentTarget=[object
Window]; defaultPrevented=false; eventPhase=1; isTrusted=true; target=[object HTMLInputElement];
timeStamp=1338888750791; type=mousedown; Log:"-------------->"
> Log:"fromElement=null; layerX=67; layerY=20; toElement=null; which=1; altKey=false; button=0;
buttons=1; clientX=233; clientY=209; ctrlKey=false; metaKey=false; offsetX=67; offsetY=20;
pageX=233; pageY=209; relatedTarget=null; screenX=1345; screenY=1309; shiftKey=false; x=67;
y=20; getModifierState=\nfunction getModifierState() {\n    [native code]\n}\n; initMouseEvent=\nfunction
initMouseEvent() {\n    [native code]\n}\n; detail=1; view=[object Window]; initUIEvent=\nfunction
initUIEvent() {\n    [native code]\n}\n; bubbles=true; cancelable=true; currentTarget=[object
Window]; defaultPrevented=false; eventPhase=1; isTrusted=true; target=[object HTMLInputElement];
timeStamp=1338888751251; type=mouseup; caThe thread '<No Name>' (0xe23073a) has exited
with code 0 (0x0).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

Mime
View raw message