Make sure immersive state is always correct

added UpdateImmersiveMode() which updates the immersive mode
with the latest status and use it everywhere.

This fixes the issue with activation.

BUG=832765
TEST=covered by unit test.

Change-Id: If1842e523d601dfba40973f5bf62459a7f7f86a6
Reviewed-on: https://chromium-review.googlesource.com/1012993
Commit-Queue: Mitsuru Oshima <oshima@chromium.org>
Reviewed-by: Sammie Quon <sammiequon@chromium.org>
Reviewed-by: Ben Wells <benwells@chromium.org>
Cr-Commit-Position: refs/heads/master@{#551056}
5 files changed