Opened 6 years ago

Closed 3 years ago

Last modified 3 years ago

#7734 closed bug (fixed)

Draggable: HTML IDs are removed when dragging to a Sortable

Reported by: azaozz Owned by: mikesherov
Priority: minor Milestone: 1.11.2
Component: ui.draggable Version: 1.8.13
Keywords: Cc: Scott González
Blocked by: Blocking:

Description

This was introduced in #4564 as a bug fix but seems to cause more problems than it fixes.

The patch removes the ID from the draggable element (but doesn't remove the IDs from any child elements) preventing proper handling of that element when it's dropped in the sortable. This breaks the Widgets page in WordPress among other things.

Furthermore this patch doesn't solve the problem of duplicate IDs. If there are child elements with IDs, they still create duplicates.

The solution imho would be to revert that patch, then update the documentation on using both draggable + sortable together. The draggable elements should be without IDs or the author should handle the duplicate IDs.

(Would have set the ticket type as regression if it was available.)

Change History (9)

comment:1 Changed 6 years ago by azaozz

Related ticket on WprdPress' trac: https://core.trac.wordpress.org/ticket/17952

comment:2 Changed 5 years ago by Scott González

Milestone: 1.9.02.0.0

comment:3 Changed 4 years ago by mikesherov

Cc: scott.gonzalez added

Not sure whether this is something we intend on fixing. Scott, can you chime in here on the issue... mark as open if we're going to tackle this, or resolve as wontfix if we're not. Thanks!

comment:4 Changed 4 years ago by mikesherov

Summary: HTML IDs are removed when dragging an item from a Draggable to a SortableDraggable: HTML IDs are removed when dragging to a Sortable

comment:5 Changed 4 years ago by mikesherov

Type: bugfeature

comment:6 Changed 4 years ago by Scott González

Status: newopen
Type: featurebug

This seems legit, I'd even say bug was correct since this is expected behavior and was implemented for a long time. I haven't dug into the code to figure out why clones are always used when connecting to sortables, but I can't think of any reason that should be necessary.

comment:7 Changed 3 years ago by mikesherov

Milestone: 2.0.0none
Owner: set to mikesherov
Status: openassigned

comment:8 Changed 3 years ago by Mike Sherov

Resolution: fixed
Status: assignedclosed

Draggable: No cloning in connectToSortable and ensure correct position

Draggables now forcefully recalculate their position when dragged out of a sortable. Sortables now override draggable position when a draggable is dragged into it. Lastly, no longer remove sortable helper when dragging a draggable out, which allows us to not use a clone.

Fixes #7734 Fixes #8809 Closes gh-1322

Changeset: 95546c5d045f8055b121f24d3e35468e2a570c1b

comment:9 Changed 3 years ago by mikesherov

Milestone: none1.11.2
Note: See TracTickets for help on using tickets.