From 7865aa93f6525a6f6b4505c6b1152f85e88afaa7 Mon Sep 17 00:00:00 2001 From: tibbi Date: Fri, 30 Nov 2018 16:53:58 +0100 Subject: [PATCH] adding a helper function for launching the setDefaultDialer intent --- .../contacts/pro/activities/DialerActivity.kt | 3 +-- .../contacts/pro/activities/DialpadActivity.kt | 4 +--- .../contacts/pro/activities/SimpleActivity.kt | 10 ++++++++++ 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/DialerActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/DialerActivity.kt index 099bbd5c..39ce6b69 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/DialerActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/DialerActivity.kt @@ -27,8 +27,7 @@ class DialerActivity : SimpleActivity() { // make sure Simple Contacts is the default Phone app before initiating an outgoing call if (!isDefaultDialer()) { - val intent = Intent(TelecomManager.ACTION_CHANGE_DEFAULT_DIALER).putExtra(TelecomManager.EXTRA_CHANGE_DEFAULT_DIALER_PACKAGE_NAME, packageName) - startActivityForResult(intent, REQUEST_CODE_SET_DEFAULT_DIALER) + launchSetDefaultDialerIntent() } else { initOutgoingCall() } diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/DialpadActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/DialpadActivity.kt index c368aeb1..f6250e0d 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/DialpadActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/DialpadActivity.kt @@ -7,7 +7,6 @@ import android.net.Uri import android.os.Build import android.os.Bundle import android.provider.Telephony.Sms.Intents.SECRET_CODE_ACTION -import android.telecom.TelecomManager import android.telephony.TelephonyManager import android.view.KeyEvent import android.view.Menu @@ -151,8 +150,7 @@ class DialpadActivity : SimpleActivity() { if (isDefaultDialer()) { getSystemService(TelephonyManager::class.java).sendDialerSpecialCode(secretCode) } else { - val intent = Intent(TelecomManager.ACTION_CHANGE_DEFAULT_DIALER).putExtra(TelecomManager.EXTRA_CHANGE_DEFAULT_DIALER_PACKAGE_NAME, packageName) - startActivityForResult(intent, REQUEST_CODE_SET_DEFAULT_DIALER) + launchSetDefaultDialerIntent() } } else { val intent = Intent(SECRET_CODE_ACTION, Uri.parse("android_secret_code://$secretCode")) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/SimpleActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/SimpleActivity.kt index 26858bb3..63ac285a 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/SimpleActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/SimpleActivity.kt @@ -1,10 +1,14 @@ package com.simplemobiletools.contacts.pro.activities +import android.annotation.TargetApi import android.content.ContentValues import android.content.Intent +import android.os.Build +import android.telecom.TelecomManager import com.simplemobiletools.commons.activities.BaseSimpleActivity import com.simplemobiletools.contacts.pro.R import com.simplemobiletools.contacts.pro.helpers.KEY_PHONE +import com.simplemobiletools.contacts.pro.helpers.REQUEST_CODE_SET_DEFAULT_DIALER open class SimpleActivity : BaseSimpleActivity() { override fun getAppIconIDs() = arrayListOf( @@ -47,4 +51,10 @@ open class SimpleActivity : BaseSimpleActivity() { } return null } + + @TargetApi(Build.VERSION_CODES.M) + protected fun launchSetDefaultDialerIntent() { + val intent = Intent(TelecomManager.ACTION_CHANGE_DEFAULT_DIALER).putExtra(TelecomManager.EXTRA_CHANGE_DEFAULT_DIALER_PACKAGE_NAME, packageName) + startActivityForResult(intent, REQUEST_CODE_SET_DEFAULT_DIALER) + } }