Keavon Chambers
2367f5e56b
Update terminology in the docs
2021-08-12 00:39:29 -07:00
Keavon Chambers
92953e348b
Clean up popovers: background color and placeholder text
2021-08-11 23:53:05 -07:00
Keavon Chambers
7c9a3ba4c3
Revert "Fix floating menu positioning behavior when web page has scrollbars ( #263 ) ( #341 )"
...
This reverts commit 02fd00da10852c59c742a52c81b2f0b10fcd256b.
2021-08-11 23:49:31 -07:00
Henry Sloan
d6ce9e16b7
Ignore mouse events without any button state changes ( #343 )
2021-08-12 01:26:46 -04:00
0HyperCube
18091dd3cd
Fix floating menu positioning behavior when web page has scrollbars ( #263 ) ( #341 )
...
* Fix color picker position on scrolled window
* Robust fix with proper usage of CSS stacking contexts
* Fix mobile device scaling
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2021-08-12 00:56:18 +01:00
Paul Kupper
6c14c5e04e
Fix n-gon intersection ( #342 )
...
* Fix n-gon intersection
* Fix not all layers selected with box selection
* Code golf for TrueDoctor
2021-08-11 23:58:10 +02:00
Keavon Chambers
39c784599d
Update npm dependencies
2021-08-10 20:25:21 -07:00
dependabot[bot]
3d89f63f20
Bump url-parse from 1.5.1 to 1.5.3 in /frontend ( #339 )
...
Bumps [url-parse](https://github.com/unshiftio/url-parse ) from 1.5.1 to 1.5.3.
- [Release notes](https://github.com/unshiftio/url-parse/releases )
- [Commits](https://github.com/unshiftio/url-parse/compare/1.5.1...1.5.3 )
---
updated-dependencies:
- dependency-name: url-parse
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-10 20:18:57 -07:00
dependabot[bot]
35a241320e
Bump path-parse from 1.0.6 to 1.0.7 in /frontend ( #340 )
...
Bumps [path-parse](https://github.com/jbgutierrez/path-parse ) from 1.0.6 to 1.0.7.
- [Release notes](https://github.com/jbgutierrez/path-parse/releases )
- [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7 )
---
updated-dependencies:
- dependency-name: path-parse
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-10 20:08:57 -07:00
Keavon Chambers
26ae4e2751
Fix documentation links
2021-08-10 20:03:15 -07:00
Keavon Chambers
22947933b0
Improve document zooming to work based on nice steps ( #336 )
...
* Improve document zooming to work based on nice steps
* Code review improvements
2021-08-10 16:21:18 -07:00
Keaton Brandt
74d0e6dbc0
Fix clicking on menu bar sub-menu entries ( #337 )
...
* Fix a bug where clicking a submenu would cause the parent menu to be closed before the submenu click could be registered. Also ignores package-lock.json.
* Remove package-lock gitignore
* Add back empty line
2021-08-10 17:54:09 -04:00
Keavon Chambers
b7976219f3
Upgrade packages and a couple fix warnings
2021-08-09 18:41:09 -07:00
Keavon Chambers
a1fec1c93f
Add DisplayError to show user errors from the backend
2021-08-08 16:52:09 -07:00
Keavon Chambers
53ad105f57
Restructure project directories ( #333 )
...
`/client/web` -> `/frontend`
`/client/cli` -> *delete for now*
`/client/native` -> *delete for now*
`/core/editor` -> `/editor`
`/core/document` -> `/graphene`
`/core/renderer` -> `/charcoal`
`/core/proc-macro` -> `/proc-macros` *(now plural)*
2021-08-07 05:17:18 -07:00
Keavon Chambers
434695d578
Refactor RadioInput widget ( #332 )
2021-08-07 03:15:40 -07:00
TrueDoctor
699562b735
Transform API ( #301 )
...
* Enforce cache dirtification
* Turn all shapes into one struct
* Remove working folder
* Remove old shapes
* Major restructuring
* Refactor Ellipse, Rectangle and ShapeTool
* Simplify bounding box calculation for folder
* Fix panic in select tool
* Refactorselect tool
* Refactor Align
* Refactor flipping layers
* Zoom to fit all
* Refactor tools to avoid state keeping
* Refactor more tools to use state that is passed along
* Fix whitespace + change selection box style
* Set viewbox of svg export based on the contents
2021-08-06 12:34:30 +02:00
Keavon Chambers
4d90d70220
Refactor document tab management from Panel.vue into utilities/documents.ts
2021-08-04 12:39:18 -07:00
dependabot[bot]
7cc3a44527
Bump tar from 5.0.5 to 5.0.7 in /client/web ( #329 )
...
Bumps [tar](https://github.com/npm/node-tar ) from 5.0.5 to 5.0.7.
- [Release notes](https://github.com/npm/node-tar/releases )
- [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md )
- [Commits](https://github.com/npm/node-tar/compare/v5.0.5...v5.0.7 )
---
updated-dependencies:
- dependency-name: tar
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-03 17:11:16 -07:00
Henry Sloan
ea01c71421
Change eyedropper to use correct message ( #327 )
2021-08-03 16:35:26 -04:00
Keavon Chambers
7afb28b995
Add a selected_layers() function and refactor code to use it ( #314 )
...
* Add a selected_layers() function
* Refactor AlignSelectedLayers
Co-authored-by: Dennis Kobert <dennis@kobert.dev>
2021-08-01 01:29:23 -07:00
Keavon Chambers
11d8b80698
Add checkbox to MenuBarInput widget
2021-07-31 18:20:51 -07:00
Henry Sloan
6bb8357dbb
Change flipping to use the joint bounding box of the selection ( #323 )
...
* Change flipping to use the joint bounding box
* Fix minor untested changes
* Replace unwrap with question mark
2021-07-31 18:18:54 -04:00
Keavon Chambers
e02250e8c6
Add DialogModal and use it for close confirmations and "coming soon" features ( #322 )
...
Closes #269
Closes #196
* Add DialogModal and use it for close confirmations and "coming soon" features
* Code cleanup; add Enter key to accept emphasized dialog button
2021-07-31 14:30:31 -07:00
Keavon Chambers
1c317d0166
Add TextButton widget ( #321 )
2021-07-31 04:58:25 -07:00
Keavon Chambers
e1ac2a85b3
Fix two small bugs introduced in #311
2021-07-30 18:46:23 -07:00
Keavon Chambers
3948389806
Add "Sides" label to Shape Tool's options bar number input
2021-07-30 15:45:49 -07:00
Keavon Chambers
652f192a50
Add the ability for NumberInput widgets to display labels
...
Part of #313
2021-07-29 13:56:18 -07:00
Keavon Chambers
0cdd1762b8
Layer opacity ( #312 )
...
Closes #187
* Add layer opacity input
* Improve Rust code cleanliness
2021-07-27 23:15:23 -07:00
Keavon Chambers
12fc330952
Add features to NumberInput widget; refactor widgets and tool options ( #311 )
...
Closes #310
* Add features to NumberInput widget; refactor widgets and tool options
* Fix swap/reset working colors using @click instead of :action
2021-07-27 18:28:21 -07:00
Keavon Chambers
5c7fe243bf
Fix antialiasing caused by <svg> width/height 100%
2021-07-25 17:25:39 -07:00
Henry Sloan
ce889e3472
Move blend mode declaration and implementation ( #308 )
2021-07-25 16:01:50 -04:00
Henry Sloan
b40da575e7
Avoid looping behavior with color selection ( #305 )
2021-07-25 02:31:50 -04:00
Henry Sloan
1055a0a05f
Add alignment of selected layers ( #296 )
...
* Add alignment of selected layers
* Refactor alignment to a document message
* Condense align messages into a tuple variant
* Rename dimension to axis and fix redundant math
* Add correct Center alignment
* Add TODO comment for nested transforms
* Add TODO for merging bounding boxes
* Move align enums to document_message_handler
* Run cargo clippy
* Clean up unwraps with filter_map
2021-07-24 19:35:48 -04:00
Henry Sloan
52fe66b6d8
MVP eyedropper tool for fill colors ( #300 )
...
* Implement eyedropper for layer fill colors
* Add shortcut for eyedropper
* Add right mouse sampling for secondary color
2021-07-24 18:29:32 -04:00
TrueDoctor
6a5d3cc48c
Various small fixes and cleanups ( #299 )
2021-07-24 17:59:01 +02:00
Keavon Chambers
dca84742ca
Swap "Layer" and "Document" menu bar entries
2021-07-24 01:54:27 -07:00
Henry Sloan
5ba8db1d76
Rename align operations and icons ( #295 )
...
* Rename align operations and icons
* Fix icon import paths
2021-07-24 00:42:48 -04:00
Henry Sloan
a48f44dd37
Add dragging of layers with the select tool ( #293 )
...
* Add dragging of layers with the select tool
* Transform mouse positions based on root transform
* Add TODOs regarding root inverse transforms
2021-07-23 21:51:14 -04:00
Keavon Chambers
c663b160e6
Fix inconsistent whitespace
2021-07-23 17:48:39 -07:00
Keavon Chambers
f5376599e9
Improve various code and docs spelling/grammar
2021-07-23 17:25:05 -07:00
TrueDoctor
8cab7222a2
Hints backend ( #234 )
...
* Generate hints from list of actions
* Remove redundant Key from output
* Improve formatting
* Change logging verbosity for hints
2021-07-24 01:09:24 +02:00
TrueDoctor
76d57ab25d
Rearrange layers refactor ( #281 )
...
* Keep selection during reordering
* Fix paste layer selection
* Remove junk from layer matadata
* Add function to get non_selected_layers
* Cleanup
* Add tests
2021-07-24 00:54:30 +02:00
Henry Sloan
11725d9abd
Change tool option kinds to PascalCase ( #292 )
2021-07-23 17:47:55 -04:00
George Atkinson
d5c9821a02
Blend modes ( #252 )
...
* Add backend for selecting layer blend mode
* Change dropdown input to support callback on change
* Add debug messages
* Fix canvas update for blend-modes
* Finish up and polish blend modes implementations
* Add changes from code review
Co-authored-by: Keavon Chambers <keavon@keavon.com>
Co-authored-by: Dennis Kobert <dennis@kobert.dev>
2021-07-23 18:21:07 +01:00
RustyNixieTube
1da0678dbb
Add documentation ( #287 )
...
* Add crate documentation
* Use full path intead of relative path
* Add documentation to core/document/src/color.rs
* Add modification by
* Add @Keavon's modification
* @Keavon's changes
* remove useless let
Co-authored-by: TrueDoctor <dennis@kobert.dev>
2021-07-23 16:16:26 +02:00
Henry Sloan
97f97480a2
Implement tool messaging and shape flipping ( #288 )
2021-07-22 16:25:42 -04:00
AJ Weeks
10a2282145
Support rearranging layers with hotkeys ( #271 )
...
* Support moving single layers
* Fix "Move layer to top/bottom" keybinds
* Rename things named "move" to "reorder"
Fix formatting
* Combine sorted layer helper functions
* Use integer consts for moving layers to front/back
* Fix merge mistake
* Fix some clippy lints
* Fix panic
* Remove "get" prefix from functions
* Bring layer menu items out to sub-menu
* Support moving multiple layers at a time
* Add comment explaining odd keybinding
* Add reordering tests
* Add negative test
* Add new error type
* Add layer position helper, clean up tests
* Make position helper return Result
* Clean up slice iteration
* Simplify source_layer_ids computation
Co-authored-by: Dennis Kobert <dennis@kobert.dev>
2021-07-21 10:36:51 +01:00
TrueDoctor
16722c69cd
Add thumbnails for layers ( #286 )
...
Fixes : #285
2021-07-21 11:30:49 +02:00
Henry Sloan
5446fa3553
Options bar widgets for tools to control tool behavior ( #283 )
...
* Add JSON-backed options widget
* Add initial tool settings messaging to backend
* Add shape side selection with JSON deserialization
* Enforce minimum number of n-gon sides
* Make tool settings JSON errors safer
* Make tool settings JSON errors safer
* Refactor ToolOptions to ToolSettings
* Revert "Refactor ToolOptions to ToolSettings"
This reverts commit 651161fd167193b4790c88b7cd7faf2f0e172102.
* Refactor all instances of "settings" to "options"
* Fix names and formatting
* Rearrange ToolOptions data to enforce types
2021-07-21 01:07:48 -04:00