Skip to content

Commit

Permalink
Merge pull request #314 from cyb3rko/fix-permission-blocking
Browse files Browse the repository at this point in the history
Fix blocking permission requests
  • Loading branch information
jmattheis authored Oct 3, 2023
2 parents 310b73a + 3390a2d commit 6dd5fe4
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 3 deletions.
2 changes: 1 addition & 1 deletion app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ dependencies {
implementation 'androidx.vectordrawable:vectordrawable:1.1.0'
implementation 'androidx.preference:preference-ktx:1.2.0'

implementation 'com.github.cyb3rko:QuickPermissions-Kotlin:1.0.2'
implementation 'com.github.cyb3rko:QuickPermissions-Kotlin:1.1.2'
implementation 'com.hypertrack:hyperlog:0.0.10'
implementation 'com.squareup.picasso:picasso:2.71828'
implementation 'io.noties.markwon:core:4.6.2'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ internal class InitializationActivity : AppCompatActivity() {
if (manager?.canScheduleExactAlarms() == true) {
tryAuthenticate()
} else {
stopSlashScreen()
alarmDialog()
}
}
Expand All @@ -108,8 +109,7 @@ internal class InitializationActivity : AppCompatActivity() {
}

private fun failed(exception: ApiException) {
splashScreenActive = false
setContentView(R.layout.splash)
stopSlashScreen()
when (exception.code) {
0 -> {
dialog(getString(R.string.not_available, settings.url))
Expand Down Expand Up @@ -195,6 +195,7 @@ internal class InitializationActivity : AppCompatActivity() {
val quickPermissionsOption = QuickPermissionsOptions(
handleRationale = true,
handlePermanentlyDenied = true,
preRationaleAction = { stopSlashScreen() },
rationaleMethod = { req -> processPermissionRationale(req) },
permissionsDeniedMethod = { req -> processPermissionRationale(req) },
permanentDeniedMethod = { req -> processPermissionsPermanentDenied(req) }
Expand All @@ -210,6 +211,11 @@ internal class InitializationActivity : AppCompatActivity() {
}
}

private fun stopSlashScreen() {
splashScreenActive = false
setContentView(R.layout.splash)
}

private fun processPermissionRationale(req: QuickPermissionsRequest) {
MaterialAlertDialogBuilder(this)
.setMessage(getString(R.string.permissions_notification_denied_temp))
Expand Down

0 comments on commit 6dd5fe4

Please sign in to comment.