Commit Graph

83 Commits

Author SHA1 Message Date
abakkk b69c4ccf97 new polygon shape
Mark vertices with `Enter` and finish drawing by releasing clic, like other shapes.
2020-06-07 18:57:11 +02:00
abakkk 755b3d79c9 text: start a new line with Enter key
Finish writing with click or `Escape` key.

close #30
2020-06-07 17:01:36 +02:00
abakkk c087e359d9 hide help on `Escape` key pressed
Press the key again to leave drawing mode.
2020-06-05 22:52:02 +02:00
abakkk c5721f9752 no separator on small monitor 2020-06-05 22:45:11 +02:00
abakkk 360ac081ce Add grid overlay 2020-06-05 15:58:58 +02:00
abakkk 11a00a25d0 Fix font-color label color
Foreground color markup is not displayed since 3.36, use style instead but the transparency is lost.

close #31
2020-06-01 20:27:05 +02:00
abakkk a4456762b5 not to populate helper widget before the first showing
Does not fix anything, just a marginal gain.
2020-06-01 17:37:08 +02:00
abakkk b45c86a5af escape empty media-keys settings in the helper
close #28
2020-06-01 17:36:43 +02:00
abakkk 508d7dca3a fix helper OSD display 2020-03-13 17:09:57 +01:00
abakkk 6286834473 GS 3.36 compatibility
* Clutter.Escape -> Clutter.KEY_Escape
* container.add(child) -> actor.add_child(child)
* container.add(child, { expand: true }) -> child.x_expand = true && actor.add_child(child)
* slider.onKeyPressEvent does not exist anymore (Slider use vfunc instead)
2020-03-13 17:09:57 +01:00
abakkk 0ae23a5d10 "Open user.css" -> "Edit style" 2020-03-04 14:23:49 +01:00
abakkk 289b280f67 remove Monospace in openDrawing item styles 2020-03-04 08:51:36 +01:00
abakkk 06f59dbea3 json files
* 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.
2020-03-03 13:48:31 +01:00
abakkk 8580902bf5 fix commit 5e8cb0ea1 (close menu when showing helper) 2020-03-02 16:42:46 +01:00
abakkk d19c3e25ea cleanup 2020-03-02 16:32:50 +01:00
abakkk 0dd7859d4f minor, syntax 2020-03-01 17:33:41 +01:00
abakkk 34c7c8f575 let user customize square area size
Fixes issue #22
2020-03-01 16:56:49 +01:00
abakkk 1e03967fbf introduce space key modifier
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
2020-03-01 13:25:48 +01:00
abakkk 5e8cb0ea1f close menu when showing helper 2020-03-01 11:35:33 +01:00
abakkk c9bde10ff0 cursor -> textCursor
Not to be confused with pointer cursor.
2020-02-09 17:56:40 +01:00
abakkk cc7e208c35 minor, imports ByteArray module in header 2020-02-09 17:45:28 +01:00
abakkk 528a62fa57 minor, menuCloseFunction
Fixes 'TypeError: this.saveDrawingSubMenu is undefined'
2020-02-09 16:43:21 +01:00
abakkk e0ce5e0096 do not override peristent.json with an empty drawing when changing persistency setting 2020-01-10 13:01:26 +01:00
abakkk aa0a984878 define 'persistent-file-name' and 'svg-file-name' in metadata
instead of 'DEFAULT-FILE-NAME' const
2020-01-10 12:32:28 +01:00
abakkk 662f229a64 user.css outside extension directory
* Move drawing style to `default.css`.
* Generate (when opening) and handle `user.css` in `~/.local/share/drawOnYourScreen/`.
2020-01-06 21:24:29 +01:00
abakkk e4d6e327b8 icons/ -> data/icons/ 2020-01-06 15:46:49 +01:00
abakkk 738d06cde6 replace DATA_SUB_DIR const with 'data-dir' metadata property 2020-01-06 15:32:38 +01:00
abakkk 8159ff3f7a minor, metadata 2020-01-06 15:29:01 +01:00
abakkk f4ff709fd3 change imports
* Extension -> Me
* ExtensionJs -> Extension
* Use ExtensionUtils instead of convenience with GS 3.32+
2020-01-05 15:44:51 +01:00
abakkk 8f3fbe7aa9 replace 'smoothed-stroke' pref with 'Ctrl' key modifier 2020-01-05 13:42:05 +01:00
abakkk 74f602b268 fix cursor update when closing the menu from save entry
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.
2020-01-05 12:36:42 +01:00
abakkk 04b119557f fix commit ec2348b1e (drawingContentsHasChanged) 2020-01-04 16:07:53 +01:00
abakkk 5997c9cba3 small trick to prevent the menu from "jumping" on first opening 2020-01-04 12:58:05 +01:00
abakkk ec2348b1ec Add asterisk to the drawing name item if the drawing has changed since last save or open operation 2020-01-04 12:50:43 +01:00
abakkk 17bbe345af new "Open" and "Save" drawing features
* 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
2020-01-04 00:16:20 +01:00
abakkk 7c7d75a2ba minor, true -> GLib.SOURCE_CONTINUE 2020-01-02 01:44:08 +01:00
abakkk 97c8393835 getActor() utility function
Prepare save and open drawing features.
2020-01-02 01:38:57 +01:00
abakkk 7878af7157 DEFAULT_FILE_NAME and getDateString()
Prepare save and open drawing features.
2020-01-02 01:22:25 +01:00
abakkk f0ac2a21b0 add iconName param to showOsd function
Prepare save and open drawing features.
2020-01-02 00:56:40 +01:00
abakkk 1c6fa54d69 drawing menu style improvement
* Set 'max-height' property to menu actor.
* Reduce size of menu items.
* Rename 'draw-on-your-screen-menu-separator' style class to 'draw-on-your-screen-menu-separator-item' because it is relative to the item actor, not the item._separator actor.
* Rename 'draw-on-your-screen-separator' style class to 'draw-on-your-screen-helper-separator' not to confuse with menu separator.
2019-12-29 15:26:20 +01:00
abakkk 944500fc24 do not create menu when leaving drawing mode
'this.menu.close()' called the getter 'this.menu' that create the menu if it's not exist, which is not wanted when leaving drawing mode.
2019-12-28 13:28:25 +01:00
abakkk bb78937d60 minor, 'DrowOnYourScreen' -> 'DrawOnYourScreen' in licence headers 2019-12-28 13:25:41 +01:00
abakkk 6dd552ae7e fixes after test on GS 3.24
* use var to export extensionJs.manager
* remove duplicated (old) buildPrefsWidget
* set OsdWindow.HIDE_TIMEOUT in a try/catch because HIDE_TIMEOUT is not exported with 'var'
* capture i in callbacks in for(){} (i is changing)
* add 3.24 version as supported
2019-11-29 18:43:42 +01:00
abakkk fbd6ad709c replace separate emitter (DrawingAreaEmitter) by GObject signal
* signals 'show-osd' and 'stop-drawing'
* use level to set no level (null)
* increase maxLevel when level bar is full
2019-11-27 19:01:07 +01:00
abakkk 1af3554f5c improve pointer cursor management
* cross cursor for geometric shapes
* 'hand' cursor for 'ctrl' actions
* default cursor in menu
2019-11-27 06:04:37 +01:00
abakkk fb8e46bb45 fix text shape that displayed 'ctrl' shortcuts 2019-11-25 11:44:18 +01:00
abakkk 52ca619294 Fix lineWidth
* GS 3.34 compatibility for barLevel, see for example status/volume.js StreamSlider.getLevel():
  * 3.32 : "return 100 * this._stream.volume / this._control.get_vol_max_norm();"
  * 3.34 : "return this._stream.volume / this._control.get_vol_max_norm();"
* allow 0 px lineWidth because stroke lines cannot have color with some transparency
* use warning color in OSD and drawing menu when lineWidth is 0 px
2019-10-11 13:26:08 +02:00
abakkk 7d9bb459b4 Create drawing menu on demand 2019-10-11 09:39:17 +02:00
abakkk 8671a9e502 GS 3.34 compatibility
* PanelMenu.Button actor
* PopupMenu.PopupBaseMenuItem, PopupMenu.PopupSwitchMenuItem and PopupMenu.PopupSeparatorMenuItem actor
* Slider.Slider actor and 'value-changed' signal
* PopupMenu.PopupMenuManager init params
* 'org.gnome.settings-daemon.plugins.media-keys' setting values : string -> array of strings
2019-10-11 09:22:37 +02:00
abakkk c531fba30c decrease switch and icon size in menu 2019-03-29 22:57:22 +01:00