Skip to content

bug(drag-drop): Draggable elements inside SVG DropList not spawning underneath cursor #23635

@kalsowerus

Description

@kalsowerus

Reproduction

Use StackBlitz to reproduce your issue:

Steps to reproduce:

  1. Go to either https://stackblitz.com/edit/angular-droplist-with-previewcontainer?file=src/app/app.component.html
    or https://stackblitz.com/edit/angular-droplist-without-previewcontainer?file=src/app/app.component.html
  2. Drag the "Test" element to the other droplist
  3. Release LMB

Expected Behavior

In both cases I would expect the "Preview" element to spawn next to the mouse cursor and to be dropped on the droplist under the cursor.

Actual Behavior

In the first example "with-previewcontainer" I use the cdkPreviewContainer attribute to spawn the "Preview" element inside the parent svg, in that case it spawns correctly, but the drop is offset. By moving the mouse cursor somewhere towards the bottom right of the page, the "Test" element can be seen moving to the other droplist.

In the second example "without-previewcontainer" the cdkPreviewContainer is omitted and the "Preview" element spawn at the top left of the page. The offset from the top left seems to correlate with the offset of the mouse cursor inside the droplist. Moving the mosue cursor far enough down and to the right will again make the "Test" element move to the other droplist.

The behaviour in Firefox seems to be slightly different.

Environment

  • Angular: 12.2.6
  • CDK/Material: 12.2.5
  • Browser(s): Edge 93.0.961.52, Chrome 93.0.4577.82, Brave 1.29.81, Firefox 92.0.1
  • Operating System (e.g. Windows, macOS, Ubuntu): Windows 10

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3An issue that is relevant to core functions, but does not impede progress. Important, but not urgentarea: cdk/drag-drop

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions