Change visibility semantics for Instant.

Don't change the visibility of the active tab as the Instant preview
shows or hides. Instant previews should be considered transient a la the
omnibox drop down, and shouldn't affect the active tab's visibility
state. Also, now that we have SetInstantPreviewHeight(), this is a more
reasonable approach when the preview doesn't completely obscure the tab.

Also:

+ Remove the Hide() call when deleting the loader. This was only used in
  the past when there was a fade, and is not needed anymore. Instead,
  reset the state variables correctly.

+ Remove WasShown/WasHidden calls from BrowserInstantController. These
  are instead handled by the view code.

+ The "GetBackingStore called while hidden" DCHECK doesn't fire anymore,
  so enable a test on Windows.

BUG=101593,101922
R=sky@chromium.org,shishir@chromium.org
TEST=Instant works as usual. The preview gets visibility change events
as usual, but the underlying tab never gets a hidden event.

Review URL: https://chromiumcodereview.appspot.com/10959049

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@158613 0039d316-1c4b-4281-b951-d872f2087c98
7 files changed