* Use `cr.save` and `cr.stroke` (Restore the context but not the path).
* Use `cr.identityMatrix` to clean context after transformations.
Inverting transformations was not enough, in particular with combinations of scale and rotate (`SCALE_ANGLE`, `REFLECTION`, ...).
Now all elements can be grabbed correctly.
* `SCALE_PRESERVE` (preserve ratio)
* `SCALE` (vertical, horizontal or both)
There is a third transformation, `SCALE_ANGLE`, that is not used because it causes problems to the `elementFinder`. Probably a bug of Cairo.inStroke that do no consider scales.
* 'Shapes' -> 'Tools' ('Shapes' + 'Manipulations')
* 'TextState' -> 'TextStates'
* Rotation centers are now computed dynamically (when building Cairo or SVG paths).
* Text rotation center is now located at the beginning of the text.
* Text elements gain a 'lineIndex' attribute to retrieve the rotation center of the first line.
```
JS WARNING: [/home/.../draw.js 997]: reference to undefined property "state"
```
The state property is undefined if the element is loaded from json file.
* Do not use fileInfo.get_modification_date_time for compatibility reason.
* Inverse 'Open drawing' list order: recent first.
* Overwrite identical contents when the save operation is queried by the user.
Pointer movement is ignored when the `space` key is held.
To ensure [Screenshot Tool](https://extensions.gnome.org/extension/1112/screenshot-tool/) extension compatibility, we need a way to let the third extension select the screenshot area with pointer but without leaving drawing mode and without drawing.
As a side effect, it allows to insert straight line segments in free drawing (after releasing the key).
Fixes issue #20
St.Entry clutter_text set the DEFAULT cursor on leave event with a delay and overrides the cursor set by area.updatePointerCursor().
In order to update drawing cursor on menu closed, we need to leave the saveEntry before closing menu.
Since escape key press event can't be captured easily, the job is done in the menu close function.
* Use a "drawOnYourScreen" subdir in the xdg user data dir
* Info item with the name of the last saved/open json file
* "Open drawing" sub menu with data dir content
* "Save drawing" sub menu with entry
* "Save", "Open previous" and "Open next" keybindings