• Ian Prest's avatar
    Fire UIA focus event, and add UIA test pass · 61d99852
    Ian Prest authored
    1. Added `BrowserAccessibilityManagerWin::FireUiaAccessibilityEvent`.
    -- New function, modelled on `FireWinAccessibilityEvent`.
    -- Both functions now examine the experimental UIA flag.
    
    2. Fire the `UIA_AutomationFocusChangedEventId` event when appropriate.
    
    3. Refactored the test "pass" logic in `DumpAccessibilityTestBase` to
    run a test pass for each tree-formatter factory method that is returned
    by `AccessibilityEventRecorder::GetTestPasses`.
    -- This allows each platform to run a different set of test passes.
    
    4. Added a third pass for tests on Windows to test UIA.
    -- They look for files with the "-expected-win-uia.txt" suffix.
    -- This allows us to provide expected results for UIA events separately
    from MSAA events.
    
    5. All existing Windows/MSAA tests that had `EVENT_OBJECT_FOCUS` events
    were enabled for the new UIA pass.
    -- We'll enable the remaining tests as more UIA events are added.
    
    6. Since you can't simultaneously listen to both MSAA and UIA events,
    a new event-recorder `AccessibilityEventRecorderUia` was needed to
    record UIA events.
    -- Heavily based on existing class `AccessibilityEventRecorderWin`.
    
    Bug: 928949
    
    Change-Id: Ic4fde227c8f5674a915c0d30eb05151f3250a704
    Reviewed-on: https://chromium-review.googlesource.com/c/1474976
    Commit-Queue: Ian Prest <iapres@microsoft.com>
    Reviewed-by: default avatarDominic Mazzoni <dmazzoni@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#634359}
    61d99852
listbox-focus-expected-win-uia.txt 50 Bytes