Process attribute changes in AXObjectCache after layout is clean.

Processing attribute changes can cause AXObjects to get created,
which can cause crashes if layout is not clean.

Also, check that nodes do not need distribution updates before
processing attribute changes.

Bug: 835455
Change-Id: Ibf7a3d0e2d7befe53e43096e6d0414a5623e8885
Reviewed-on: https://chromium-review.googlesource.com/c/1324530
Commit-Queue: Alice Boxhall <aboxhall@chromium.org>
Reviewed-by: Nektarios Paisios <nektar@chromium.org>
Reviewed-by: Keishi Hattori <keishi@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#607134}
3 files changed