summary refs log tree commit diff
path: root/resources/qml/voip
diff options
context:
space:
mode:
authortrilene <trilene@runbox.com>2020-12-20 09:37:22 -0500
committerNicolas Werner <nicolas.werner@hotmail.de>2021-01-07 14:04:54 +0100
commit87d2074c8192e5321f76525c55bc4e44dd1bc790 (patch)
tree33e62f797c4d78ea6c39c76f6d35260da11304be /resources/qml/voip
parentAdd device combos to PlaceCall dialog (diff)
downloadnheko-87d2074c8192e5321f76525c55bc4e44dd1bc790.tar.xz
Add devices dialog to CallInviteBar
Diffstat (limited to 'resources/qml/voip')
-rw-r--r--resources/qml/voip/CallDevices.qml91
-rw-r--r--resources/qml/voip/CallInviteBar.qml27
2 files changed, 117 insertions, 1 deletions
diff --git a/resources/qml/voip/CallDevices.qml b/resources/qml/voip/CallDevices.qml
new file mode 100644
index 00000000..ee3503ca
--- /dev/null
+++ b/resources/qml/voip/CallDevices.qml
@@ -0,0 +1,91 @@
+import QtQuick 2.3
+import QtQuick.Controls 2.3
+import QtQuick.Dialogs 1.3
+import QtQuick.Layouts 1.2
+import im.nheko 1.0
+import "../"
+
+ApplicationWindow {
+
+    flags: Qt.Dialog
+    modality: Qt.ApplicationModal
+    palette: colors
+    width: columnLayout.implicitWidth
+    height: columnLayout.implicitHeight
+
+    ColumnLayout {
+        id: columnLayout
+
+        spacing: 16
+
+        ColumnLayout {
+            spacing: 8
+
+            RowLayout {
+
+                Layout.topMargin: 8
+                Layout.leftMargin: 8
+                Layout.rightMargin: 8
+
+                Image {
+                    Layout.preferredWidth: 22
+                    Layout.preferredHeight: 22
+                    source: "qrc:/icons/icons/ui/microphone-unmute.png"
+                }
+
+                ComboBox {
+                    id: micCombo
+                    Layout.fillWidth: true
+                    model: CallManager.mics
+                }
+            }
+
+            RowLayout {
+
+                visible: CallManager.cameras.length > 0
+                Layout.leftMargin: 8
+                Layout.rightMargin: 8
+
+                Image {
+                    Layout.preferredWidth: 22
+                    Layout.preferredHeight: 22
+                    source: "qrc:/icons/icons/ui/video-call.png"
+                }
+
+                ComboBox {
+                    id: cameraCombo
+                    Layout.fillWidth: true
+                    model: CallManager.cameras
+                }
+            }
+        }
+
+        RowLayout {
+
+            Layout.rightMargin: 8
+            Layout.bottomMargin: 8
+
+            Item {
+                implicitWidth: 128
+            }
+
+            Button {
+                text: qsTr("Ok")
+                onClicked: {
+                      Settings.microphone = micCombo.currentText
+                      if (cameraCombo.visible) {
+                          Settings.camera = cameraCombo.currentText
+                      }
+                      close();
+                }
+            }
+
+            Button {
+                text: qsTr("Cancel")
+                onClicked: {
+                    close();
+                }
+            }
+        }
+    }
+}
diff --git a/resources/qml/voip/CallInviteBar.qml b/resources/qml/voip/CallInviteBar.qml
index 61a3f0ec..e22ee645 100644
--- a/resources/qml/voip/CallInviteBar.qml
+++ b/resources/qml/voip/CallInviteBar.qml
@@ -16,6 +16,13 @@ Rectangle {
         icon: StandardIcon.Warning
     }
 
+    Component {
+        id: devicesDialog
+
+        CallDevices {
+        }
+    }
+
     RowLayout {
         id: rowLayout
 
@@ -53,6 +60,24 @@ Rectangle {
             Layout.fillWidth: true
         }
 
+        ImageButton {
+            width: 24
+            height: 24
+            buttonTextColor: "#000000"
+            image: ":/icons/icons/ui/settings.png"
+            hoverEnabled: true
+            ToolTip.visible: hovered
+            ToolTip.text: "Devices"
+            onClicked: {
+                  var dialog = devicesDialog.createObject(timelineRoot);
+                  dialog.show();
+            }
+        }
+
+        Item {
+            implicitWidth: 8
+        }
+
         Button {
             icon.source: CallManager.isVideo ? "qrc:/icons/icons/ui/video-call.png" : "qrc:/icons/icons/ui/place-call.png"
             palette: colors
@@ -78,7 +103,7 @@ Rectangle {
         }
 
         Item {
-            implicitWidth: 8
+            implicitWidth: 4
         }
 
         Button {