MyMoves 0.2.1: Vibra feedback, Bring back simple 3-finger gestures


Wohoo, MyMoves got its first patch! \o/

Thanks to this patch from ledimies, we’ve now got vibra feedback
support in the application. It follows the system feedback profiles, so if you turn off the feedback,
MyMoves won’t vibrate either.

The vibra feedback is played each time a gesture is successfully recognized. This is very useful since
now you will know if MyMoves recognized your gesture or if the start of the action/application/bookmark
is the one taking a bit more time.

The other addition in this version are 8 three-finger gestures, the same simple ones as in
the two-finger case: up, down, left, right and the corner-to-corner gestures.

Version 0.2.1 is now pending in the Store QA process, hopefully it’ll arrive soon : )

Enjoy your moves!

MyMoves 0.2.0: Less gestures, more features


It’s been a While, but managed to find both a slot of time + some inspiration to gather new ideas together.

MyMoves 0.2.0 was just sent to the Nokia Store for approval.

“What? Less gestures?” Yeah. The more complex ones work every now and then. They all mostly work for me,
but since i created them, i’m not the best judge on how usable they are (and judging by Nokia Store reviews
they do not work for many people, as expected). So. Moving on with 8 two-finger gestures, them being up,
down, left, right + the corner-to-corner ones.

Then the nice part: new features!!! \o/

Launching bookmarks

Performing actions (running scripts)

Launching Bookmarks does exactly what it says: you can now use
gestures to launch the web sites you’ve saved to the app grid.

Performing actions is a longer story. Played around with D-BUS commands the
other day, and ended up gathering together some useful ones to be used with MyMoves.
Basically the actions are shell scripts which run a D-BUS command. Sure, it is not
as fast as doing it from C++, or as clean as doing it by using plugins, but it’s the
hacker-friendly way: ‘script plugins’ 🙂

The scripts are located in /home/user/.local/mymovescripts.
Let’s take an example: adding a new event to calendar

#Name=Calendar: Add new event
qdbus / “” “”

It’s a normal shell script, the most important line from MyMoves
point-of-view being the second line which states the name of the action
to be parsed on the UI side.

Here’s current set of 11 actions:
– Calendar: Add new event
– Calendar: Add new task
– Calendar: Show month view
– Calendar: Shot Todo list
– Calendar: Show week view
– Music: Switch to next song
– Music: Switch to previous song
– Create a new SMS message
– Phone: Open call history
– Phone: Open contacts list
– Phone: Open dialer

A short video of the new features:

And then a few sceenshots of the updated UI:

Change your N9 desktop background vol. 2


A few weeks ago kuzmichov posted instructions to on how to change the background of your N9’s home screen.

Kuzmichov’s instructions change the backround of the component behind all the swipable home screens. Today we’ll be changing the backgrounds of the 3 individual screens.

For that, we need to edit a different .css file,

We want to add a background-image tag into three CSS blocks: SwipeEventsStyle, SwipeLauncherStyle and SwipeSwithcerStyle.

Naturally, we’ll need three images as well, let’s name them like this:


Copy these images into /usr/share/themes/blanco/meegotouch/images/backgrounds/

The code in the CSS blocks of meegotouchhome.css will become like this:

SwipeEventsStyle {
… code …
background-image: background-image-events

SwipeLauncherStyle {
… code …
background-image: background-image-launcher

SwipeSwitcherStyle {
… code …
background-image: background-image-switcher

In addition to that, comment out/remove the background-color tag from NotificationAreaStyle, so the notification area background will become transparent. The messages themselves will still have a semi-transparent background color (most likely there’s a tag for that too but don’t know where).

Reboot, and you should have three nice background images!

You can download the modified meegotouchhome.css from here.

For some reason, when swiping between the events feed and app grid, there’s a 1 pixel wide column
between the backgrounds. Most likely there’s not much that can be done for that, but it’s a minor glitch anyway : )

Here’s an example of my home screens:

Have fun!

MyMoves 0.1.4: better recognition + corner-to-corner gestures


Just about to send MyMoves 0.1.4 to Nokia Store.

I reimplemented the recognition algorithm, so now the app should be a lot better at recognizing your gestures.
In addition to that, there are now new gestures for swiping from one corner to another.
Here’s the latest list of gestures:

Aand a video clip:

Let’s hope the guys&girls at the Store are quick at reviewing : )

Power User 2011: Running scripts on your N9/N950 with MyMoves

Hi all!

In case you use MyMoves, here’s a fun thing to play with: running Python & shell scripts with gestures 🙂

For this you will need to have the developer mode enabled. I’m also going to assume you’ve already got Python for Harmattan already installed.

Running shell scripts with MyMoves
Say, you’ve got a useful shell script at /home/user/MyDocs/ Let’s run that using MyMoves gestures:

1. Edit /home/user/.config/mymoves.conf
2. Replace the line of the gesture of your choice. I’m going to use the ‘swipe up with two fingers’ gesture for this example, which is the row beginning with d0 in mymoves.conf

Put this into that line:
d0###MyScript###/usr/bin/aegis-exec -s -u user -l ‘/usr/bin/meego-terminal -n -e sh /home/user/MyDocs/’

3. Make sure to edit and insert a pausing row to the end of the script, so the Terminal window won’t just close immediately:

read -p ‘Press a key to continue…’

4. Go to MyMoves configuration UI, press ‘Stop Observing’ and after that ‘Start observing’, so the updated mymoves.conf is loaded.
5. Swipe!

Running Python scripts with MyMoves
Python scripts work exactly the same way, except you pass the -i parameter to the Python shell so it won’t close the Terminal window after the script is run.

So, for e.g. a script in /home/user/MyDocs/, do the mymoves.conf editing as above, but add a line like this:

d0###MyPythonScript###/usr/bin/aegis-exec -s -u user -l ‘/usr/bin/meego-terminal -e /usr/bin/python -i /home/user/MyDocs/’

Then just press ‘Stop Observing’ and ‘Start Observing’ in the MyMoves UI, and you’re ready to use the script.

MyMoves 0.1.2 available in Nokia Store

Ye. They accepted my small application to the Nokia Store!

Here’s a short overview of the latest version:

Sources in:

If you want to install the application the dev-mode way, see the instructions in

Aand here’s a textual overview:

Overview of MyMoves


MyMoves is an application which adds a functionality of opening applications using multitouch gestures.
It currently works in Nokia Harmattan phones (N9/N950). There are 8 two-finger and 8 three-finger gestures to choose from.

Here they are:

Using MyMoves is simple. For each available gesture, you select an item you want to launch,
and then using that gesture anywhere in the system will open up the application you selected. MyMoves
also recognizes if you do a pinch gesture, and stays out of the way of normal phone usage.

Here are the most important screens of the application:

The main menu has four buttons and an indication text which tells whether or not MyMoves is observing your gestures. Pressing ‘My Moves’ takes you to the gesture configuration list (the middle picture). There you see which item is connected to which gesture. If you want to change an item, just click on a gesture and the edit item screen opens. From there you select whether you want to run an action (create new SMS, add a calendar event etc), application, or a web page you’ve saved as a bookmark.

Using the gestures in practice

When you have configured the gestures you want to use, make sure the main page is saying ‘Observing gestures’. After this, you can close the configuration UI.

Now the gestures are ready for use. MyMoves comes with a gesture recognition server which handles launching the applications. It is started immediately after installing the application, and after boot-up (please note, it might take > 1min for the server to start after boot, because the system launches the more high-priority items first).

Launching an application with a gesture:
– hold your fingers together like a pencil, and make a gesture

That’s all. Have fun using the application!
You can download MyMoves for free from the Nokia Store.

Here’s a short overview video:

Another clip, of the 0.1.4 version:

Yet another, 0.2.0 version:

If you want to support my work, you can

MyMoves 0.1.2: Ready for store submission

Ok. Now it’s polished. The UI looks a bit nicer than previously : )

