Till Arnold
ff232bd722
Add keyboard shortcut to duplicate layers ( #214 )
...
* Add keyboard shortcut to duplicate layers
* Avoid heap allocation in DuplicateSelectedLayers
2021-06-16 11:15:02 +02:00
Keavon Chambers
9c0a23d03f
Add additional keyboard shortcut tooltips
2021-06-13 11:20:48 -07:00
Keavon Chambers
13dd51dbf8
Improve UI behavior at smaller screen sizes so status bar overflows ( #158 )
...
Also includes various CSS flex-related cleanup throughout the UI.
Progress for #150
2021-06-08 00:54:24 -07:00
Keavon Chambers
569af162ae
Add the Dropdown Input widget ( #168 )
...
Fixes #135 .
* Add the Dropdown Input widget
* Fix font loading race condition
2021-06-06 02:17:36 -07:00
Keavon Chambers
3d646d2bc3
Generalize and rename overlays as "floating menus"
...
Progress towards #135 .
2021-05-29 21:55:43 -07:00
TrueDoctor
c0e60a21d3
Export current document as SVG when pressing Ctrl+Shift+S ( #160 )
...
* Export current document when pressing Ctrl+Shift+S
* Use a blob for download
* Add Ctrl + E shortcut, match on lower case
* Don't mount element in DOM
* Polish some keybindings
* Add initialization for MappingEntries
* Implement svg coloring
* Add newline after svg tag
* Add spaces to svg style format
* Fix more svg formatting
* Add space before />
* Remove duplicate whitespace
2021-05-28 20:43:51 +02:00
Chrs Msln
b56dfd746f
Implement color picker for primary/secondary working colors ( #70 )
...
* feat/color-picker: rework
* feat(161) lint
* feat(161) Remove response handlers
* feat(161) fix rgb <-> hsv conversion
* feat(161) inverse swatchs and add checkered bg
* feat(161) remove temporary color assignment
* feat(161) move cursor outside of the box
* feat(161) @Keavon feedbacks
* feat(161) lint
* feat(161) fix opacity-picker color
* feat(161) --saturation-picker-color
2021-05-27 23:59:52 +02:00
Keavon Chambers
cdcddf176b
Move all icon SVG imports to the Icon component
...
This change also removes the need to specify the icon size.
2021-05-27 02:14:32 -07:00
Keavon Chambers
5016fde231
Standardize icon sizes and folder paths ( closes #110 )
2021-05-27 00:14:50 -07:00
Keavon Chambers
34efac990b
Update UI colors and alignment for consistency with the design mockup ( #157 )
...
Closes #111
2021-05-23 19:01:13 -07:00
Keavon Chambers
3b0762ef18
Rename and organize widget components to conform to design terminology ( #132 )
2021-05-21 13:10:32 -07:00
Keavon Chambers
b9248b828c
Complete implementing popover system main features ( #131 )
...
* Make popover buttons open popover menus and add placeholder messages to all of them.
* Implement all directions for drawing, aligning, and edge-clamping popovers.
* Fix popovers so they are drawn outside their parent panel bounds and not clipped.
* Fix popover HTML to avoid nesting it inside a <button> element.
2021-05-21 12:22:30 -07:00
Keavon Chambers
a439b27d2b
Implement popover component and beginnings of color picker ( #128 )
2021-05-17 12:07:54 -07:00
Keavon Chambers
b91c416611
Change default draw color to orange, plus small fixes
2021-05-08 15:16:59 -07:00
TrueDoctor
6adb984f2d
Plumb layer panel ( #107 )
...
* WIP ExpandFolder handling
* Implement response parsing in typescript
* Update layer panel with list sent by wasm
* Add events for layer interaction
* Add proper default naming
* Fix displaying of the eye icon
* Attach path to LayerPanelEntry
* Fix lint issues
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2021-05-07 10:17:46 +02:00
Keavon Chambers
6dc8c91578
Fix CSS extraneous space beneath icons
2021-05-05 22:08:58 -07:00
TrueDoctor
f8ebff033d
Use serde to serialize responses ( #96 )
2021-05-02 22:46:47 +02:00
TrueDoctor
fc10575dfa
Improve rendering efficiency and add caching ( #95 )
...
Fixes #84
*Reduce heap allocations
* Add caching for rendering svgs
* Deduplicate UpdateCanvas Responses
2021-05-02 21:21:39 +02:00
TrueDoctor
8d683a4162
Fix active tool selection ( #92 )
2021-05-02 08:30:51 +02:00
TrueDoctor
f05cb30acb
Add responses in document for layer system ( #91 )
2021-05-02 00:57:47 +02:00
Keavon Chambers
3b32184906
Rename tools: "Sample" to "Eyedropper", "Blur/Sharpen" to "Detail" ( #87 )
2021-04-29 00:50:55 -07:00
Edwin Cheng
e40727e914
Implement Pen Tool ( #79 )
2021-04-23 00:12:24 +08:00
0HyperCube
46c9ef02ca
Add colors in Rust ( #78 )
...
* 🎨 Add colors in Rust
* 🌿 Use an option for the properties and #[repr(C)]
* ❌ Remove WASM dependency on document.
* 😎 Wrap Fill and stroke in a style struct.
* 📦 Use crate::Color
* Merge Add transactions for temporary modifications to the document
* Run cargo fmt
* Color without a 'U'
2021-04-21 22:25:06 +01:00
0HyperCube
90df412aab
Add Shape Tool for drawing polygons ( #75 )
...
* ⬠ Add polygon drawing tool
* 🔤 Minor fix of variable and function names
* ❌ Remove stroke
* ⌨️ Use N key as polygo tool shortcut.
* ⌨️ Now using key Y for polygons.
* ⌨️ The tooltip for the shortcut is fixed
2021-04-17 19:08:44 +01:00
Keavon Chambers
0ca4b9fe7c
Fix web code linting to be portable across environments
2021-04-14 11:44:09 -07:00
Keavon Chambers
57540ed5ef
Set CI environment variable to NODE_ENV=production during linting ( #73 )
2021-04-14 01:27:01 -07:00
Edwin Cheng
f12db377f4
Implement Line tool ( #71 )
...
* Add Line tool
2021-04-13 12:43:05 +08:00
Keavon Chambers
ae824e3976
Add RadioPicker; add view mode picker to document options bar
2021-04-11 01:57:30 -07:00
Keavon Chambers
beb534e20b
Add NumberInput component; add scale input and zoom buttons to options bar
2021-04-10 23:27:29 -07:00
Keavon Chambers
a56f50c60c
Implement active tool visual syncing with tool shelf state
2021-04-10 03:49:27 -07:00
Keavon Chambers
958d351505
Plumb Responses from WASM to JS in the page
2021-04-10 02:48:33 -07:00
Keavon Chambers
8b6053b1c4
Populate tool shelf and tool options bar ( #66 )
2021-04-08 06:10:27 -07:00
TrueDoctor
0a112be97b
Implement key handling ( #65 )
2021-04-07 11:02:56 +02:00
Keavon Chambers
273aa652df
Rename the "Layers" panel to "Layer Graph"
2021-04-01 21:55:15 -07:00