From 87d2074c8192e5321f76525c55bc4e44dd1bc790 Mon Sep 17 00:00:00 2001 From: trilene Date: Sun, 20 Dec 2020 09:37:22 -0500 Subject: Add devices dialog to CallInviteBar --- resources/qml/voip/CallDevices.qml | 91 ++++++++++++++++++++++++++++++++++++ resources/qml/voip/CallInviteBar.qml | 27 ++++++++++- 2 files changed, 117 insertions(+), 1 deletion(-) create mode 100644 resources/qml/voip/CallDevices.qml (limited to 'resources/qml/voip') 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 { -- cgit 1.4.1