From 8e41d346c269e887fb4b15b706b7db7da8816ac6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Blin?=
 <sebastien.blin@savoirfairelinux.com>
Date: Thu, 27 May 2021 15:32:22 -0400
Subject: [PATCH] callstackview: send DTMF via physical keyboard

Change-Id: I185945c8202edc31fab9bc9c440281c7325896bf
GitLab: #19
---
 src/mainview/components/CallStackView.qml | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/src/mainview/components/CallStackView.qml b/src/mainview/components/CallStackView.qml
index a50ab36ba..f671b445f 100644
--- a/src/mainview/components/CallStackView.qml
+++ b/src/mainview/components/CallStackView.qml
@@ -31,6 +31,12 @@ Rectangle {
     id: callStackViewWindow
 
     property bool isAudioOnly: false
+    property var sipKeys: [
+        "1", "2", "3", "A",
+        "4", "5", "6", "B",
+        "7", "8", "9", "C",
+        "*", "0", "#", "D"
+    ]
 
     enum StackNumber {
         InitialPageStack,
@@ -46,6 +52,18 @@ Rectangle {
         onActivatedAmbiguously: CallAdapter.hangUpThisCall()
     }
 
+    Keys.onPressed: {
+        if (LRCInstance.currentAccountType !== Profile.Type.SIP)
+            return
+        print(event.text)
+        var key = event.text.toUpperCase()
+        if(sipKeys.find(function (item) {
+            return item === key
+        })) {
+            CallAdapter.sipInputPanelPlayDTMF(key)
+        }
+    }
+
     // When selected conversation is changed,
     // these values will also be changed.
     property string responsibleConvUid: ""
-- 
GitLab