Recent

Author Topic: Mouse.DragThreshold don't work in ATTabs  (Read 5092 times)

jamie

  • Hero Member
  • *****
  • Posts: 6130
Re: Mouse.DragThreshold don't work in ATTabs
« Reply #15 on: December 27, 2018, 02:15:42 am »
After reviewing this between Delphi and Lazarus behaviors I would say that if you depended on the
IsDragging in the past, you could have been doing it incorrectly?

 With Delphi if I use the "BeginDrag(False)" and then test for the button.Dragging it returns true while
in the MouseDownEvent. The Same happens in the LCL.

 In Delphi the MouseMove is skipped while dragging but in Lazarus it is called, so there is a benefit there.

 In Delphi when the DragOver is called, it is called at any time the control is Control.dragging is true, before or after the
threshold is reached. Here you can test the Control.Dragging and it does report if you are officially dragging.

 In Lazarus the DragOver event isn't called until the control enters the threshold. In which case the Control.Dragging will always be true.



 I do remember the code was reworked to match Delphi for dragging operations, I think you should adopt
your code to use the DrapOver event to make decisions instead of the MouseMove, since MouseMove does
not even fire in Delphi during in this operation.

 I am using an older version of Delphi but it should still be the same in that respect.

The only true wisdom is knowing you know nothing

AlexTP

  • Hero Member
  • *****
  • Posts: 2402
    • UVviewsoft
Re: Mouse.DragThreshold don't work in ATTabs
« Reply #16 on: December 31, 2018, 11:39:52 pm »
Thanks for hint with Delphi+MouseOver. I found it by miself too. So fixed Delphi dragging in ATTabs under Delphi.


 

TinyPortal © 2005-2018