Factor common code into native_viewport_controller.cc

The platform-specific implementations of NativeViewport have a bunch of
duplicated code. This CL centralizes that code in the cross-platform
controller class.

R=ben@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@233511 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 233511