Briefly, this beta release brings two features and several bug fixes:
The Keyboard property works, of course, with keys (for example, you could press Shift, send characters and release Shift). The Mouse property provides us with various clicks (this does not use handles, so that a window of your interest should be foreground).
Clicks that work via handles have been moved to the Control property:
$element.Click() -> $element.Control.Click()
$element.InvokeContextMenu() -> $element.Control.InvokeContextMenu()
I feel sorry to early adopters who could start using this, but a lot of properties directly on an automation element was a nightmare.
2) new logging. After moving to AOP, more and more possibilities are open. The new logger writes how cmdlets were called, with their parameters. String, int, bool (switch parameter) are represented as is. Automation elements are shown as hashtables. I hope that this logging will be much more useful in troubleshooting, for example, by analyzing what automation elements were passed to a cmdlet.
Now, new logging supports the most of cmdlets and properties and methods of the new object model. By default, it’s UIA.log in the Documents folder.
3) the Invoke-UiaWizard cmdlet became faster and much more reliable
4) the Invoke-UiaControlContextMenu cmdlet and the $element.Control.InvokeContextMenu() method have been working in not all situations, fixed
5) some more fixes I’m unable to remember what has been fixed in (getting controls in some situations that I found during writing of unit tests).