forked from upstream-mirrors/OpenTracks
Bugfix: request permissions in TrackListActivity.
Introduced in 9d64989ef1
This commit is contained in:
@@ -70,6 +70,7 @@ import de.dennisguse.opentracks.ui.util.ActivityUtils;
|
|||||||
import de.dennisguse.opentracks.ui.util.ListItemUtils;
|
import de.dennisguse.opentracks.ui.util.ListItemUtils;
|
||||||
import de.dennisguse.opentracks.util.IntentDashboardUtils;
|
import de.dennisguse.opentracks.util.IntentDashboardUtils;
|
||||||
import de.dennisguse.opentracks.util.IntentUtils;
|
import de.dennisguse.opentracks.util.IntentUtils;
|
||||||
|
import de.dennisguse.opentracks.util.PermissionUtils;
|
||||||
import de.dennisguse.opentracks.util.StringUtils;
|
import de.dennisguse.opentracks.util.StringUtils;
|
||||||
import de.dennisguse.opentracks.util.TrackIconUtils;
|
import de.dennisguse.opentracks.util.TrackIconUtils;
|
||||||
|
|
||||||
@@ -163,6 +164,8 @@ public class TrackListActivity extends AbstractTrackDeleteActivity implements Co
|
|||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
setDefaultKeyMode(DEFAULT_KEYS_SEARCH_LOCAL);
|
setDefaultKeyMode(DEFAULT_KEYS_SEARCH_LOCAL);
|
||||||
|
|
||||||
|
requestRequiredPermissions();
|
||||||
|
|
||||||
trackRecordingServiceConnection = new TrackRecordingServiceConnection(bindChangedCallback);
|
trackRecordingServiceConnection = new TrackRecordingServiceConnection(bindChangedCallback);
|
||||||
|
|
||||||
viewBinding.trackList.setEmptyView(viewBinding.trackListEmptyView);
|
viewBinding.trackList.setEmptyView(viewBinding.trackListEmptyView);
|
||||||
@@ -259,6 +262,16 @@ public class TrackListActivity extends AbstractTrackDeleteActivity implements Co
|
|||||||
loadData(getIntent());
|
loadData(getIntent());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void requestRequiredPermissions() {
|
||||||
|
if (!PermissionUtils.hasGPSPermission(this)) {
|
||||||
|
PermissionUtils.requestGPSPermission(this, null, () -> Toast.makeText(this, R.string.permission_gps_failed, Toast.LENGTH_SHORT).show());
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!PermissionUtils.hasBluetoothPermissions(this)) {
|
||||||
|
PermissionUtils.requestBluetoothPermission(this, null, null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onStart() {
|
protected void onStart() {
|
||||||
super.onStart();
|
super.onStart();
|
||||||
|
|||||||
@@ -131,8 +131,6 @@ public class TrackRecordingActivity extends AbstractActivity implements ChooseAc
|
|||||||
viewBinding.trackDetailActivityViewPager.setCurrentItem(savedInstanceState.getInt(CURRENT_TAB_TAG_KEY));
|
viewBinding.trackDetailActivityViewPager.setCurrentItem(savedInstanceState.getInt(CURRENT_TAB_TAG_KEY));
|
||||||
}
|
}
|
||||||
|
|
||||||
requestGPSPermissions();
|
|
||||||
|
|
||||||
viewBinding.trackRecordingFabAction.setImageResource(R.drawable.ic_baseline_stop_24);
|
viewBinding.trackRecordingFabAction.setImageResource(R.drawable.ic_baseline_stop_24);
|
||||||
viewBinding.trackRecordingFabAction.setBackgroundTintList(ContextCompat.getColorStateList(this, R.color.opentracks_secondary_color));
|
viewBinding.trackRecordingFabAction.setBackgroundTintList(ContextCompat.getColorStateList(this, R.color.opentracks_secondary_color));
|
||||||
viewBinding.trackRecordingFabAction.setBackgroundColor(getResources().getColor(R.color.opentracks_secondary_color));
|
viewBinding.trackRecordingFabAction.setBackgroundColor(getResources().getColor(R.color.opentracks_secondary_color));
|
||||||
@@ -371,14 +369,6 @@ public class TrackRecordingActivity extends AbstractActivity implements ChooseAc
|
|||||||
setScreenOnPolicy();
|
setScreenOnPolicy();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void requestGPSPermissions() {
|
|
||||||
if (PermissionUtils.hasGPSPermission(this)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
PermissionUtils.requestGPSPermission(this, null, () -> Toast.makeText(this, R.string.permission_gps_failed, Toast.LENGTH_SHORT).show());
|
|
||||||
}
|
|
||||||
|
|
||||||
private void onGpsStatusChanged(GpsStatusValue gpsStatusValue) {
|
private void onGpsStatusChanged(GpsStatusValue gpsStatusValue) {
|
||||||
if (gpsStatusValue.isGpsStarted() && snackbar != null && snackbar.isShown()) {
|
if (gpsStatusValue.isGpsStarted() && snackbar != null && snackbar.isShown()) {
|
||||||
snackbar.dismiss();
|
snackbar.dismiss();
|
||||||
|
|||||||
Reference in New Issue
Block a user