1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 06:07:34 +00:00

Userland: Accept drag_enter events for widgets supporting file drops

This patch will switch cursor to DragCopy when a user enters a widget
while dragging file(s), giving them a visual clue that it *might* be
dropped into this widget.

This is a rather naive approach, as the cursor icon will change for any
kind of file, as currently programs don't know the drag contents before
dropping it. But after all I think it's better than nothing. :^)
This commit is contained in:
Karol Kosek 2022-11-04 22:32:17 +01:00 committed by Andrew Kaster
parent 461ee18d64
commit 0b7f5bbdfb
21 changed files with 89 additions and 0 deletions

View file

@ -1145,6 +1145,13 @@ ImageEditor& MainWidget::create_new_editor(NonnullRefPtr<Image> image)
return image_editor;
}
void MainWidget::drag_enter_event(GUI::DragEvent& event)
{
auto const& mime_types = event.mime_types();
if (mime_types.contains_slow("text/uri-list"))
event.accept();
}
void MainWidget::drop_event(GUI::DropEvent& event)
{
if (!event.mime_data().has_urls())