uno icon indicating copy to clipboard operation
uno copied to clipboard

[Skia] `TreeView` on drag enter NRE

Open morning4coffe-dev opened this issue 7 months ago • 1 comments

Current behavior

When randomly dragging items in TreeView multiple times, the OnDragEnter causes NRE draggedOverNode was null: image

Expected behavior

No response

How to reproduce it (as minimally and precisely as possible)

  1. Create a new project with TreeView control:
      <TreeView x:Name="TreeViewControl">
        <TreeView.ItemTemplate>
          <DataTemplate>
            <TreeViewItem ItemsSource="{Binding Children}"
                          Content="{Binding Name}" />
          </DataTemplate>
        </TreeView.ItemTemplate>
      </TreeView>
        TreeViewControl.ItemsSource = new ObservableCollection<TreeViewItemModel>
        {
            new TreeViewItemModel
            {
                Name = "Root 1",
                Children = new ObservableCollection<TreeViewItemModel>
                {
                    new TreeViewItemModel { Name = "Child 1.1" },
                    new TreeViewItemModel { Name = "Child 1.2" }
                }
            },
            new TreeViewItemModel
            {
                Name = "Root 2",
                Children = new ObservableCollection<TreeViewItemModel>
                {
                    new TreeViewItemModel { Name = "Child 2.1" }
                }
            }
        };

    public class TreeViewItemModel
    {
        public string Name { get; set; }
        public ObservableCollection<TreeViewItemModel> Children { get; set; } = new ObservableCollection<TreeViewItemModel>();
    }
  1. Try to drag the Item multiple times between nodes, it randomly results in NRE

Workaround

No response

Works on UWP/WinUI

None

Environment

No response

NuGet package version(s)

Uno.WinUI 5.4.0-dev.121

Affected platforms

Skia (WPF), Skia (Linux X11), Skia (macOS), Skia (Linux Framebuffer), Skia (GTK)

IDE

No response

IDE version

No response

Relevant plugins

No response

Anything else we need to know?

No response

morning4coffe-dev avatar Jun 28 '24 08:06 morning4coffe-dev