- simplified dtmf watcher implementation
This commit is contained in:
@@ -16,7 +16,6 @@ import android.os.CountDownTimer
|
|||||||
import android.support.v4.content.LocalBroadcastManager
|
import android.support.v4.content.LocalBroadcastManager
|
||||||
import android.view.inputmethod.InputMethodManager
|
import android.view.inputmethod.InputMethodManager
|
||||||
import android.text.InputType
|
import android.text.InputType
|
||||||
import android.text.TextWatcher
|
|
||||||
import android.widget.*
|
import android.widget.*
|
||||||
import android.view.*
|
import android.view.*
|
||||||
|
|
||||||
@@ -304,8 +303,6 @@ class MainActivity : AppCompatActivity() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
dtmf.tag = ArrayList<TextWatcher>()
|
|
||||||
|
|
||||||
infoButton.setOnClickListener {
|
infoButton.setOnClickListener {
|
||||||
val ua = UserAgent.uas()[aorSpinner.selectedItemPosition]
|
val ua = UserAgent.uas()[aorSpinner.selectedItemPosition]
|
||||||
val calls = Call.uaCalls(ua,"")
|
val calls = Call.uaCalls(ua,"")
|
||||||
@@ -646,7 +643,8 @@ class MainActivity : AppCompatActivity() {
|
|||||||
dtmf.hint = "DTMF"
|
dtmf.hint = "DTMF"
|
||||||
dtmf.visibility = View.VISIBLE
|
dtmf.visibility = View.VISIBLE
|
||||||
dtmf.requestFocus()
|
dtmf.requestFocus()
|
||||||
(dtmf.tag as ArrayList<TextWatcher>).add(call.dtmfWatcher!!)
|
for (c in BaresipService.calls)
|
||||||
|
dtmf.removeTextChangedListener(c.dtmfWatcher)
|
||||||
dtmf.addTextChangedListener(call.dtmfWatcher)
|
dtmf.addTextChangedListener(call.dtmfWatcher)
|
||||||
infoButton.visibility = View.VISIBLE
|
infoButton.visibility = View.VISIBLE
|
||||||
}
|
}
|
||||||
@@ -745,11 +743,6 @@ class MainActivity : AppCompatActivity() {
|
|||||||
showCall(ua)
|
showCall(ua)
|
||||||
}
|
}
|
||||||
"call closed" -> {
|
"call closed" -> {
|
||||||
val watchers = dtmf.tag as ArrayList<TextWatcher>
|
|
||||||
if (watchers.size > 0) {
|
|
||||||
dtmf.removeTextChangedListener(watchers[0])
|
|
||||||
watchers.removeAt(0)
|
|
||||||
}
|
|
||||||
if (ua == UserAgent.uas()[aorSpinner.selectedItemPosition]) {
|
if (ua == UserAgent.uas()[aorSpinner.selectedItemPosition]) {
|
||||||
showCall(ua)
|
showCall(ua)
|
||||||
if (ua.account.missedCalls)
|
if (ua.account.missedCalls)
|
||||||
@@ -1114,6 +1107,9 @@ class MainActivity : AppCompatActivity() {
|
|||||||
holdButton.visibility = View.VISIBLE
|
holdButton.visibility = View.VISIBLE
|
||||||
dtmf.visibility = View.VISIBLE
|
dtmf.visibility = View.VISIBLE
|
||||||
dtmf.requestFocus()
|
dtmf.requestFocus()
|
||||||
|
for (c in BaresipService.calls)
|
||||||
|
dtmf.removeTextChangedListener(c.dtmfWatcher)
|
||||||
|
dtmf.addTextChangedListener(call.dtmfWatcher)
|
||||||
infoButton.visibility = View.VISIBLE
|
infoButton.visibility = View.VISIBLE
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user