diff --git a/src/framework/ui/uiwidget.cpp b/src/framework/ui/uiwidget.cpp index 8346a36e..12cd40ca 100644 --- a/src/framework/ui/uiwidget.cpp +++ b/src/framework/ui/uiwidget.cpp @@ -1116,7 +1116,7 @@ void UIWidget::onMouseRelease(const Point& mousePos, Fw::MouseButton button) callLuaField("onClick"); UIWidgetPtr draggedWidget = g_ui.getDraggingWidget(); - if(draggedWidget && containsPoint(mousePos) && button == Fw::MouseLeftButton) { + if(draggedWidget && button == Fw::MouseLeftButton && (containsPoint(mousePos) || asUIWidget() == g_ui.getRootWidget())) { onDrop(draggedWidget, mousePos); draggedWidget->onDragLeave(asUIWidget(), mousePos); draggedWidget->setDragging(false);