@ -0,0 +1 @@
|
|||||||
|
usr/share/sddm/themes/lubuntu-chooser/
|
@ -0,0 +1,246 @@
|
|||||||
|
/***************************************************************************
|
||||||
|
* Copyright (c) 2013 Abdurrahman AVCI <abdurrahmanavci@gmail.com
|
||||||
|
* Copyright (c) 2015 Lubuntu Artwork Team
|
||||||
|
*
|
||||||
|
* 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: 1024
|
||||||
|
height: 768
|
||||||
|
|
||||||
|
property int sessionIndex: session.index
|
||||||
|
|
||||||
|
TextConstants { id: textConstants }
|
||||||
|
|
||||||
|
Connections {
|
||||||
|
target: sddm
|
||||||
|
onLoginSucceeded: {
|
||||||
|
}
|
||||||
|
|
||||||
|
onLoginFailed: {
|
||||||
|
txtMessage.text = textConstants.loginFailed
|
||||||
|
listView.currentItem.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"
|
||||||
|
|
||||||
|
Component {
|
||||||
|
id: userDelegate
|
||||||
|
|
||||||
|
PictureBox {
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
name: (model.realName === "") ? model.name : model.realName
|
||||||
|
icon: model.icon
|
||||||
|
|
||||||
|
focus: (listView.currentIndex === index) ? true : false
|
||||||
|
state: (listView.currentIndex === index) ? "active" : ""
|
||||||
|
|
||||||
|
onLogin: sddm.login(model.name, password, sessionIndex);
|
||||||
|
|
||||||
|
MouseArea {
|
||||||
|
anchors.fill: parent
|
||||||
|
hoverEnabled: true
|
||||||
|
onEntered: listView.currentIndex = index
|
||||||
|
onClicked: listView.focus = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Row {
|
||||||
|
anchors.fill: parent
|
||||||
|
|
||||||
|
Text {
|
||||||
|
id: txtMessage
|
||||||
|
anchors.top: usersContainer.bottom;
|
||||||
|
anchors.margins: 20
|
||||||
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
|
color: "white"
|
||||||
|
text: textConstants.promptSelectUser
|
||||||
|
font.pixelSize: 16
|
||||||
|
font.family: "Ubuntu"
|
||||||
|
}
|
||||||
|
|
||||||
|
Item {
|
||||||
|
id: usersContainer
|
||||||
|
width: parent.width; height: 300
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
|
||||||
|
ImageButton {
|
||||||
|
id: prevUser
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
anchors.margins: 10
|
||||||
|
source: "angle-left.png"
|
||||||
|
onClicked: listView.decrementCurrentIndex()
|
||||||
|
|
||||||
|
KeyNavigation.backtab: btnShutdown; KeyNavigation.tab: listView
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
ListView {
|
||||||
|
id: listView
|
||||||
|
height: parent.height
|
||||||
|
anchors.left: prevUser.right; anchors.right: nextUser.left
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
anchors.margins: 10
|
||||||
|
|
||||||
|
clip: true
|
||||||
|
focus: true
|
||||||
|
|
||||||
|
spacing: 5
|
||||||
|
|
||||||
|
model: userModel
|
||||||
|
delegate: userDelegate
|
||||||
|
orientation: ListView.Horizontal
|
||||||
|
currentIndex: userModel.lastIndex
|
||||||
|
|
||||||
|
KeyNavigation.backtab: prevUser; KeyNavigation.tab: nextUser
|
||||||
|
}
|
||||||
|
|
||||||
|
ImageButton {
|
||||||
|
id: nextUser
|
||||||
|
anchors.right: parent.right
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
anchors.margins: 10
|
||||||
|
source: "angle-right.png"
|
||||||
|
onClicked: listView.incrementCurrentIndex()
|
||||||
|
KeyNavigation.backtab: listView; KeyNavigation.tab: session
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Rectangle {
|
||||||
|
id: actionBar
|
||||||
|
anchors.top: parent.top;
|
||||||
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
|
width: parent.width; height: 64
|
||||||
|
color: "#44ffffff"
|
||||||
|
|
||||||
|
Row {
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.margins: 5
|
||||||
|
height: parent.height
|
||||||
|
spacing: 5
|
||||||
|
|
||||||
|
Text {
|
||||||
|
height: parent.height
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
text: textConstants.session
|
||||||
|
font.pixelSize: 14
|
||||||
|
color: "white"
|
||||||
|
verticalAlignment: Text.AlignVCenter
|
||||||
|
}
|
||||||
|
|
||||||
|
ComboBox {
|
||||||
|
id: session
|
||||||
|
width: 245
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
arrowIcon: "angle-down.png"
|
||||||
|
model: sessionModel
|
||||||
|
index: sessionModel.lastIndex
|
||||||
|
font.pixelSize: 14
|
||||||
|
color: "#44ffffff"
|
||||||
|
KeyNavigation.backtab: nextUser; KeyNavigation.tab: layoutBox
|
||||||
|
}
|
||||||
|
|
||||||
|
Text {
|
||||||
|
height: parent.height
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
text: textConstants.layout
|
||||||
|
font.pixelSize: 14
|
||||||
|
color: "white"
|
||||||
|
verticalAlignment: Text.AlignVCenter
|
||||||
|
}
|
||||||
|
|
||||||
|
LayoutBox {
|
||||||
|
id: layoutBox
|
||||||
|
width: 90
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
font.pixelSize: 14
|
||||||
|
arrowIcon: "angle-down.png"
|
||||||
|
KeyNavigation.backtab: session; KeyNavigation.tab: btnShutdown
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Row {
|
||||||
|
height: parent.height
|
||||||
|
anchors.right: parent.right
|
||||||
|
anchors.margins: 5
|
||||||
|
spacing: 5
|
||||||
|
|
||||||
|
ImageButton {
|
||||||
|
id: btnReboot
|
||||||
|
height: parent.height
|
||||||
|
source: "reboot.png"
|
||||||
|
visible: sddm.canReboot
|
||||||
|
onClicked: sddm.reboot()
|
||||||
|
KeyNavigation.backtab: layoutBox; KeyNavigation.tab: btnShutdown
|
||||||
|
}
|
||||||
|
|
||||||
|
ImageButton {
|
||||||
|
id: btnShutdown
|
||||||
|
height: parent.height
|
||||||
|
source: "shutdown.png"
|
||||||
|
visible: sddm.canPowerOff
|
||||||
|
onClicked: sddm.powerOff()
|
||||||
|
KeyNavigation.backtab: btnReboot; KeyNavigation.tab: prevUser
|
||||||
|
}
|
||||||
|
Clock {
|
||||||
|
id: clock
|
||||||
|
anchors.margins: 5
|
||||||
|
anchors.top: parent.top; anchors.right: parent.right
|
||||||
|
color: "white"
|
||||||
|
timeFont.family: "Ubuntu"
|
||||||
|
timeFont.bold: true
|
||||||
|
timeFont.pixelSize: 28
|
||||||
|
dateFont.pixelSize: 12
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 494 B |
After Width: | Height: | Size: 214 B |
After Width: | Height: | Size: 230 B |
After Width: | Height: | Size: 111 KiB |
@ -0,0 +1,15 @@
|
|||||||
|
[SddmGreeterTheme]
|
||||||
|
Name=lubuntu-chooser
|
||||||
|
Description=Lubuntu Chooser Theme
|
||||||
|
Author=Lubuntu Artwork Team
|
||||||
|
Copyright=(c) 2015, Lubuntu Artwork Theme
|
||||||
|
License=CC-BY-SA
|
||||||
|
Type=sddm-theme
|
||||||
|
Version=0.1
|
||||||
|
Website=https://github.com/sddm/sddm
|
||||||
|
Screenshot=background.jpg
|
||||||
|
MainScript=Main.qml
|
||||||
|
ConfigFile=theme.conf
|
||||||
|
TranslationsDirectory=translations
|
||||||
|
Theme-Id=lubuntu-chooser
|
||||||
|
Theme-API=2.0
|
After Width: | Height: | Size: 637 B |
After Width: | Height: | Size: 632 B |
@ -0,0 +1,2 @@
|
|||||||
|
[General]
|
||||||
|
background=background.jpg
|
After Width: | Height: | Size: 2.7 KiB |
After Width: | Height: | Size: 19 KiB |