diff --git a/src/BackendPrefs.scala b/src/BackendPrefs.scala index b7d613a..319f6a3 100644 --- a/src/BackendPrefs.scala +++ b/src/BackendPrefs.scala @@ -12,6 +12,9 @@ import android.widget.Toast class BackendPrefs extends PreferenceActivity with OnSharedPreferenceChangeListener with PermissionHelper { + + val BACKEND_PERMISSION = 1000 + def loadXml() { val prefs = new PrefsWrapper(this) addPreferencesFromResource(R.xml.backend) @@ -22,6 +25,10 @@ class BackendPrefs extends PreferenceActivity hookPasscode() hookGpsPermission() } + val perms = AprsBackend.defaultBackendPermissions(prefs) + if (perms.nonEmpty) { + checkPermissions(perms.toArray, BACKEND_PERMISSION) + } } def hookPasscode(): Unit = { @@ -71,7 +78,11 @@ class BackendPrefs extends PreferenceActivity override def getActionName(action: Int): Int = R.string.p_conn_kwd_gps override def onAllPermissionsGranted(action: Int): Unit = { - findPreference("kenwood.gps").asInstanceOf[CheckBoxPreference].setChecked(true) + action match { + case REQUEST_GPS => + findPreference("kenwood.gps").asInstanceOf[CheckBoxPreference].setChecked(true) + case _ => + } } override def onPermissionsFailedCancel(action: Int): Unit = { // nop