From 9d9eaef88d00abe57fc036023e462ed94412a251 Mon Sep 17 00:00:00 2001
From: adrienmalin <41926238+adrienmalin@users.noreply.github.com>
Date: Fri, 7 Dec 2018 17:10:50 +0100
Subject: [PATCH] Fix STT stopping after 5s of silence

---
 app/src/main/java/adrienmalin/pingpoints/SttDialog.kt  | 10 ++++++----
 .../java/adrienmalin/pingpoints/VictoryActivity.kt     |  2 +-
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/app/src/main/java/adrienmalin/pingpoints/SttDialog.kt b/app/src/main/java/adrienmalin/pingpoints/SttDialog.kt
index 3481ef5..55ad558 100644
--- a/app/src/main/java/adrienmalin/pingpoints/SttDialog.kt
+++ b/app/src/main/java/adrienmalin/pingpoints/SttDialog.kt
@@ -56,6 +56,7 @@ class SttDialog : DialogFragment() {
                                 }
                             }
                         }
+                        partialResultsTextView?.text = getString(R.string.not_understood)
                         onError(ERROR_NOT_UNDERSTOOD)
                     }
                 }
@@ -63,15 +64,17 @@ class SttDialog : DialogFragment() {
         }
 
         override fun onError(errorCode: Int) {
-            partialResultsTextView?.text = getString(R.string.not_understood)
-            stt?.startListening(sttIntent)
+            stt = SpeechRecognizer.createSpeechRecognizer(activity).apply {
+                setRecognitionListener(SttListener())
+                startListening(sttIntent)
+            }
         }
 
-        override fun onEvent(arg0: Int, arg1: Bundle?) {}
         override fun onReadyForSpeech(arg0: Bundle?) {}
         override fun onBeginningOfSpeech() {}
         override fun onBufferReceived(buffer: ByteArray?) {}
         override fun onEndOfSpeech() {}
+        override fun onEvent(arg0: Int, arg1: Bundle?) {}
     }
 
     override fun onCreateDialog(savedInstanceState: Bundle?) = AlertDialog.Builder(activity).apply {
@@ -115,5 +118,4 @@ class SttDialog : DialogFragment() {
         stt?.stopListening()
         stt?.destroy()
     }
-
 }
\ No newline at end of file
diff --git a/app/src/main/java/adrienmalin/pingpoints/VictoryActivity.kt b/app/src/main/java/adrienmalin/pingpoints/VictoryActivity.kt
index 0e2889c..b310009 100644
--- a/app/src/main/java/adrienmalin/pingpoints/VictoryActivity.kt
+++ b/app/src/main/java/adrienmalin/pingpoints/VictoryActivity.kt
@@ -41,7 +41,7 @@ class VictoryActivity : AppCompatActivity() {
                     )
                 )
 
-                previousMatches = previousMatch.getString("previousMatches", "")
+                previousMatches = previousMatch.getString("previousMatches", "") ?: ""
                 previousMatch.edit().apply {
                     putString(
                         "previousMatches",