Offer both click-to-choose and drop
Aliases: dropzone · file picker · drag and drop upload
What it is
The file already lives on the device. Two habitual paths bring it in: open the system picker and click, or drag the icon onto a region. Click-and-drop file intake runs both paths into the same intake. A button-only surface makes people who already have the file on the desktop walk a folder tree again; a drop-only surface leaves no inlet on touch, remote desktop, or a screen reader. The issue is how a file is chosen, not whether type and size limits were stated before the choice, and not progress after the bytes move.
Why it happens
Clicking uses the system file dialog, which is good at “I know which folder.” Dropping uses spatial matching, which is good at “the file is already in view.” The user states differ; the paths do not substitute. Drop is almost a reflex on desktop OS, and its absence is read as a poor uploader; touch and many VMs have no reliable drop, so a missing click means no upload at all. The intake must also change appearance while a drag is over it—“you may release here”—or the file is treated as a desktop-internal move with no hit. Both paths must accept the same types, or people will think drop is broken.
Where it stops holding
A mobile-only app often has only the system document picker or the camera; drop is not the main channel, and a desktop-style dropzone wastes a screen. When enterprise setups disable drop (some remote desktops, browser permissions), click must complete the task alone. Multi-file and folder drops need a defined behavior: take all, or only first-level files, or the drop path will silently lose content. Keyboard users do not drag; the click path must open the picker from a button or label with Enter.
Applying it
- Put “Choose file” and a discoverable drop region on the same intake, writing both paths into one list.
- Change that region’s appearance while a file is dragged over it, and add on release; do not let drops hit unresponsive page chrome.
- Keep the click path fully usable on touch and keyboard; do not make drop the only inlet.
- Verify by picking from a folder dialog, dragging from the desktop, and opening the picker from the keyboard alone. All three should enter the same queue. Missing drop or missing click means a single channel is impersonating upload.