public bool IsSamePoint(MouseReferenceInfo other) => other.virtualSpaces == virtualSpaces && other.position == position && other.versionNumber == versionNumber;
bool CanClick(MouseEventArgs e, MouseReferenceInfo? newRef) { if (newRef == null || !newRef.Value.IsClickable) return false; if (clickedRef == null) return true; if (!clickedRef.Value.IsClickable) return false; return clickedRef.Value.IsSamePoint(newRef.Value); }