As described in #109, the performance of targeting elements was not optimal. This change replaces the use of a low-level mouse hook for monitoring the cursor position with a loop in a separate thread that polls the cursor position every 60ms. This results in much better targeting performance.
This change also stops monitoring the Target element's properies in AutomationPropertiesWatcher (addressing this PR comment) since the cursor polling loop already updates the target elements every 60ms.
As described in #109, the performance of targeting elements was not optimal. This change replaces the use of a low-level mouse hook for monitoring the cursor position with a loop in a separate thread that polls the cursor position every 60ms. This results in much better targeting performance.
This change also stops monitoring the Target element's properies in AutomationPropertiesWatcher (addressing this PR comment) since the cursor polling loop already updates the target elements every 60ms.