fix rotation of multiselect dragged item

This commit is contained in:
Tyfon
2024-07-09 01:09:05 -07:00
parent bf4faf5a8e
commit ccdd6f3c21
5 changed files with 21 additions and 10 deletions

View File

@@ -135,6 +135,11 @@ namespace UIFixes
public static void OnNewItemView(GridItemView itemView)
{
if (!itemView.IsSelectable())
{
return;
}
MultiSelectItemContext itemContext = SelectedItems.FirstOrDefault(x => x.Key.Item == itemView.Item).Key;
if (itemContext != null)
{
@@ -233,7 +238,7 @@ namespace UIFixes
MultiSelectItemContext multiSelectItemContext = SelectedItems.Keys.FirstOrDefault(c => c.Item == first.Item);
if (multiSelectItemContext != null)
{
multiSelectItemContext.SetPosition(first.CursorPosition, first.ItemPosition);
multiSelectItemContext.UpdateDragContext(first);
return result.Prepend(multiSelectItemContext);
}
}
@@ -461,6 +466,12 @@ namespace UIFixes
return new MultiSelectItemContext(ItemContextAbstractClass, ItemRotation);
}
public void UpdateDragContext(ItemContextClass itemContext)
{
SetPosition(itemContext.CursorPosition, itemContext.ItemPosition);
ItemRotation = itemContext.ItemRotation;
}
public override void Dispose()
{
base.Dispose();