anchor.diff:    //because we would not like to delay Click just to make sure it is single.
     //On the ther hand it does no harm to call Click first
     if (Button = mbLeft)
  -  and Assigned(fOnDoubleClick)
  -  and (GetTimeSince(fTimeOfLastClick) <= GetDoubleClickTime) then
  +    and Assigned(fOnDoubleClick)
  +    and KMSamePoint(fLastClickPos, KMPoint(X,Y))
  +    and (GetTimeSince(fTimeOfLastClick) <= GetDoubleClickTime) then
     begin
       fTimeOfLastClick := 0;
       fOnDoubleClick(Self);
  
positive.code:   fControlIndex := -1;
    AutoFocusable := True;
    HandleMouseWheelByDefault := True;
  
    if aParent <> nil then
      fID := aParent.fMasterControl.GetNextCtrlID
  
negative.code:     fClickHoldHandled: Boolean;
      fTimeOfLastMouseDown: Cardinal;
      fLastMouseDownButton: TMouseButton;
      fLastClickPos: TKMPoint;
  
      fOnClick: TNotifyEvent;
      fOnClickShift: TNotifyEventShift;
  