Resizable modals resize from the wrong corner and drift while resizing
- Dominant language
- Python
- Stars
- 74.8k
- Forks
- 18.3k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 685
Description
### Bug description
Resizable modals in Superset — including Drill by, Drill to detail, and Chart Data / View as table — behave incorrectly when resized from any edge/corner other than the bottom-right. Not a critical issue, but might throw some users off.
## Steps to reproduce
1. Open a chart and trigger one of the affected modals (e.g. right-click a chart → "Drill by", or "View as table").
2. Try to resize the modal by dragging its top-left corner (or the left/top edges).
3. Observe the resize behavior.
### Expected behavior
Dragging the top-left corner should resize the modal by moving its top-left edge while keeping the bottom-right edge fixed, the same way resizing works on most desktop windows/dialogs.
### Actual behavior
Dragging from the top-left corner (or left/top edges) resizes the modal from the bottom-right instead — the opposite of the edge being dragged.
In addition, resizing along one axis can unexpectedly move the modal.
## Likely cause
The resize handles sit inside a draggable wrapper, and both resizing and dragging try to control the modal's position independently. Resizing from the top or left needs to reposition the modal to keep the opposite corner anchored, but the drag logic overrides that position separately — the two conflict, producing both the wrong-corner resize behavior and the occasional drift on the other axis.
### Screenshots/recordings
### Superset version
6.1.0
### Python version
3.11
### Node version
16
### Browser
Chrome
### Additional context
_No response_
### Checklist
- [x] I have searched Superset docs and Slack and didn't find a solution to my problem.
- [x] I have searched the GitHub issue tracker and didn't find a similar bug report.
- [x] I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.
Contributor guide
Research direction
Start by reproducing the issue in the Drill by, Drill to detail, or Chart Data / View as table modal using the top-left corner and left/top edges. Trace the modal's resize handles and draggable wrapper, then verify that the dragged edge moves while the opposite corner stays fixed and that resizing one axis does not move the modal on the other axis.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, react
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100