Show the Android Location Settings Dialog when sites want permission.

The Location Settings Dialog (LSD) will be shown when sites which have
location permission request location, but the device has location
switched off.

BUG=673201

Review-Url: https://codereview.chromium.org/2721293002
Cr-Commit-Position: refs/heads/master@{#454708}
diff --git a/chrome/browser/android/location_settings_impl.cc b/chrome/browser/android/location_settings_impl.cc
index 5ddf275..63595af 100644
--- a/chrome/browser/android/location_settings_impl.cc
+++ b/chrome/browser/android/location_settings_impl.cc
@@ -17,13 +17,23 @@
 
 LocationSettingsImpl::~LocationSettingsImpl() {}
 
-bool LocationSettingsImpl::CanSitesRequestLocationPermission(
+bool LocationSettingsImpl::HasAndroidLocationPermission() {
+  JNIEnv* env = AttachCurrentThread();
+  return Java_LocationSettings_hasAndroidLocationPermission(env);
+}
+
+bool LocationSettingsImpl::CanPromptForAndroidLocationPermission(
     content::WebContents* web_contents) {
   JNIEnv* env = AttachCurrentThread();
-  return Java_LocationSettings_canSitesRequestLocationPermission(
+  return Java_LocationSettings_canPromptForAndroidLocationPermission(
       env, web_contents->GetJavaWebContents());
 }
 
+bool LocationSettingsImpl::IsSystemLocationSettingEnabled() {
+  JNIEnv* env = AttachCurrentThread();
+  return Java_LocationSettings_isSystemLocationSettingEnabled(env);
+}
+
 bool LocationSettingsImpl::CanPromptToEnableSystemLocationSetting() {
   JNIEnv* env = AttachCurrentThread();
   return Java_LocationSettings_canPromptToEnableSystemLocationSetting(env);