[wp-trac] [WordPress Trac] #64065: Dragging theme/plugin ZIP outside file input downloads file instead of uploading

WordPress Trac noreply at wordpress.org
Wed Oct 1 20:59:14 UTC 2025


#64065: Dragging theme/plugin ZIP outside file input downloads file instead of
uploading
-------------------------------+-----------------------------
 Reporter:  ibrahimriaz        |      Owner:  (none)
     Type:  defect (bug)       |     Status:  new
 Priority:  normal             |  Milestone:  Awaiting Review
Component:  General            |    Version:  6.8.2
 Severity:  normal             |   Keywords:  has-patch
  Focuses:  ui, accessibility  |
-------------------------------+-----------------------------
 When uploading a theme or plugin ZIP file via the WordPress admin
 (**Appearance → Themes → Add New → Upload Theme and Plugins → Add New →
 Upload Plugin**), the drag & drop upload experience is inconsistent.

 **Currently:**
 The drop target is only the small **<input type="file">** element.
 If the user drops the .zip file anywhere else in the upload form, the
 browser intercepts the drop and downloads the file instead of uploading.
 This creates confusion and feels like a broken upload feature.

 **Steps to reproduce:**
 Go to **Appearance → Themes → Add New → Upload Theme** or **Plugins → Add
 Plugins → Upload Plugin**.
 Drag a .zip file into the form area, but do not drop it directly on the
 file input box.
 Observe that the file downloads instead of being uploaded.

 **Expected behavior:**
 The entire upload form should be a valid drop zone.
 Dropping anywhere inside the form should trigger the file upload, not a
 download.

 **Proposed solution:**

 Extend drag-and-drop handling to the entire .wp-upload-form.
 Prevent the browser’s default download behavior.
 Assign dropped files to the hidden file input and trigger a change event
 so upload proceeds as expected.

 **Why it matters:**

 Improves UX and accessibility.
 Prevents user frustration from failed uploads.
 Matches user expectations for drag-and-drop upload behavior.

-- 
Ticket URL: <https://core.trac.wordpress.org/ticket/64065>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list