aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicolas Lécureuil <neoclust@mageia.org>2021-02-13 20:02:06 +0100
committerNicolas Lécureuil <neoclust@mageia.org>2021-02-13 20:02:06 +0100
commit771f681bb89fdf32e8d04176cd79840038974b64 (patch)
treedbae5348edc9606f4c987e09f29157f3db47e8cc
parent98004d42f4263eb363c0066a9f02c6cf32017d67 (diff)
downloadmga-coffee-771f681bb89fdf32e8d04176cd79840038974b64.tar
mga-coffee-771f681bb89fdf32e8d04176cd79840038974b64.tar.gz
mga-coffee-771f681bb89fdf32e8d04176cd79840038974b64.tar.bz2
mga-coffee-771f681bb89fdf32e8d04176cd79840038974b64.tar.xz
mga-coffee-771f681bb89fdf32e8d04176cd79840038974b64.zip
Add mga-coffee code
-rw-r--r--Main.qml256
-rw-r--r--README2
-rw-r--r--angle-down.pngbin0 -> 196 bytes
-rw-r--r--metadata.desktop13
-rw-r--r--mgacoffee.pngbin0 -> 335938 bytes
-rw-r--r--mgangle.pngbin0 -> 2260 bytes
-rw-r--r--theme.conf2
7 files changed, 273 insertions, 0 deletions
diff --git a/Main.qml b/Main.qml
new file mode 100644
index 0000000..e3f3a11
--- /dev/null
+++ b/Main.qml
@@ -0,0 +1,256 @@
+/***************************************************************************
+* Copyright (c) 2013 Abdurrahman AVCI <abdurrahmanavci@gmail.com>
+
+* Modified for mga6 by eatdirt@mageia.org
+
+* Permission is hereby granted, free of charge, to any person
+* obtaining a copy of this software and associated documentation
+* files (the "Software"), to deal in the Software without restriction,
+* including without limitation the rights to use, copy, modify, merge,
+* publish, distribute, sublicense, and/or sell copies of the Software,
+* and to permit persons to whom the Software is furnished to do so,
+* subject to the following conditions:
+*
+* The above copyright notice and this permission notice shall be included
+* in all copies or substantial portions of the Software.
+*
+* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
+* OR OTHER DEALINGS IN THE SOFTWARE.
+*
+***************************************************************************/
+
+import QtQuick 2.0
+import SddmComponents 2.0
+
+Rectangle {
+ id: container
+ width: 760
+ height: 480
+
+ TextConstants { id: textConstants }
+
+ Connections {
+ target: sddm
+
+ onLoginSucceeded: {
+ errorMessage.color = "steelblue"
+ errorMessage.text = textConstants.loginSucceeded
+ }
+
+ onLoginFailed: {
+ errorMessage.color = "red"
+ errorMessage.text = textConstants.loginFailed
+ password.text = ""
+ }
+ }
+
+ Repeater {
+ model: screenModel
+ Background {
+ x: geometry.x; y: geometry.y; width: geometry.width; height:geometry.height
+ source: config.background
+ fillMode: Image.PreserveAspectCrop
+ onStatusChanged: {
+ if (status == Image.Error && source != config.defaultBackground) {
+ source = config.defaultBackground
+ }
+ }
+ }
+ }
+
+ Rectangle {
+ property variant geometry: screenModel.geometry(screenModel.primary)
+ x: geometry.x; y: geometry.y; width: geometry.width; height: geometry.height
+ color: "transparent"
+
+ Clock {
+ id: clock
+ anchors.margins: 5
+ anchors.top: parent.top; anchors.right: parent.right
+
+ color: "white"
+ timeFont.family: "Oxygen"
+ }
+
+ Image {
+ id: rectangle
+ anchors.centerIn: parent
+ width: Math.max(608, mainColumn.implicitWidth + 50)
+ height: Math.max(384, mainColumn.implicitHeight + 50)
+
+ source: "mgangle.png"
+
+ Column {
+ id: mainColumn
+ anchors.centerIn: parent
+ spacing: 12
+ Text {
+ anchors.horizontalCenter: parent.horizontalCenter
+ color: "white"
+ verticalAlignment: Text.AlignVCenter
+ height: text.implicitHeight
+ width: parent.width
+ text: textConstants.welcomeText.arg(sddm.hostName)
+ wrapMode: Text.WordWrap
+ font.pixelSize: 24
+ elide: Text.ElideRight
+ horizontalAlignment: Text.AlignHCenter
+ }
+
+ Column {
+ width: parent.width
+ spacing: 4
+ Text {
+ id: lblName
+ color: "white"
+ width: parent.width
+ text: textConstants.userName
+ font.bold: true
+ font.pixelSize: 12
+ }
+
+ TextBox {
+ id: name
+ width: parent.width; height: 30
+ text: userModel.lastUser
+ font.pixelSize: 14
+
+ KeyNavigation.backtab: rebootButton; KeyNavigation.tab: password
+
+ Keys.onPressed: {
+ if (event.key === Qt.Key_Return || event.key === Qt.Key_Enter) {
+ sddm.login(name.text, password.text, session.index)
+ event.accepted = true
+ }
+ }
+ }
+ }
+
+ Column {
+ width: parent.width
+ spacing : 4
+ Text {
+ id: lblPassword
+ color: "white"
+ width: parent.width
+ text: textConstants.password
+ font.bold: true
+ font.pixelSize: 12
+ }
+
+ PasswordBox {
+ id: password
+ width: parent.width; height: 30
+ font.pixelSize: 14
+
+ KeyNavigation.backtab: name; KeyNavigation.tab: session
+
+ Keys.onPressed: {
+ if (event.key === Qt.Key_Return || event.key === Qt.Key_Enter) {
+ sddm.login(name.text, password.text, session.index)
+ event.accepted = true
+ }
+ }
+ }
+ }
+
+ Row {
+ spacing: 4
+ width: parent.width
+ z: 100
+
+ Column {
+ z: 100
+ width: parent.width
+ spacing : 4
+ anchors.bottom: parent.bottom
+
+ Text {
+ id: lblSession
+ color: "white"
+ width: parent.width
+ text: textConstants.session
+ wrapMode: TextEdit.WordWrap
+ font.bold: true
+ font.pixelSize: 12
+ }
+
+ ComboBox {
+ id: session
+ width: parent.width; height: 30
+ font.pixelSize: 14
+
+ arrowIcon: "angle-down.png"
+
+ model: sessionModel
+ index: sessionModel.lastIndex
+
+ KeyNavigation.backtab: password; KeyNavigation.tab: loginButton
+ }
+ }
+
+
+ }
+
+ Column {
+ Text {
+ id: errorMessage
+ color: "white"
+ anchors.horizontalCenter: parent.horizontalCenter
+ text: textConstants.prompt
+ font.pixelSize: 12
+ }
+ }
+
+ Row {
+ spacing: 4
+ anchors.horizontalCenter: parent.horizontalCenter
+ property int btnWidth: Math.max(loginButton.implicitWidth,
+ shutdownButton.implicitWidth,
+ rebootButton.implicitWidth, 80) + 8
+ Button {
+ id: loginButton
+ text: textConstants.login
+ width: parent.btnWidth
+
+ onClicked: sddm.login(name.text, password.text, session.index)
+
+ KeyNavigation.backtab: session; KeyNavigation.tab: shutdownButton
+ }
+
+ Button {
+ id: shutdownButton
+ text: textConstants.shutdown
+ width: parent.btnWidth
+
+ onClicked: sddm.powerOff()
+
+ KeyNavigation.backtab: loginButton; KeyNavigation.tab: rebootButton
+ }
+
+ Button {
+ id: rebootButton
+ text: textConstants.reboot
+ width: parent.btnWidth
+
+ onClicked: sddm.reboot()
+
+ KeyNavigation.backtab: shutdownButton; KeyNavigation.tab: name
+ }
+ }
+ }
+ }
+ }
+
+ Component.onCompleted: {
+ if (name.text == "")
+ name.focus = true
+ else
+ password.focus = true
+ }
+}
diff --git a/README b/README
new file mode 100644
index 0000000..f1cec5b
--- /dev/null
+++ b/README
@@ -0,0 +1,2 @@
+This theme is for the Simple Desktop Display Manager distribution and
+based on the theme "malvides".
diff --git a/angle-down.png b/angle-down.png
new file mode 100644
index 0000000..4e9aeb0
--- /dev/null
+++ b/angle-down.png
Binary files differ
diff --git a/metadata.desktop b/metadata.desktop
new file mode 100644
index 0000000..ad883e1
--- /dev/null
+++ b/metadata.desktop
@@ -0,0 +1,13 @@
+[SddmGreeterTheme]
+Name=Mageia
+Description=Mageia Theme
+Author=Mageia
+License=CC-By-SA
+Type=sddm-theme
+Version=0.1
+Screenshot=mgacoffee.png
+MainScript=Main.qml
+ConfigFile=theme.conf
+TranslationsDirectory=translations
+Theme-Id=mageia-coffee
+Theme-API=2.0
diff --git a/mgacoffee.png b/mgacoffee.png
new file mode 100644
index 0000000..3ce4dd2
--- /dev/null
+++ b/mgacoffee.png
Binary files differ
diff --git a/mgangle.png b/mgangle.png
new file mode 100644
index 0000000..10e26aa
--- /dev/null
+++ b/mgangle.png
Binary files differ
diff --git a/theme.conf b/theme.conf
new file mode 100644
index 0000000..6d3881c
--- /dev/null
+++ b/theme.conf
@@ -0,0 +1,2 @@
+[General]
+background=/usr/share/mga/backgrounds/default.jpg