QtLockscreen
General Information
QtLockscreen is a highly configurable replacement of Maemo5 default lockscreen created by "sakya". (Credits for the backend go to "MohammadAG")
Further information and discussions can be found here:
- "(Announce) QtLockscreen: highly configurable lockscreen replacement"
- "Share your QtLockscreen configs!"
- "Project Page"
For further support and information you might want to check these threads.
Check the following links to get an impression of how OtLockscreen looks:
- "video" (Created by "pusak gaoq")
Currently this app is available from extras-devel (See Package Info Page).
Disclaimer
!!! CAUTION !!!
Default extras-devel disclaimer: This project is still in development stage, which means there might still be some risks, downsides and issues to be solved before it is ready for the average user... Please read this summary carefully and evaluate the risks involved for yourself! (Keep in mind that this can cause problems for the phone. Backup your data, backup your config (apps > system > backup) and know how to reflash)
Whatever you do, you are doing it at your own risk!
Change Log
Version 0.1.11
- Added ShowImage (to show/hide the forecast image), ConditionsText, ConditionsPos, ConditionsFont, ConditionsColor (for the current conditions text) settings to weather widget
- Added setting to turn on/off antialiasing (was on by default in previous versions)
- Added PercentageType setting to BatteryWidget (can be "default", "bq27200" or "dr_frost_dk")
- Fixed dateTime day and month display when Locale setting is set
- Fixed alignment settings, now you can set horizontal alignment and vertical alignment:
Example (horizontally centered and top aligned): Alignment="center;top"
Please note: "TextAlignment" for notification works as before (it should be named TextPosition but all themes out now uses TextAlignment, so...). DateTime and text widget uses the "new" alignment horizontal+vertical.
Version 0.1.10
- Added command line argument to take a screenshot:
/usr/bin/qtlockscreen -s /home/user/screenshot.png
- Added command line argument to set the config file to use
/usr/bin/qtlockscreen -c /opt/qtlockscreen/theme.ini
- Added SliderImagePressed setting to SlideToUnlock widget
- Fixed some bugs :p
Version 0.1.9
- Fixed Weather widget script
- Fixed languages: sv_SV (I forgot the file in v.0.1.8)
Version 0.1.8
- Added setting to override the system locale (see the default config file)
- Added wifi widget
- Added Weather widget
- Fixed albumart corrupted if the widget has different size in portrait and landscape
- Added languages: sv_SV
- Fixed: reverted to old orientation manager (it should fix the problems appeared from version 0.1.5)
Version 0.1.7
- Fixed background problem when Orientation is set to "portrait" (really) :)
Version 0.1.6
- Fixed background problem when Orientation is set to "portrait"
- Added to SlideToUnlock settings UnlockXL, UnlockXP, UnlockYL, UnlockYP
Version 0.1.5
- Added SlideToUnlock widget
- Added languages: cn_CN, tw_TW
- Added setting to set the text for notification widget
- Added setting to set the text position for notification widget
- Added IM notification
- Added Text widget
- Removed embedded resources: all resources are copied to /opt/qtlockscreen
Version 0.1.4
- Added german translation (NightShift79)
- The default config file is always copied to /home/user/.config/sakya/QtLockscreen.ini.default
- Added postrm script
- Fixed metadata update
Version 0.1.3
- Added italian translation
- Added french translation (GaRy delaMEr)
- Added PercentageColor setting for battery widget
- Fixed: the lockscreen was on top of the alarm dialog
- Fixed: battery widget now has a ChargingImage setting
Version 0.1.2
- Fixed _HILDON_WM_ACTION_NO_TRANSITIONS
Version 0.1.1
- Changed default background to /etc/hildon/theme/backgrounds/lockslider.png
- Changed font settings, format = "fontName;fontSize;fontWeight;italic"
Version 0.1.0
- Initial Release
Known Issues
- When the power button is clicked the app does not update the screen for 2 seconds. This seems a Qt problem: every qt application "locks" when the power button is pressed, I don't know why.
- The rotation is slow.
- Album art is not loaded correctly in some situations
- Rotation of P to L does not work sometimes
Requested Features
- GUI for configuration (sakya is currently not planning to create a GUI, maybe someone is willing to help out here ;-) )
- Clicking on the notifications directly opens the related app. i.e. sms' opens the conversation app, missed calls opens the phone app
- Configuring the length of time the lockscreen stays before fading out
Planned Features
-
Swipe to unlock widget / feature(Implemented in v0.1.5) -
IM notification widget(Implemented in v0.1.5) -
Operator widget(Implemented in v0.1.12) -
Wifi/3g widget(Implemented in v0.1.8) -
Weather widget(Implemented in v0.1.8) -
Signal widget(Implemented in v0.1.12) - Change profile (general / silent) widget
Widget list
There are some common settings (common to all widgets):
PosL position in landscape PosP position in portrait SizeL size in landscape SizeP size in portrait RotationL roatation angle in landscape RotationP roatation angle in portrait
Here's a list of available widgets with their possible settings.
Rect: Color rectangle bkg color Radius border radius DateTime: Alignment text alignment TimeColor color of time text DateColor color of date text DateFormat date format TimeFormat time format TimeFont font for time text DateFont font for date text Battery: PercentageType the type of percentage to display (default, bq27200 or dr_frost_dk) Images list of images (separated by ;) to represent the battery charge ChargingImage image to use when the battery is charging PercentageColor color for percentage PercentageFont font for percentage UnlockButton: WaitTimeMsec time to keep the button press before the unlock (in ms) BackGroundImage button bkg image BackGroundImagePressed button bkg when is pressed SlideToUnlockButton: SliderPos initial slider position (relative to the widget) SliderImage image for the slider SliderImagePressed image for the slider when pressed BackgroundImage widget background image UnlockXP unlock x position (portrait) UnlockYP unlock y position (portrait) UnlockXL unlock x position (landscape) UnlockYL unlock y position (landscape) MediaPlayPauseButton: BackGroundImagePause bkg image for pause BackGroundImagePausePressed bkg image for pause when is pressed BackGroundImagePlay bkg image for play BackGroundImagePlayPressed bkg image for play when is pressed MediaNextButton: BackGroundImage bkg image BackGroundImagePressed bkg image when is pressed MediaBackButton: BackGroundImage bkg image BackGroundImagePressed bkg image when is pressed MediaMetadata: Alignment text alignment TitleColor color for title text ArtistColor color for artist TitleFont color for title ArtistFont color for artist MediaAlbumArt: NoCoverImage image to use when no cover is available MediaTimeLabel: Color color for text Font font for text Image: Alpha alpha (0-255) for the image Image image Notification: Type notification type (call, sms, email, im) TextAlignment text alignment relative to the image (top, bottom, left, right, center) Color text color Font text font Text: Alignment text alignment Color text color Font text font Text text TextCommand: Alignment text alignment Color text color Font text font Text text Command external command to execute UpdateInterval seconds between each command execution (set to zero to disable) Weather: ShowImage show forecast image (1 or 0) AutoUpdateIntervalSeconds seconds between each auto update ConditionsText text to use before the current conditions text ConditionsPos position of the current conditions text (relative to this widget) ConditionsFont color for the current conditions ConditionsColor color for the current conditions CurrentText text to use before the current temp CurrentPos position of the current temp text (relative to this widget) CurrentFont color for the current temp CurrentColor color for the current temp HighText text to use before the high temp HighPos position of the high temp text (relative to this widget) HighFont color for the high temp HighColor color for the high temp LowText text to use before the current temp LowPos position of the current temp text (relative to this widget) LowFont color for the current temp LowColor color for the current temp MinimumSecondsBetweenUpdates minimum time between each update Link yahoo weather link. You can set this without http://weather.yahoo.com/ ex: italy/lombardy/milan-718345 or set the full link: ex: http://weather.yahoo.com/italy/lombardy/milan-718345 Unit unit to use (c or nothing) Internet: WifiImage icon for wifi connection GprsImage icon for gprs connection OperatorName: Alignment text alignment Color text color Font text font Images list of images to use instead of text. Ex: Vodafone IT=/home/user/vodafone.png;TIM=/home/user/tim.png SignalStrength: Images list of images (separated by ;) to represent the signal strength RadioMode: 3gIcon image for 3g mode 2gIcon image for 2g mode Bluetooth: ImageOn image to display when the bluetooth is on ImageOff optional image to display when the bluetooth is off Profile: Images list of images to use for profiles. Ex: general=/opt/qtlockscreen/default/profile_general.png;silent=/opt/qtlockscreen/default/profile_silent.png
Customization
Every item on the screen is configurable (position, size, font, image...). You can also remove or add items.
!!!Note: Items are called widget in this context. But these aren't Maemo desktop widgets. You can't add a desktop widget to this lockscreen. "Widgets" are coded specifically for the lockscreen, you can use only the widgets provided by the app (rectangle, metadata, datetime....) Widgets are drawn in the order they are created, the last is the topmost.
In order to customize QtLocscreen you need to edit the default configuration (it is automatically created in /home/user/.config/sakya/QtLockscreen.ini the first time the app is launched) as root:
Some guidelines for better theme quality and easier management:
A theme should be composed by: - The configuration file (name it themeName.ini) in /opt/qtlockscreen - A directory containing the images (name it /opt/qtlockscreen/themeName) - Fonts (if needed) to be installed in /usr/share/fonts
'/opt/qtlockscreen/default/' is the default theme folder and should not be used to store your custom images or other files, so you should not overwrite or add / delete anything here. It is advised to create a directory that is named as your theme in directory '/opt/qtlockscreen/' and put everything there.
Please set also 'ThemeName' and 'ThemeAuthor' in your themes - the configuration file has a section for both:
ThemeName="Default"
Adapt this to reflect the theme namechange internally; so use the value from '<yourthemename>' here.
The field for theme's author name:
ThemeAuthor="sakya"
Fill both fields to support proper theme switching using the GUI application and follow the general scheme for your themes, so when the GUI utility will be released the themes will be in the correct place.
It will be supported to generate Debian packages to install themes in /opt/qtlockscreen and then set it as the active one with the configuration utility.
As for the backgrounds like all other customized images, it is suggested to include them in /opt/qtlockscreen/<yourthemename> as 'backgroundL.(jpg|png)' for landscape orientation and 'backgroundP.(jpg|png)' for portrait orientation.
As the major result of taking such precautions your QtLockscreen theme is basically self-contained, and can be more easily distributed to other users. Another positive point is it will not place used theme backgrounds / icons that are not true desktop backgrounds in '/home/user/MyDocs/.images' or other file system directories too, keeping everything tidy.
NOTE: the default configuration file that contains all widgets and is updated if you install a new release from the repository can be found here:
/home/user/.config/sakya/QtLockscreen.ini.default
If you changed the configuration file and want to have the changes loaded, you need to kill the running lockscreen process (or reboot).
To kill the lockscreen, type
pkill -HUP qtlockscreen
in Xterm and hit enter.
For previewing theme changes a "Designer mode" is implemented; it displays all the widgets: notifications, wifi, ...
/usr/bin/qtlockscreen -d
To test a specific configuration file use:
/usr/bin/qtlockscreen -d -c "path to config file"
To take a screenshot use:
/usr/bin/qtlockscreen -c "path to config file" -s "path to image to be saved"
The application exits when you unlock it using 'slidetounlock' widget or unlock button.
Customizing time format
Change
TimeFormat="hh:mm"
to, if you want AM/PM
TimeFormat="hh:mm AP"
or, if you want am/pm
TimeFormat="hh:mm ap"
Customizing icons
Icon can be any size. The icon will be center/top aligned in the size you give to the widget, the text will be horizontally centered just under the icon. Just be sure that the Size you set is enough to display the icon and the text. To change the notifications icon you should change the
Icon=":/images/message.png"
The ":/" refers to the project resources, you have to use a "normal" path "/home/user/..."
Positioning items
You need to define the numbers of pixels, but you can also do "center; center" (for example) to get the object perfectly centered
Reset to the default configuration
Open a terminal and
sudo gainroot rm .config/sakya/QtLockscreen.ini pkill -HUP qtlockscreen
Available Customizations
Please share your customized lockscreens here!!!
1) Created by "F2thaK"
Short description: -no media/email widgets -black battery font -big time/date/battery/unlock -slide to unlock -12hr time with no preceding zero -compatible with v0.1.7
SCREENS/DOWNLOAD: http://talk.maemo.org/showpost.php?p=1068392&postcount=197 Video: http://www.youtube.com/watch?v=b9QWb2X6F30
2) Created by "qw3rty"
Short description: Big next track button
Screenshot: "Landscape" "portrait"
Config.ini: n/a
3) Created by "Hurrian"
Short description: Big time, time and date left, media widget whole width. Supports landscape and portrait modes.
Screenshot: Current version: "Landscape"
QtLockscreen.ini: "Not a real zip, rename it to QtLockscreen.ini"
Images: "link"
4) Created by "Syndrome"
Short description: No media player, custom wallpaper
Screenshot: "Landscape"
Config.ini: n/a
5) Created by "kishanW"
Short description: Biiiig time (12hr format)
Screenshot: "Portrait"
Config.ini: "link"
Wallpaper: "Portrait", "Landscape"
6) Created by "qw3rty"
Short description: Very music player centric, larger album cover and buttons. Play/pause by tapping the cover.
Screenshot: "Landscape" "portrait"
Config.ini: "link"
7) Created by "lingling92"
Short description: Big time, date and media player, notifications only in portrait mode
Screenshot: "Landscape" "portrait"
Config.ini: "link"
8) Created by "Zekahz"
Short description: Only portrait mode edited, big time, no top bar. The space above the time and date is one giant invisible media player next-button
Screenshot: "portrait"
Config.ini: "link"
9) Created by "pusak gaoq"
Short description: Centered
Screenshot: "landscape" "portrait"
Config.ini: n/a
Video: "link"
10) Created by "KingKobraone"
Short description: MeeGo.de, notifications top, media player bottom, battery left
Screenshot: "landscape" "portrait"
Config.ini, lockscreens and font: "link"
(add lockscreens to "/etc/hildon/theme/backgrounds/", load font with Theme customizer you dont need to activate it, the font only will be used in lockscreen)
11) Created by "ammyt"
1. Hair-comb:
Short description: Android Honeycomb 3 lockscreen skin, 12 hr AM/PM Android clock, Android date, glow ripple circles on lock, simplistic no media player.
Screenshot: "portrait" "landscape"
Config script + instructions: Post
2. Black Crystal (unfinished):
Short description: Big urban-styled clock and date, htc sense panel, black/green color combination, glowing battery gauge, portrait only till now.
Screenshot: "portrait"
Config script + instructions: Post
3. Elegy:
Short description: Elegant clock and date fonts, elegant music player centered, play/pause by tapping album art, Android panel, elegant glowing battery gauge, portrait mode.
Screenshot: "portraits
Config script + instructions: Post
4. Neon:
Short description: Cool-looking blue dotted LED circular station, media player, play/pause by tapping albim art, blue-dotted clock and date, portrait mode.
Screenshot: "portrait"
Config script + instructions: Post
5. Neon V2
Short description: Cool-looking blue dotted LED circular station, futuristic lockscreen with slide to unlock, media player, play/pause by tapping albim art, blue-dotted clock and date, portrait mode.
Screenshot: "portrait"
Config script + instructions: Post
12) Created by "Harick"
1. Danael M9 MBEx:
Short description: IOS iphone4 theme customized by Danael "M9 MBEx". media player without album art, clock, date and day
Type: Tap to unlock
Screenshot: "portrait" "landscape"
Instructions: Post
2. Marina v1:
Short description: Marina-like lockscreen, simple, clock and date + batery meter. notifications availables only for Missed calls, Sms and Emails
Type: Tap to unlock
Screenshot: "portrait" "landscape"
Instructions: Post
3. Marina v2 + Mediaplayer:
Short description: Marina-like lockscreen, simple, clock and date + batery meter. All notifications availables (Missed calls, SMS, IM and Emails). Media player with Album art.
Type: Tap to unlock
Screenshot: "portrait" "landscape"
Instructions: Post
4. Killik Mediaplayer Lockscreen:
Short description: portrait only, "mediaplayer" lockscreen, showing song info, album art, controls, battery state, clock and notifications.
Type: Tap to unlock
Screenshot: "normal" "charging"
Instructions: Post
3. R2D2:
Short description: Simple gray minimal lockscreen, clock and date + batery meter. All notifications availables (Missed calls, SMS, IM and Emails). custom background, .psd and font included
Type: Slide to unlock
Screenshot: "portrait" "landscape"
Instructions: Post
3. Carbonized:
Short description: Simple dark "carbon fiber" lockscreen, clock and date + batery meter. All notifications availables (Missed calls, SMS, IM and Emails).
Type: Slide to unlock (slide up)
Screenshot: "portrait" "landscape"
Instructions: Post
13) Created by "Laith.M.Y"
1- Sense :
Short description: HTC Sense 3.0 style lockscreen,contains clock,date,media player and notifications . The notifications that availables are Missed calls and SMS only.
Type : Tap to unlock (you must tap on the TIME)
Screenshot: "Portrait only"
Instructions: "Post"
2- IPhone :
Short description: iphone style lockscreen,contains clock,date,battery,mediaplayer,wifi and notifications . All notifications availables (Missed calls,SMS,IM and Email).You can change the background as you want because the backgrounds of time and slider are transparent. 3 backgrounds available (default iphone background , Clown fish , Fresh series)
Type : Slide to unlock
Screenshots: with MP widget "Portrait" , "Landscape" , without MP widget "Portrait" , "Landscape"
Instructions : "Post"
3- Android :
Short description : android style lockscreen , contains clock,date,battery,wifi and notifications (missed calls,sms,IM,Email) . you can change the background as you want because all of the components of the lockscreen are transparent.
Type : Slide to unlock
Screenshots : "Portrait" , "Landscape"
Instructions : "Post"
4- Simple Section :
Short description : contains clock,date,battery,wifi,gprs and notifications (missed calls,sms,IM,Email) . you can change the background as you want because all of the components of the lockscreen are transparent.
Type : Slide to unlock
Screenshots : "Portrait" , "Landscape"
Instructions : "Post"
14) Created by "Robin92"
1-
Htc sense with unlock down
No mediaplayer
Only portrait mode:)
"Htc lockscreen picture"
Here is the files: http://talk.maemo.org/showpost.php?p=1070125&postcount=253
15) Created by "DJQwamii"
Short description:
- Slide to Unlock
- Different Slide-to-Unlock Directions for Portrait & Landscape
- Contains notifications for missed calls, sms, IMs and emails (beta)
- No media player
Screenshots & Download: "http://talk.maemo.org/showpost.php?p=1072727&postcount=309"
16) Created by "niqbal"
1) Absolut Pears Vodka
Smaller liquid battery used
Slide the wallpaper up to unlock
Slide up inspiration from WP7
Screenshot: Absolut Pears Portrait
Post : Download
2) Harmattan Concept
Tried to mimic harmattan (n950) lockscreen feel
Slide the Wallpaper right to unlock
Screenshot: Harmattan Portrait
Post : Download
3) An Angel
Elements revolving around a beautiful angel in distress
Weather
Probably the most eye-pleasing lockscreen
Slide up to unlock
Screenshot: An Angel Portrait
Post : Download
4) High Definition
Elements revolving around Liquid Battery
Weather
Slide right to Unlock
Apply custom wallpaper
Screenshot: HD Portrait
Post : Download
5) Album Art Original
Elements revolving around an album art covering most of the screen
Controls sufficiently big enough for easier thumb navigation
Slide right to Unlock
Screenshot: Album Art Portrait
Post : Download
6) Album Art Iphone
Tried to mimic Iphone Media Player Widget Lockscreen using Laith's Iphone theme
Elements revolving around an album art covering most of the screen
Controls made big enough for comfortable control
Date using System fonts
Slide right to unlock
Screenshot: Album Art Iphone Portrait
Post : Download
7) N900 Minions
Media player widget
Date via System settings
Press to Unlock
Available for both Portrait and Landscape
Screenshot and Post: Download
Upload your lockscreen theme to Repository
Pre-requisites : Three things are necessary to upload to maemo.org Extras:
Preparing the package : First of all download the lockscreen source template - after uncompressing it you will get xxxx-lockscreen folder , you must change xxxx to your lockscreen theme name - Now copy image folder and .ini file to :
/xxxx-lockscreen/src/opt/qtlockscreen
- Copy font file (if there is font) to :
/xxxx-lockscreen/src/opt/usr/share/fonts
- In /xxxx-lockscreen/debian you will find necessary file for packaging , you must edit it and add your lockscreen theme information (only edit chanelog,control and rules) 1-Editing changelog file: changelog file contain these lines :
xxxx-lockscreen (version no.) stable; urgency=low put changes here . -- creator <email> Sun, 18 Sep 2011 15:40:51 +0000
change the informations to become something like this examlpe :
iphone-lockscreen (1.0) stable; urgency=low add operator name widget . -- your name <your email> Mon, 19 Sep 2011 12:25:47 +0000
2-Editing control file: control file contain these lines :
Source: xxxx-lockscreen Section: user/graphics Priority: extra Maintainer: <> Build-Depends: libqt4-dev Standards-Version: Package: xxxx-lockscreen Architecture: all Depends: qtlockscreen, qtlockscreenconfig Description: XB-Maemo-Display-Name: xxxx Lockscreen XSBC-Bugtracker: XB-Maemo-Icon-26:
change the information to become something like this example:
Source: iphone-lockscreen Section: user/graphics Priority: extra Maintainer: your name <your email> Build-Depends: libqt4-dev Standards-Version: 1.0 Package: iphone-lockscreen Architecture: all Depends: qtlockscreen, qtlockscreenconfig Description: iphone style lockscreen . XB-Maemo-Display-Name: Iphone Lockscreen XSBC-Bugtracker: XB-Maemo-Icon-26:
3-Editing rule file: you must only edit these lines in the rules file :
#$(MAKE) DESTDIR="$(CURDIR)/debian/xxxx-lockscreen" install mkdir -p "$(CURDIR)/debian/xxxx-lockscreen" mkdir -p "$(CURDIR)/debian/xxxx-lockscreen/usr/share/fonts/" cp -a "src/usr/share/fonts/font name.ttf" "$(CURDIR)/debian/xxxx-lockscreen/usr/share/fonts/" mkdir -p "$(CURDIR)/debian/xxxx-lockscreen/opt/qtlockscreen/" cp -a "src/opt/qtlockscreen/folder name" "$(CURDIR)/debian/xxxx-lockscreen/opt/qtlockscreen/" cp -a "src/opt/qtlockscreen/config file name.ini" "$(CURDIR)/debian/xxxx-lockscreen/opt/qtlockscreen/"
change these lines to somthing like this example:
#$(MAKE) DESTDIR="$(CURDIR)/debian/iphone-lockscreen" install mkdir -p "$(CURDIR)/debian/iphone-lockscreen" mkdir -p "$(CURDIR)/debian/iphone-lockscreen/usr/share/fonts/" cp -a "src/usr/share/fonts/Arial.ttf" "$(CURDIR)/debian/iphone-lockscreen/usr/share/fonts/" mkdir -p "$(CURDIR)/debian/iphone-lockscreen/opt/qtlockscreen/" cp -a "src/opt/qtlockscreen/Iphone" "$(CURDIR)/debian/iphone-lockscreen/opt/qtlockscreen/" cp -a "src/opt/qtlockscreen/Iphone.ini" "$(CURDIR)/debian/iphone-lockscreen/opt/qtlockscreen/"
- After editing these files (changelog,control and rules) you must convert it to unix format using MADDE by these commands:
cd /path/xxxx-lockscreen/debian/ tr -d '\r' < rules > rules1 tr -d '\r' < changelog > changelog1 tr -d '\r' < control > control1
now delete rules,changelog and control ,then rename rules1,changelog1 and control1 to rules,changelog,control
Uploading to extras-devel : - you must create all needed files to upload it using MADDE by these commands :
cd /path/xxxx-lockscreen mad dpkg-buildpackage -sa -S
now you will get inside xxxx-lockscreen folder three files (.changes,.dsc.tar.gz) - Go to Maemo Extras Assistant to upload your lockscreen files - In step 1 login - In step 2 choose fremantle and upload .changes file - In step 3 upload .dsc and .tar.gz file - In step 4 click on "move to autobuilder" - your package will be in repository in 30 min
Donations
...are welcome: "donate"