Browse Source

Merge pull request #10830 from ltetak/fix_drag_resize

DataGrid column resize near edge fix
pull/10874/head
Max Katz 4 years ago
committed by GitHub
parent
commit
269d18e063
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 11
      src/Avalonia.Controls.DataGrid/DataGridColumnHeader.cs

11
src/Avalonia.Controls.DataGrid/DataGridColumnHeader.cs

@ -440,13 +440,10 @@ namespace Avalonia.Controls
}
Debug.Assert(OwningGrid.Parent is InputElement);
double distanceFromLeft = mousePosition.X;
double distanceFromRight = Bounds.Width - distanceFromLeft;
OnMouseMove_Resize(ref handled, mousePositionHeaders);
OnMouseMove_Reorder(ref handled, mousePosition, mousePositionHeaders, distanceFromLeft, distanceFromRight);
OnMouseMove_Reorder(ref handled, mousePosition, mousePositionHeaders);
SetDragCursor(mousePosition);
}
@ -716,7 +713,7 @@ namespace Avalonia.Controls
}
//TODO DragEvents
private void OnMouseMove_Reorder(ref bool handled, Point mousePosition, Point mousePositionHeaders, double distanceFromLeft, double distanceFromRight)
private void OnMouseMove_Reorder(ref bool handled, Point mousePosition, Point mousePositionHeaders)
{
if (handled)
{
@ -724,7 +721,7 @@ namespace Avalonia.Controls
}
//handle entry into reorder mode
if (_dragMode == DragMode.MouseDown && _dragColumn == null && _lastMousePositionHeaders != null && (distanceFromRight > DATAGRIDCOLUMNHEADER_resizeRegionWidth && distanceFromLeft > DATAGRIDCOLUMNHEADER_resizeRegionWidth))
if (_dragMode == DragMode.MouseDown && _dragColumn == null && _lastMousePositionHeaders != null)
{
var distanceFromInitial = (Vector)(mousePositionHeaders - _lastMousePositionHeaders);
if (distanceFromInitial.Length > DATAGRIDCOLUMNHEADER_columnsDragTreshold)

Loading…
Cancel
Save