From b505eb331ea8ae335aa4bfe5f0f5817e801027e2 Mon Sep 17 00:00:00 2001 From: Juha Heinanen Date: Fri, 26 Oct 2018 13:48:18 +0300 Subject: [PATCH] added dialpad button to choose between text and phone number soft keyboard --- app/build.gradle | 2 +- .../kotlin/com/tutpro/baresip/MainActivity.kt | 17 +++++++++++++++++ app/src/main/res/drawable/dialpad_off.xml | 5 +++++ app/src/main/res/drawable/dialpad_on.xml | 5 +++++ app/src/main/res/layout/activity_main.xml | 13 ++++++++++++- 5 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 app/src/main/res/drawable/dialpad_off.xml create mode 100644 app/src/main/res/drawable/dialpad_on.xml diff --git a/app/build.gradle b/app/build.gradle index a91b88ec..257fbd8e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -8,7 +8,7 @@ android { minSdkVersion 21 targetSdkVersion 27 versionCode = 29 - versionName = '3.1.2' + versionName = '3.2.0' externalNativeBuild { cmake { cFlags '-DHAVE_INTTYPES_H' diff --git a/app/src/main/kotlin/com/tutpro/baresip/MainActivity.kt b/app/src/main/kotlin/com/tutpro/baresip/MainActivity.kt index 996cadc5..49b6ceb3 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/MainActivity.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/MainActivity.kt @@ -22,6 +22,7 @@ import android.support.v4.content.LocalBroadcastManager import android.support.v7.view.menu.ActionMenuItemView import android.view.inputmethod.InputMethodManager import android.text.Editable +import android.text.InputType import android.text.TextWatcher import android.widget.RelativeLayout import android.widget.* @@ -46,6 +47,7 @@ class MainActivity : AppCompatActivity() { internal lateinit var contactsButton: ImageButton internal lateinit var messagesButton: ImageButton internal lateinit var callsButton: ImageButton + internal lateinit var dialpadButton: ImageButton internal lateinit var dtmf: EditText internal lateinit var uaAdapter: UaSpinnerAdapter internal lateinit var aorSpinner: Spinner @@ -86,6 +88,7 @@ class MainActivity : AppCompatActivity() { contactsButton = findViewById(R.id.contactsButton) as ImageButton messagesButton = findViewById(R.id.messagesButton) as ImageButton callsButton = findViewById(R.id.callsButton) as ImageButton + dialpadButton = findViewById(R.id.dialpadButton) as ImageButton am = getSystemService(Context.AUDIO_SERVICE) as AudioManager val rtUri = RingtoneManager.getActualDefaultRingtoneUri(applicationContext, @@ -345,6 +348,20 @@ class MainActivity : AppCompatActivity() { } } + dialpadButton.tag = "off" + dialpadButton.setOnClickListener { + if (dialpadButton.tag == "off") { + callUri.inputType = InputType.TYPE_CLASS_PHONE + dialpadButton.setImageResource(R.drawable.dialpad_on) + dialpadButton.tag = "on" + } else { + callUri.inputType = InputType.TYPE_CLASS_TEXT + + InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS + dialpadButton.setImageResource(R.drawable.dialpad_off) + dialpadButton.tag = "off" + } + } + baresipService = Intent(this@MainActivity, BaresipService::class.java) if (!BaresipService.IS_SERVICE_RUNNING) { baresipService.setAction("Start") diff --git a/app/src/main/res/drawable/dialpad_off.xml b/app/src/main/res/drawable/dialpad_off.xml new file mode 100644 index 00000000..16129c52 --- /dev/null +++ b/app/src/main/res/drawable/dialpad_off.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/dialpad_on.xml b/app/src/main/res/drawable/dialpad_on.xml new file mode 100644 index 00000000..8793b80b --- /dev/null +++ b/app/src/main/res/drawable/dialpad_on.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index fe100638..ddd5e79d 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -94,7 +94,6 @@ android:visibility="invisible" > - + + +