Reland "wm: Update nested activation handling"

This is a reland of ecde845099001740fee119a82d45664e622d0ade

Original change's description:
> wm: Update nested activation handling
>
> - NOTREACHED() and no-ope if the nested activation wants to change
>   to a different active window other than the one being activated;
> - Allow focus shift in nested activations as long as they don't
>   change the window to be activated
>
> Bug: 908524
> Test: FocusControllerApiTest.ActivateWhileActivating
> Change-Id: I105c85bf2671c7e396fdcbedff7b8082f007f642
> Reviewed-on: https://chromium-review.googlesource.com/c/1357017
> Reviewed-by: Scott Violet <sky@chromium.org>
> Reviewed-by: Mitsuru Oshima (gardener - slow) <oshima@chromium.org>
> Commit-Queue: Xiyuan Xia <xiyuan@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#616346}

Bug: 908524, 914915
Change-Id: Id0072941bfb0def54f093bcb771b2d8485c9b04e
Reviewed-on: https://chromium-review.googlesource.com/c/1376726
Reviewed-by: Scott Violet <sky@chromium.org>
Commit-Queue: Xiyuan Xia <xiyuan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#616496}
3 files changed