Changes in 0.1.2:
– Added a howto-screen
– Moved mymoves.conf to ~/.config
– About screen
– Splash screen
– Logo to main page
– Icons in app selection list
– Overall tweaking of the UI


1. Add the mymoves repository to your phone:
– Create a file called /etc/apt/sources.list.d/mymoves.list
– Into that file, enter this line (without the quotes): “deb binary/

2. Make sure you’ve got a working internet connection on your phone
3. apt-get update
4. apt-get install mymoves

If you’ve already got MyMoves 0.0.2 installed, just run
apt-get update && apt-get install mymoves
(yes, that’s apt-get install), and it will update the package.


MyMoves 0.1.0: all in one package

Hi. Decided to wrap up all the needed things into a single .deb
(perhaps preparing for a Store submission..?: ).

Changes in the latest version:

– Fixed pinch recognition. Two-finger gestures shouldn’t interfere
with two-finger phone usage anymore, e.g. zooming a web page and
panning after that with two fingers is now possible
– UI tweaks: A cancel button to app selection list
– Observing isn’t stopped anymore if the UI is closed in MyMoves view
– New icon (wheeee)


1. Add the mymoves repository to your phone:
– Create a file called /etc/apt/sources.list.d/mymoves.list
– Into that file, enter this line (without the quotes): “deb binary/

2. Make sure you’ve got a working internet connection on your phone
3. apt-get update
4. apt-get install mymoves

If you’ve already got MyMoves 0.0.2 installed, just run
apt-get update && apt-get install mymoves
(yes, that’s apt-get install), and it will update the package.

Have fun!

MyMoves 0.0.2: Usable gestures for Harmattan


MyMoves version 0.0.2 is now out. The previous version was a hackish demo which didn’t contain a proper UI
for normal usage. This version does : ) Also, recording the gestures with a clumsy UI wasn’t the nicest
thing on earth, so I settled for having 12 pre-defined gestures, which should all be simple enough to
be recognized with different users.

In order to avoid disturbing normal usage of the phone, there are 6 two-finger and 6 three-finger
gestures, and no single-finger gestures at all. In addition to that, there’s pinch recognition for
avoiding accidentally opening an application while zooming in or out. Currently it handles most of the pinches, but there’s still a couple of glitches to fix, such as it doesn’t yet catch zooming of web pages 100% of the times.

Here are the gestures:

Most significant changes:
– Simple configuration UI for selecting an app for each gesture
– Option in the UI to start/stop observing gestures
– 12 preconfigured multi-touch gestures
– Pinch recognition to avoid conflicting with normal usage
– Auto-start of the recognition server on boot and after installation

Installation is now available via a repository, so enough for copying stuff into the phone manually : )

Instructions for installation (run as root):
1. In case you have the previous version of mymoves installed, remove it from the command line:
dpkg -P mymoves mymoveserver

2. Add the mymoves repository to your phone:
– Create a file called /etc/apt/sources.list.d/mymoves.list
– Into that file, enter this line (without the quotes): “deb binary/

3. Make sure you’ve got a working internet connection on your phone

4. apt-get update
5. apt-get install mymoves
6. Ready to run!

Have fun with the app! : )

For the interested, sources are in GitHub:
The UI:
Server side:

Here’s a demo clip of MyMoves 0.0.2 in action:

EDIT: Thanks to a question in Youtube, decided to make another small demo to show that you can also use the gestures in the lock screen. The system forces the lock screen on top, but it still opens an application ready for you to use : ) The clip: