|
@@ -87,12 +87,10 @@ void UIDragDrop::DragEnd()
|
|
|
{
|
|
{
|
|
|
SharedPtr<UIDragObject> dragObject = dragObject_;
|
|
SharedPtr<UIDragObject> dragObject = dragObject_;
|
|
|
SharedPtr<UIWidget> currentTargetWidget(currentTargetWidget_);
|
|
SharedPtr<UIWidget> currentTargetWidget(currentTargetWidget_);
|
|
|
- SharedPtr<UIWidget> dragSourceWidget(dragSourceWidget_);
|
|
|
|
|
|
|
|
|
|
// clean up
|
|
// clean up
|
|
|
currentTargetWidget_ = 0;
|
|
currentTargetWidget_ = 0;
|
|
|
dragObject_ = 0;
|
|
dragObject_ = 0;
|
|
|
- dragSourceWidget_ = 0;
|
|
|
|
|
dragLayout_->SetVisibility(UI_WIDGET_VISIBILITY_GONE);
|
|
dragLayout_->SetVisibility(UI_WIDGET_VISIBILITY_GONE);
|
|
|
|
|
|
|
|
if (currentTargetWidget.Null())
|
|
if (currentTargetWidget.Null())
|
|
@@ -212,7 +210,7 @@ void UIDragDrop::HandleMouseMove(StringHash eventType, VariantMap& eventData)
|
|
|
// see if we have a widget
|
|
// see if we have a widget
|
|
|
TBWidget* tbw = TBWidget::hovered_widget;
|
|
TBWidget* tbw = TBWidget::hovered_widget;
|
|
|
|
|
|
|
|
- while(tbw && !tbw->GetDelegate())
|
|
|
|
|
|
|
+ while(tbw && (!tbw->GetDelegate() || tbw->IsOfType<TBLayout>()))
|
|
|
{
|
|
{
|
|
|
tbw = tbw->GetParent();
|
|
tbw = tbw->GetParent();
|
|
|
}
|
|
}
|