[Webkit-unassigned] [Bug 39178] New: touchmove preventDeault should disable click emulation, click emulation should be done on the initially touched element, instead of viewspace location

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun May 16 08:56:21 PDT 2010


https://bugs.webkit.org/show_bug.cgi?id=39178

           Summary: touchmove preventDeault should disable click
                    emulation, click emulation should be done on the
                    initially touched element, instead of viewspace
                    location
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: PC
        OS/Version: Mac OS X 10.5
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: New Bugs
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: emrah08 at hesido.com


I hope this is the right place to report this specific "bug". I have done a lot of searching and this seemed to be the best spot for reaching iPhone safari developers.

I have a test case for an internally developed script which I cannot release at the moment but this is fairly obvious and may not need a test case. If need be, I will add a test case.

Suggestion->
We should be able to disable touch-click emulation during touchMove in iPhone Safari.
and/or
iPhone Safari Touch-click emulation should be applied on the initially touched object, instead of viewspace location



Current problem->
A dynamic web application may allow users to drag and drop. While dragging, the content under the initial touch location will change. This content which is moves under the initial touch location may be a clickable content, such as an anchor or a custom clickable element. This will cause Safari to emulate a click on the object, even if wasn't at the initial location of the touch. This poses a problem which currently cannot be solved because of the following reasons:
1)Disabling default action on touchstart disables all clicking activity inside our draggable element. This disables all anchors and other clickable elements inside the element we are dragging. One solution would be to check if the e.target is an anchor, but this cannot cover other clickable elements inside the draggable div. Current event model doesn't allow listing of attached events, so it is impossible to know if you are disabling an important function of the web application.
2)We don't need to / shouldn't disable the default action of touchstart, if the user doesn't start touchmove, but we cannot know this ahead of time.
3)Disabling touchstart default action disables more than needed, such as scrolling etc., even if the script stops preventing default action on touchmove (such as when your draggable box is at the edge of the screen)


Remedy->
1)touchmove e.preventDefault should also disable click emulation.
2)Touch simulation should be done on the initially touched element, not the element that may come under the initial touch location because of the dynamic nature of the web applications. This is because some actions may lead to the movement of content not necessarily with touchmove.

I'm sorry if I'm at the wrong place, please direct me to the right place if this is the case.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list