Notify the browser when the page lost interest about gamepads

The page visibility logic used in NavigatorGamepad via DeviceEventControllerBase
assumes that we only want to tell the dispatcher that we are uninterested in
events if we have an event listener. For gamepad that is not perfect where the
the page can ask the gamepad state anytime via navigator.getGamepads().
This CL doesn't change visible behavior thus no tests. The enhancement is that
now we properly tell the browser that we are not intereseted in gamepads while
we are hidden so it can suspend the polling thread. Visibility related tests
should be added for gamepad though, I will do that later.

This is a fixed reland of r176618

BUG=386846
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/332183009

git-svn-id: svn://svn.chromium.org/blink/trunk@176789 bbb929c8-8fbe-4397-9dbb-9b2b20218538