Replace the use of WindowAndroid with Tab in permissions code.
The WindowAndroid that a tab is associated with can change due to
reparenting (e.g. moving from a Chrome Custom Tab to the Chrome
Activity). It is not safe to cache the window.
This CL mostly replaces WindowAndroid references in permissions code to
references to Tab, with a late-as-possible getting of WindowAndroid only
when it is needed.
It also renames instances of content settings vectors to content
settings types vectors for clarity.
BUG=
658125
TBR=sergeyu@chromium.org
Committed:
https://crrev.com/491d3509af0f0ba16bca665a91014c9d8aeb2b80
Cr-Commit-Position: refs/heads/master@{#432309}