summaryrefslogtreecommitdiff
path: root/raveos-gnome-theme/theme-data/sddm/sddm-rave-theme/Components/VirtualKeyboardButton.qml
diff options
context:
space:
mode:
Diffstat (limited to 'raveos-gnome-theme/theme-data/sddm/sddm-rave-theme/Components/VirtualKeyboardButton.qml')
-rw-r--r--raveos-gnome-theme/theme-data/sddm/sddm-rave-theme/Components/VirtualKeyboardButton.qml79
1 files changed, 79 insertions, 0 deletions
diff --git a/raveos-gnome-theme/theme-data/sddm/sddm-rave-theme/Components/VirtualKeyboardButton.qml b/raveos-gnome-theme/theme-data/sddm/sddm-rave-theme/Components/VirtualKeyboardButton.qml
new file mode 100644
index 0000000..90a52b8
--- /dev/null
+++ b/raveos-gnome-theme/theme-data/sddm/sddm-rave-theme/Components/VirtualKeyboardButton.qml
@@ -0,0 +1,79 @@
+// Config created by Keyitdev https://git.rp1.hu/gabeszm/sddm-rave-theme
+// Copyright (C) 2022-2025 Keyitdev
+// Distributed under the GPLv3+ License https://www.gnu.org/licenses/gpl-3.0.html
+
+import QtQuick 2.15
+import QtQuick.Controls 2.15
+
+Item {
+ Button {
+ id: virtualKeyboardButton
+
+ anchors.horizontalCenter: parent.horizontalCenter
+ z: 1
+ focusPolicy: Qt.TabFocus
+
+ visible: virtualKeyboard.status == Loader.Ready && config.HideVirtualKeyboard == "false"
+ checkable: true
+ onClicked: virtualKeyboard.switchState()
+
+ Keys.onReturnPressed: {
+ toggle();
+ virtualKeyboard.switchState();
+ }
+ Keys.onEnterPressed: {
+ toggle();
+ virtualKeyboard.switchState();
+ }
+
+ contentItem: Text {
+ id: virtualKeyboardButtonText
+
+ text: config.TranslateVirtualKeyboardButtonOff || "Virtual Keyboard (off)"
+ font.pointSize: root.font.pointSize * 0.8
+ font.family: root.font.family
+ color: parent.visualFocus ? config.HoverVirtualKeyboardButtonTextColor : config.VirtualKeyboardButtonTextColor
+ }
+
+ background: Rectangle {
+ id: virtualKeyboardButtonBackground
+
+ anchors.fill: parent
+ radius: config.RoundCorners !== "" ? parseInt(config.RoundCorners) : 10
+ color: virtualKeyboardButton.down ? Qt.rgba(1, 1, 1, 0.12) : (virtualKeyboardButton.hovered ? Qt.rgba(1, 1, 1, 0.08) : Qt.rgba(1, 1, 1, 0.04))
+ border.color: virtualKeyboardButton.visualFocus ? Qt.rgba(1, 1, 1, 0.60) : (virtualKeyboardButton.hovered ? Qt.rgba(1, 1, 1, 0.35) : Qt.rgba(1, 1, 1, 0.18))
+ border.width: virtualKeyboardButton.visualFocus ? 1.5 : 1
+
+ Behavior on color { ColorAnimation { duration: 150 } }
+ Behavior on border.color { ColorAnimation { duration: 150 } }
+ }
+ states: [
+ State {
+ name: "HoveredAndChecked"
+ when: virtualKeyboardButton.checked && virtualKeyboardButton.hovered
+ PropertyChanges {
+ target: virtualKeyboardButtonText
+ text: config.TranslateVirtualKeyboardButtonOn || "Virtual Keyboard (on)"
+ color: config.HoverVirtualKeyboardButtonTextColor
+ }
+ },
+ State {
+ name: "checked"
+ when: virtualKeyboardButton.checked
+ PropertyChanges {
+ target: virtualKeyboardButtonText
+ text: config.TranslateVirtualKeyboardButtonOn || "Virtual Keyboard (on)"
+ }
+ },
+ State {
+ name: "hovered"
+ when: virtualKeyboardButton.hovered
+ PropertyChanges {
+ target: virtualKeyboardButtonText
+ text: config.TranslateVirtualKeyboardButtonOff || "Virtual Keyboard (off)"
+ color: config.HoverVirtualKeyboardButtonTextColor
+ }
+ }
+ ]
+ }
+} \ No newline at end of file