@@ -9,6 +9,39 @@ available via the project downloads page. Changes in "revision" field indicate
99private releases checked into the prebuilts directory of the source tree, but
1010not made generally available on the downloads page.
1111
12+ v3.12.0.4
13+ =========
14+ * Updates to JavaScript automation atoms.
15+ * Use elementFromPoint for IE driver in determining obscured elements. This
16+ is in direct violation of the algorithm specified in the W3C WebDriver
17+ Specification, but it fixes a class of IE-specific bugs that present
18+ themselves when using elementsFromPoint. This is used to shortcut the use
19+ of elementsFromPoint if it is not necessary.
20+ * Added additional logging to IE driver for setting window focus.
21+ * Updated IE driver to use SendInput for a single input at a time. The IE
22+ driver uses the Windows `SendInput` API when a session is initiated with
23+ the `requireWindowFocus` capability. This is a low-level user input
24+ simulation API, and very closely mimics the use of a physical mouse and
25+ keyboard. One of the guarantees of the API is that when one sends an array
26+ of `INPUT` structures, then no input messages can be inserted into the
27+ middle of the input stream. However, it appears that there are cases where
28+ sending multiple input structures that IE does not process all of them.
29+ This leads to truncated or missing keys when using the Selenium sendKeys
30+ method. This change makes the driver use SendInput, but only passing a
31+ single INPUT structure at a time. This is dangerous, in that it allows
32+ other inputs to potentially be slipped into the input stream. This change
33+ makes the driver prefer one form of instability (potentially unwanted
34+ input events) over another (input events not processed by the browser).
35+
36+ Additionally, this change introduces an additional method for forcing the
37+ IE window into focus before sending input. This additional method uses the
38+ Windows UI Automation accessibility API to do this. The potential down
39+ side to using this (apparently) more reliable mechanism is that it may
40+ introduce a slight performance penalty, as the UI Automation API is
41+ notoriously slow. In practice, this performance penalty is observed to be
42+ on the order of milliseconds, so the trade-off here is deemed worth the
43+ risk, and there is no way to disable this new check.
44+
1245v3.12.0.3
1346=========
1447 * Refactored IE waiting for page load on click. This commit restores some
0 commit comments