Commit Graph

42 Commits

Author SHA1 Message Date
abakkk e218819edd make transformations undoable/redoable 2020-10-04 17:20:03 +02:00
abakkk 6374cc8c47 motion timeout
Add intermediate points to make quick free drawings smoother.
Do not redisplay the area at this step (crashes).
Use device.get_coords rather than global.get_pointer because the later return rounded (floor) values.

Fix #45.
2020-10-04 11:12:47 +02:00
abakkk 82aee30657 fix unsanitized GType names
With old GS/GJS, some GType names were generated from class names without sanitizing it (e.g. Menu.ActionButton).

Instead of defining all GType names, sanitize all class name as it was GType name, and let GJS generated GType name securely when it is necessary.

Fix #46.
2020-10-04 10:01:55 +02:00
abakkk 129c8f584c Name GTypes and classes against extension uuid.
For DeepExtensionReloader.
2020-09-25 11:55:36 +02:00
abakkk 3c67bf3398 colored SVG images
Color (fill) SVG images by pressing the `Shift` key.
2020-09-22 23:21:48 +02:00
abakkk 532b9242c9 image element, minor
* image.toJson -> image.toJSON.
* remove unused 'fill' and 'operator' properties.
2020-09-22 18:22:41 +02:00
abakkk 27e194905b add gpl import
* Import palettes from a .gpl file (one palette for each column).
* Add possibility to use more than 9 palettes.
* Color display names support.
* color.toJSON for svg and drawing saves, color.toString for display.
2020-09-22 17:31:48 +02:00
abakkk 737bc856c4 color-picker extension support
The color picker use the ["Color Picker" extensions](https://github.com/tuberry/color-picker) if it is available thanks to `pickAsync` "api". In comparaison to the GS color picker, it provides a colored cursor and a menu to adjust the color.
2020-09-20 15:40:45 +02:00
abakkk af694382c8 add color picker
It wraps the upstream color picker, that is designed for DBus access.
There is a shortcut and a menu button.
2020-09-20 15:40:45 +02:00
abakkk d20040b135 fix textEntry position
* element.x and element.y are relative to the area, not to the stage.
* Do not hide and do not set opacity to 0 because ibusCandidatePopup need a mapped text entry to init correctly its position.
2020-09-19 00:24:50 +02:00
abakkk eb87714adc area._stopAll
* pros: the function is shared and it decreases bugs.
* cons: drawing/writing/transfo are not deleted if unfinished.
2020-09-18 19:13:10 +02:00
abakkk 23eea44661 add "Persistent over toggles' setting
* Rename "Persistent" to "Persistent over restarts".
* If disabled, "Persistent over toggles" has priority over "Persistent over restarts" and "Drawing on the desktop".

Close issue #42.
2020-09-17 17:30:30 +02:00
abakkk 072adde856 group menu items at the bottom
In addition, 'Save as a SVG file' -> "Export to a SVG file'.
2020-09-17 17:29:59 +02:00
abakkk 1d73d9f0e3 pass color and font when duplacting
Fix commit 42b4c9c0 .
2020-09-16 17:38:54 +02:00
abakkk e3b32ace3b fix ImageFromJson
Do not use the same content for insertable image and gicon. The former depends on the area size whereas the later is square.
2020-09-16 08:52:36 +02:00
abakkk 42b4c9c00c color and font
* Pass Clutter color and Pango fontDescription objects to elements, not strings.
* Do not use the color format '#rrggbbaa' in svg since it is not supported in GNOME 3.24.
2020-09-15 00:29:02 +02:00
abakkk a8633f1fbc add gicons to menu openDrawingSubMenu items 2020-09-14 01:38:00 +02:00
abakkk 60091a94b6 rework of Files.Jsons
In the same way as Files.Images.
2020-09-13 23:50:09 +02:00
abakkk 24682db69c add a lot of icons
* Complete Files.Icons.
* Add a lot of icons in the menu and the osd notifications.
2020-09-12 15:25:42 +02:00
abakkk 771bad2d59 improve images
* Let the user choose the directory.
* Rework of Files.Images.
* area.currentImage is now an ... image, not an index.
* Add 'switch-image-file-reverse' keybinding.
* Add image gicons (from thumbnails) in the submenu.
* Images are reset on drawing mode left or on images added from the clipboard.
2020-09-11 14:22:18 +02:00
abakkk 8277710510 get all icons from Files.Icons 2020-09-10 15:19:17 +02:00
abakkk 442d20b387 paste image files from clipboard 2020-09-09 22:25:56 +02:00
abakkk 56008f3041 add ranges to drawing settings schema
* It is no longer required to clamp the setting value in area.js.
* Add a "range" property, completed with another 'step' property, to PixelSpinButton in order to directly initiate the lower and upper values of the adjustment from the relevant setting range.
* Not related: fix an inversion between Pango and Cairo in element.js.
2020-09-09 12:12:29 +02:00
abakkk 03b73862cc .pot rework
* .pot file can be generated automaticaly from new locale/POTFILES.in.
* move shortcuts key and strings to new shortcut.js
2020-09-09 09:40:45 +02:00
abakkk 2dd900bddf new DisplayStrings object
Group the most strings to display in a new DisplayStrings object.
It is used by both menu and osd notifications.
2020-09-07 18:56:48 +02:00
abakkk f9769c11f2 default font and font description
* Use interface font as default font
* Work with a `Pango.FontDescription` instead of separate font properties.
2020-09-05 00:03:05 +02:00
abakkk c1689cac75 rework prefs, settings, locales
Although there is a lot of changes, nothing is important.
2020-09-02 16:16:23 +02:00
abakkk 6a8afcc20a use timestamps instead of Math.random in elementGrabber 2020-08-31 14:06:47 +02:00
abakkk 89067a8dd9 use an Extension class 2020-08-31 13:05:41 +02:00
abakkk a128664921 minor, add 'exported' directive for linters 2020-08-31 11:05:33 +02:00
abakkk b3a1a77160 replace user stylesheet with proper drawing settings
Since the most drawing params can be changed via menu or shortcuts, remove default.css and user.css.

* Missing params like palettes, dash, grid, etc, are added to prefs.
* Add palette choice to menu and shortcuts.
* Some defaults like fonts, line width, etc, are no longer modifiable by the user.
2020-08-31 09:43:00 +02:00
abakkk 01701538bb minor, rework settings 2020-08-23 11:49:26 +02:00
abakkk a1ce4aaf79 Add font family reversed switching 2020-08-06 00:26:10 +02:00
abakkk 39ec1ba888 toggle -> switch 2020-08-06 00:06:01 +02:00
abakkk c78f5e82da Extend font family possibilities
To fix in the future: memory usage of font-styled item labels
2020-08-05 23:30:25 +02:00
abakkk 80e2955f8c fix menu item name and sensitivity stynchronization 2020-08-05 02:49:52 +02:00
abakkk 11b90ecc0a put json file stuff in files.js
In the same way than image files.
2020-08-05 02:01:17 +02:00
abakkk 1172e9da6f new image shape
Images files are picked from `~/DrawOnYourScreen/images/` (and `extensiondir/images/`)
svg, png, jpeg, ...(pixbuf)
2020-08-01 14:08:17 +02:00
abakkk 352f86018b center grid overlay 2020-07-11 22:42:48 +02:00
abakkk 813d6b0f1b Show the textEntry when ibusCandidatePopup is visible 2020-07-11 15:59:08 +02:00
abakkk e8140eae88 Text elements as a separated class 2020-07-08 11:47:51 +02:00
abakkk 96efac1e3f draw.js -> area.js 2020-07-04 08:42:45 +02:00