Links
Description
Powerlaunch was written for the Maemo platform. The current version is
designed to replace mce and systemui and is much
more customizable.
Powerlaunch is designed to allow the easy creation of new interfaces
with event-driven handlers. Events such as user inputs like key
presses or touchscreen events and system events like headphone state
or battery level can be handled however the user wishes. A simple
config file language is used to specify the desired response to
events. In addition, there are different modes so the response to a
particular event can be different depending on the current
mode. There's an unlimited hierarchy and nesting of modes, so for
example, you could map some arbitrary combination of keys like
left,right,up,right,right to launch your favorite program.
The overarching goal is to put the user in control of the system
interface.
Examples
These are some of the ways I can think of to use powerlaunch. I would
welcome any ideas people have about their "ideal interface" whether it
is currently possible with powerlaunch or not.
- A short poweroff press by itself turns the device into the
"softpoweroff" mode. But a short powerkey press followed by other keys
(within some short time) instead can launch programs. This allows you
to have a very easy way to turn the device off (one key press) and a
very easy way to launch programs.
- While 'off', you can push a button to show the date/time and then
have it automatically turn off (similar to how some cell phones work).
- Launching programs using hardware keys is faster than tapping on
the screen.
- I keep the brightness of the screen low (to save battery). In
bright light, it's difficult to see the screen well enough to find the
display icon in the statusbar to brighten the display. Other devices
have had buttons I could hold to at least temporarily turn on a
backlight. With powerlaunch, you can use a few quick key presses and
the screen brightens.
- The systemui's touchscreen/keypad lock logic is fully implemented
in the powerlaunch config file and is customizable (or removable).
- In the stock UI, after turning off bluetooth, it's a pain to turn
it back on (you have to go to the control panel). Instead, you can add
an icon or a keystroke to turn it back on (or off). For example, you
could augment the default menu that shows up on power press to add an
option to turn on bluetooth.
- Keys can have different actions depending on the time pressed. For
example, power,up could either brighten the screen or launch the
browser with your favorite web page depending on the amount of time
between the key presses.
- You could implement a device lock that requires entering the right
combination of keys to unlock. The hard keys are easier to enter codes
faster than an on-screen keyboard.
- I use powerlaunch for a pocket music mode where I press a set of
hardware keys and it turns off and locks the screen only. The keys can
then be used to control music/volume while the device is in my
pocket. This also works great for playing music while driving without
requiring looking at the device.
- Dealing with non-hildon/GTK windows. For example, it is possible
to toggle a window into fullscreen mode independent of whether it
supports it. Also, some windows don't appear in the task list and so
after switching away from them, it becomes impossible to switch
back. Using some keystrokes, you can bring the window back.
Screenshots
Here are some random screenshots.
Get involved
Mailing list
There's a new mailing list for discussing powerlaunch. Sign up here. Scripts
or ideas for scripts are especially welcome.
Join the project
I'm looking for some people to help write powerlaunch scripts. You
don't really need to be a programmer and all you need is an internet
tablet and the ability to edit config files.
Bugs/requests
You can submit a bug or feature request via the project
page or contact me.
Austin Che