From d024bc7551a582256e739eaebf840d4834e8a7c6 Mon Sep 17 00:00:00 2001 From: tibbi Date: Thu, 27 Sep 2018 15:09:01 +0200 Subject: [PATCH] add a Call button at the dialpad activity --- .../contacts/activities/DialpadActivity.kt | 16 +++++++++++++ app/src/main/res/layout/activity_dialpad.xml | 24 +++++++++++++------ 2 files changed, 33 insertions(+), 7 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/DialpadActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/DialpadActivity.kt index b21abeeb..251e1001 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/activities/DialpadActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/activities/DialpadActivity.kt @@ -13,9 +13,11 @@ import com.simplemobiletools.commons.extensions.* import com.simplemobiletools.commons.helpers.isLollipopPlus import com.simplemobiletools.contacts.R import com.simplemobiletools.contacts.adapters.ContactsAdapter +import com.simplemobiletools.contacts.dialogs.CallConfirmationDialog import com.simplemobiletools.contacts.extensions.afterTextChanged import com.simplemobiletools.contacts.extensions.callContact import com.simplemobiletools.contacts.extensions.config +import com.simplemobiletools.contacts.extensions.startCallIntent import com.simplemobiletools.contacts.helpers.ContactsHelper import com.simplemobiletools.contacts.helpers.KEY_PHONE import com.simplemobiletools.contacts.helpers.LOCATION_DIALPAD @@ -42,6 +44,7 @@ class DialpadActivity : SimpleActivity() { dialpad_hashtag.setOnClickListener { dialpadPressed("#", it) } dialpad_clear_char.setOnClickListener { clearChar(it) } dialpad_clear_char.setOnLongClickListener { clearInput(); true } + dialpad_call_button.setOnClickListener { initCall() } dialpad_input.afterTextChanged { dialpadValueChanged(it) } ContactsHelper(this).getContacts { gotContacts(it) } disableKeyboardPopping() @@ -143,4 +146,17 @@ class DialpadActivity : SimpleActivity() { dialpad_fastscroller.updateBubbleText(item?.getBubbleText() ?: "") } } + + private fun initCall() { + val number = dialpad_input.value + if (number.isNotEmpty()) { + if (config.showCallConfirmation) { + CallConfirmationDialog(this, number) { + startCallIntent(number) + } + } else { + startCallIntent(number) + } + } + } } diff --git a/app/src/main/res/layout/activity_dialpad.xml b/app/src/main/res/layout/activity_dialpad.xml index acae2500..175b22f5 100644 --- a/app/src/main/res/layout/activity_dialpad.xml +++ b/app/src/main/res/layout/activity_dialpad.xml @@ -2,12 +2,10 @@ + app:layout_constraintStart_toStartOf="parent"/> @@ -205,9 +202,22 @@ android:layout_height="wrap_content" android:layout_marginRight="@dimen/activity_margin" android:text="#" - app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintBottom_toTopOf="@+id/dialpad_call_button" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.5" app:layout_constraintStart_toEndOf="@+id/dialpad_0"/> + +