ICEfaces
  1. ICEfaces
  2. ICE-8764

ace:draggable - Add a drag start event listener

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: EE-3.0.0.GA_P01, 3.2
    • Fix Version/s: EE-3.2.0.BETA, EE-3.2.0.GA, 3.3
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      All
    • Affects:
      Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial

      Description


      Feature Request: Add a drag start event so a listener could be fired when the ace:draggable object is first dragged.

        Activity

        Hide
        Arran Mccullough added a comment - - edited

        Comment from Art on this functionality:
        "jQuery UI does provide a hook for the drag start event. So, we can definitely add this feature.
        The only thing to consider is that since this event fires when the user starts dragging an element, and it's very likely that the user will still be dragging the element when the response comes back, there might be some minor usability issues if the response modifies the component being dragged or the draggable object itself, like losing the grip of the element. We fixed a similar situation in slider, so we might be able to fix this situation for draggables as well, if we make some necessary changes in the rendering. However, in some cases it may depend on how the component being dragged is rendered. "
        (Restricted to icesoft-internal-developers group)

        Show
        Arran Mccullough added a comment - - edited Comment from Art on this functionality: "jQuery UI does provide a hook for the drag start event. So, we can definitely add this feature. The only thing to consider is that since this event fires when the user starts dragging an element, and it's very likely that the user will still be dragging the element when the response comes back, there might be some minor usability issues if the response modifies the component being dragged or the draggable object itself, like losing the grip of the element. We fixed a similar situation in slider, so we might be able to fix this situation for draggables as well, if we make some necessary changes in the rendering. However, in some cases it may depend on how the component being dragged is rendered. " (Restricted to icesoft-internal-developers group)
        Hide
        Arturo Zambrano added a comment - - edited

        I estimate this can take half a day (4 hours) to implement, test, and also to analyze different situations that can arise with this feature like the one described in the first comment.
        (Restricted to icesoft-internal-developers group)

        Show
        Arturo Zambrano added a comment - - edited I estimate this can take half a day (4 hours) to implement, test, and also to analyze different situations that can arise with this feature like the one described in the first comment. (Restricted to icesoft-internal-developers group)
        Hide
        Arturo Zambrano added a comment - - edited

        Committed feature to the trunk at revision at 32526.

        Added 'dragStartListener' attribute and 'start' ajax event, as well as a 'datasource' attribute to fetch data when working with draggables in UIData components.

        Show
        Arturo Zambrano added a comment - - edited Committed feature to the trunk at revision at 32526. Added 'dragStartListener' attribute and 'start' ajax event, as well as a 'datasource' attribute to fetch data when working with draggables in UIData components.
        Hide
        Arturo Zambrano added a comment - - edited

        There was a problem when using helper="clone". Since a clone node is created from the original node, the id attribute is not included (otherwise it would be duplicate), so when retrieving the id from the clone node, during the dragStart event, it was undefined and it wasn't possible to determine which node had been dragged.

        Committed fix for this problem at revision 32852 to avoid relying on the id of the clone node, but on the target id specified initially.

        Show
        Arturo Zambrano added a comment - - edited There was a problem when using helper="clone". Since a clone node is created from the original node, the id attribute is not included (otherwise it would be duplicate), so when retrieving the id from the clone node, during the dragStart event, it was undefined and it wasn't possible to determine which node had been dragged. Committed fix for this problem at revision 32852 to avoid relying on the id of the clone node, but on the target id specified initially.

          People

          • Assignee:
            Arturo Zambrano
            Reporter:
            Arran Mccullough
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: