Keavon Chambers
d12d805e2f
Fix website styling
2022-05-25 00:27:07 -07:00
Keavon Chambers
8029c8c001
Fix DropdownInput repeated change emitting
2022-06-19 19:32:18 -07:00
Keavon Chambers
fe4a76a395
Implement the Edit > Paste menu entry ( #683 )
...
Closes #682
2022-06-19 00:53:33 -07:00
Keavon Chambers
9bd27ec3f8
Change MenuList checkbox to be an icon from a widget
2022-06-17 17:55:04 -07:00
Keavon Chambers
ea0dbd1290
Add code style formatting to the website
2022-06-16 22:57:15 -07:00
Keavon Chambers
18a7c6a289
Update npm dependencies ( #678 )
2022-06-13 12:32:01 -07:00
Keavon Chambers
0f93cc1e17
Update banner for the lastest blog post
2022-06-06 16:09:42 -07:00
Keavon Chambers
c4dc999a38
Update readme
2022-05-25 00:27:29 -07:00
Keavon Chambers
8b94c62697
Refactor source of Git commit build info ( closes #661 )
2022-05-24 14:33:58 -07:00
Keavon Chambers
d5b43ef2da
Add frontend file structure docs and some related cleanup
2022-05-23 19:13:51 -07:00
Keavon Chambers
e4e37cca7b
Reorganize Vue components and add documentation explaining each folder
2022-05-23 19:03:34 -07:00
Keavon Chambers
5650a87465
Update the assets directory to prefix icon folders with "icon-"
2022-05-22 00:06:10 -07:00
Keavon Chambers
fc2d983bd7
Vue initialization and FloatingMenu codebase refactoring and cleanup ( #649 )
...
* Clean up Vue initialization-related code
* Rename folder: dispatcher -> interop
* Rename folder: state -> providers
* Comments and clarification
* Rename JS dispatcher to subscription router
* Assorted cleanup and renaming
* Rename: js-messages.ts -> messages.ts
* Comments
* Remove unused Vue component injects
* Clean up coming soon and add warning about freezing the app
* Further cleanup
* Dangerous changes
* Simplify App.vue code
* Move more disparate init code from components into managers
* Rename folder: providers -> state-providers
* Other
* Move Document panel options bar separator to backend
* Add destructors to managers to fix HMR
* Comments and code style
* Rename variable: font -> font_file_url
* Fix async font loading; refactor janky floating menu openness and min-width measurement; fix Vetur errors
* Fix misaligned canvas in viewport until panning on page (re)load
* Add Vue bidirectional props documentation
* More folder renaming for better terminology; add some documentation
2022-05-21 19:46:15 -07:00
Keavon Chambers and 0hypercube
29e00e488b
Move layouts definitions to backend and fix Firefox overlay scrollbars ( #647 )
...
* Fix two-axis scrollbars in scrollable regions on Firefox
* Move Document Mode dropdown to the backend; and related code cleanup
* Port the Layer Tree options bar layout to the backend
* Port the tool shelf to the backend
* Clean up initialization and wasm wrapper
* Fix crash
* Fix missing document bar
* Remove unused functions in api.rs
* Code review
* Tool initalisation
* Remove some frontend functions
* Initalise -> Init so en-US/GB doesn't have to matter :)
* Remove blend_mode and opacity from LayerPanelEntry
Co-authored-by: 0hypercube <0hypercube@gmail.com >
2022-05-17 13:12:52 -07:00
Keavon Chambers
e7d63276ad
Update the VS Code rust-analyzer extension to its new official owner
2022-05-13 12:09:37 -07:00
Keavon Chambers
3480cc93d9
Fix website rendering issues on Firefox with -webkit-line-clamp
2022-05-12 13:34:26 -07:00
Keavon Chambers
ff57fef77c
Fix website responsive layouts
2022-05-12 13:08:53 -07:00
Keavon Chambers
3673490990
Add Reddit and Twitter links to blog posts
2022-05-12 01:15:56 -07:00
Keavon Chambers
13417b26e7
Fix website URL encoding in certain links
2022-05-12 01:04:23 -07:00
Keavon Chambers
44f3ad27ec
Blog post updates
2022-05-12 00:45:20 -07:00
Keavon Chambers and 0hypercube
19b2d3f859
Build the node graph frontend with placeholder graph info ( #581 )
...
* Build the node graph frontend
* Graph pan and zoom
* Graph's dot grid now pans/zooms also
* Interactive horisontal to vertical curves
* Data types and zooming on wires
* Icon definitions code beautification
* Add a visibility toggle
Co-authored-by: 0hypercube <0hypercube@gmail.com >
2022-05-10 22:34:25 -07:00
Keavon Chambers
5571f39b41
Update list of recommended VS Code extensions
2022-05-10 20:39:58 -07:00
Keavon Chambers
b24d280d81
Clean up website file structure
2022-05-10 11:35:39 -07:00
Keavon Chambers
1a8cc9654a
Move the Layer Tree panel's New Folder and Delete icons into the options bar
2022-05-06 12:44:38 -07:00
Keavon Chambers
07736a9fca
Tidy up the full frontend codebase and use optional chaining where possible ( #620 )
...
* Tidy up the full frontend codebase and use optional chaining where possible
* Code review changes
2022-04-30 02:52:53 -07:00
Keavon Chambers and 0hypercube
92ee3bbad3
Upgrade vue-cli to version 5 ( #594 )
...
* Upgrade to Vue CLI 5 (fails to compile)
* Upgrade versions with last few weeks of changes
* Updated to fork-ts-checker-webpack-plugin 7.2.3
* Remove package.json overrides in lieu of the fixed fork-ts-checker-webpack-plugin@6.5.1
* Fix svg importing
* Comments
* For debugging only: added infrastructureLogging to vue.config.js
* Now works on Windows, waiting on fork-ts-checker-webpack-plugin backport if possible
* Switch to the fixed fork-ts-checker-webpack-plugin@6.5.2
* Fix license checker build compilation
Co-authored-by: 0hypercube <0hypercube@gmail.com >
2022-04-26 01:47:13 -07:00
Keavon Chambers
f38289f036
Change stroke weight from ints to floats ( #601 )
...
Also rename stroke "width" to "weight" in some places. Closes #587
* Change stroke weight from ints to floats
* "miter_limit" -> "line_join_miter_limit"
* Bump file format version
2022-04-21 13:35:35 -07:00
Keavon Chambers
632928f4f6
Rename Crop tool to Artboard tool
2022-04-21 10:52:33 -07:00
Keavon Chambers
bbe94e35cb
New blog post: "Distributed computing with the Graphene runtime"
2022-04-16 11:06:26 -07:00
Keavon Chambers
e4b2cb2f53
Expand upon the "Announcing Graphite alpha" blog post
2022-04-14 10:19:09 -07:00
Keavon Chambers
9ced465150
Add node graph mockup to website
2022-03-25 02:11:31 -07:00
Keavon Chambers
f6726c1427
Various website fixes
2022-03-17 02:12:23 -07:00
Keavon Chambers
36d67393b9
Small website text improvements
2022-03-15 16:06:09 -07:00
Keavon Chambers
593aa99ffa
Add features page and fixes to website
2022-03-13 11:32:53 -07:00
Keavon Chambers
d4f62ba01d
Add website revisions and many new pages
2022-03-12 08:31:12 -08:00
Keavon Chambers
2f6722fb40
Add Image node icon and rename node from Path to Shape
2022-03-05 23:51:59 -08:00
Keavon Chambers
3d8108a32b
Change tool shelf icon colors to use classes not style
2022-03-05 18:28:41 -08:00
Keavon Chambers
788f8db127
Remake node type icons ( closes #483 ); color picker cleanup
2022-03-04 22:48:22 -08:00
Keavon Chambers
8a05712dac
Reorder tool icons, update favicon and logo, and other icon cleanup
2022-03-04 13:04:59 -08:00
Keavon Chambers
bd9571103e
Set text color based on its fill when it's being edited
2022-03-04 12:15:42 -08:00
Keavon Chambers
0bdb08f34d
Update npm dependencies
2022-03-02 22:02:40 -08:00
Keavon Chambers
f128434e50
Add "New Folder"/"Delete Selected" buttons to layer panel
...
Closes #532
2022-03-02 21:55:32 -08:00
Keavon Chambers
8c248f386e
Add newsletter signup to website
2022-02-19 03:31:02 -08:00
Keavon Chambers
248e2ab0d1
Website responsive resizing improvements
2022-02-19 02:15:28 -08:00
Keavon Chambers
3f79df7314
Create project website with near-complete home page
2022-02-17 02:44:02 -08:00
Keavon Chambers
31fb0d7148
Release Alpha Milestone 1!
2022-02-12 09:31:48 -08:00
Keavon Chambers
77dc125095
Polishing: standardize binding JS resize event (fixes non-integer AA rendering); remove "X" to delete; cleanup
2022-02-10 02:29:45 -08:00
Keavon Chambers
a4d3c343a0
Improve Path Tool hint text
2022-02-09 16:52:54 -08:00
Keavon Chambers and mfish33
bd844aaf94
Add the TextInput widget ( #518 )
...
* Separate out the number input from a generic field input
* Add TextInput widget
Co-authored-by: mfish33 <32677537+mfish33@users.noreply.github.com >
2022-02-09 12:16:44 -08:00
Keavon Chambers
ca46767cf2
Solve "Coming Soon" dialog from bubbled click event on sub-menu entries ( #517 )
2022-02-05 13:49:12 -08:00
Keavon Chambers
e9116a4775
Rename deployment script
2022-02-03 18:29:02 -08:00
Keavon Chambers and Moritz Vetter
434970aa16
Implement layer renaming ( #501 )
...
* Implement layer renaming
* Fix sneaky typo in CSS
Co-authored-by: Moritz Vetter <16950410+HansAuger@users.noreply.github.com >
Co-authored-by: Moritz Vetter <16950410+HansAuger@users.noreply.github.com >
2022-01-29 11:04:15 -08:00
Keavon Chambers
8c29592db8
Clean up web code's use of display CSS properties, using <LayoutRow>/<LayoutCol> where intended
2022-01-23 20:23:35 -08:00
Keavon Chambers
45d75bd13f
Move scrollable behavior into LayoutRow/LayoutCol
2022-01-22 23:02:59 -08:00
Keavon Chambers
3038d72226
Fix sorting of message enum variants
2022-01-16 13:21:05 -08:00
Keavon Chambers
94ecbf7112
Make the toggle overlays button functional ( #484 )
...
* Make the toggle overlays button functional
* Move state from the OverlaysMessageHandler to DocumentMessageHandler
* Code review fixes
2022-01-16 09:40:47 -08:00
Keavon Chambers
e877eea457
Fix all remaining Vue/TS errors flagged in Volar
2022-01-15 17:24:58 -08:00
Keavon Chambers
56599db753
Tweak whitespace around use statements and other lint fixes
2022-01-15 12:55:51 -08:00
Keavon Chambers
314503a6e1
Change canvas artboard background color to be 1 shade lighter
2022-01-15 06:35:06 -08:00
Keavon Chambers
e9e43eb79b
Modify all message enum data to use named struct values, not tuples ( #479 )
...
* Massively reorganize and clean up the whole Rust codebase
* Modify all message enum data to use named struct values, not tuples
2022-01-14 20:54:38 -08:00
Keavon Chambers
f48d4e1884
Massively reorganize and clean up the whole Rust codebase ( #478 )
...
* Massively reorganize and clean up the whole Rust codebase
* Additional changes during code review
2022-01-14 14:58:08 -08:00
Keavon Chambers
011c2be26d
Sort messages and message handlers
2022-01-12 16:17:40 -08:00
Keavon Chambers
6c639270ae
Standardize FrontendMessage message names
2022-01-12 14:16:13 -08:00
Keavon Chambers
ae829c63b4
Rename document_file.rs to document_message_handler.rs
2022-01-12 12:45:07 -08:00
Keavon Chambers
4d68d0d061
Rename DocumentsMessage to PortfolioMessage
2022-01-12 12:19:14 -08:00
Keavon Chambers
647b0bc942
Rename document_message_handler.rs to portfolio_message_handler.rs
2022-01-12 11:44:49 -08:00
Keavon Chambers
c255c7eac6
Add npm start script alias for npm run serve
2022-01-12 06:14:32 -08:00
Keavon Chambers
e101d4524d
Switch VS Code's Vue extension from Vetur to Volar
2022-01-12 05:17:56 -08:00
Keavon Chambers
cbb4feba45
Remove Charcoal references from the code for now
2022-01-12 03:56:28 -08:00
Keavon Chambers
7dfabcedfc
Fix NumberInput clamping regression with undefined bounds
2022-01-10 18:06:12 -08:00
Keavon Chambers
ddebaddd5d
Redesign the Layer Tree UI ( #468 )
2022-01-07 23:13:33 -08:00
Keavon Chambers
c98bee6470
Fix build script to use correct branch name
2022-01-05 05:40:32 -08:00
Keavon Chambers
5518384ec1
Vue/TS bug and bad typing fixes
2022-01-02 20:02:35 -08:00
Keavon Chambers
2c8d70acb4
Major frontend code cleanup ( #452 )
...
Many large changes, including:
- TypeScript enums are now string unions throughout
- Strong type-checking throughout the TS and Vue codebase
- Vue component props now all specify `as PropType<...>`
- Usage of annotated return types on all functions
- Sorting of JS import statements
- Explicit usage of Vue bind attribute function call arguments (`@click="foo"` is now `@click=(e) => foo(e)`)
- Much improved code quality related to the color picker
- Consistent camelCase Vue bind and v-model attributes
- Consistent Vue HTML attribute strings with single quotes
- Bug fix and clarity improvement with incorrect hint class parameters
- Empty Vue component objects like `props: {}` and `components: {}` removed
2022-01-02 06:00:02 -08:00
Keavon Chambers
6662a9a04f
Rename Editor's LayerData to LayerMetadata
2021-12-31 00:02:29 -08:00
Keavon Chambers
5b3cbb30fc
Fix all clippy lint errors
2021-12-30 23:05:54 -08:00
3dea989a00
New overlay system that reimplements how overlays are drawn ( #418 )
...
* New overlay system that reimplements how overlays are drawn
* Fix overlay message declaration
* Fix small mistake
* WIP (broken) changes to plumb the overlay document
* Fix confusion over messaging system architecture
* Removed log
* Overlay system working
* (broken) WIP overlay association
* Finish the overlay system (except test failure)
* Change back IDs in test
* Fixed test, but stilled fails due to revealed real problem with layer reordering selection
* Disable broken test that has a bug in issue #444
Co-authored-by: Dennis <dennis@kobert.dev >
Co-authored-by: otdavies <oliver@psyfer.io >
2021-12-30 09:48:39 -08:00
Keavon Chambers
d2b0411295
Implement input hints based on the active tool state ( #388 )
...
* Hook up user input hints to display in the frontend status bar
Closes #171
* MVP hint system based on tool FSM
* Fix hints for Fill and Eyedropper tools
* Add icons for keyboard shortcuts
* Fix hints for Pen Tool
* Cleanup
2021-12-24 01:46:03 -08:00
Keavon Chambers
3500160bf7
Fix previous commit by mapping codes to keys
2021-12-23 16:02:54 -08:00
Keavon Chambers
05737202fa
Add a temporary solution to non-Latin keyboards being unusable
2021-12-23 13:29:02 -08:00
Keavon Chambers
30418c51f8
Make the Pen Tool confirm when leaving the tool
2021-12-21 18:48:21 -08:00
Keavon Chambers
dd8cd4a2fa
Skip the web page close confirmation when crashed or in debug mode
2021-12-21 18:43:02 -08:00
Keavon Chambers
79b247c0aa
Set Cargo.toml versions to 0.0.0 to avoid version confusion
2021-12-20 14:59:26 -08:00
Keavon Chambers
6701437433
Upgrade node packages ( #413 )
2021-12-20 13:09:24 -08:00
Keavon Chambers
0da034afc8
Skip cargo-about in CI to save 5 minutes ( #409 )
2021-12-20 02:22:19 -08:00
Keavon Chambers
6d82672a95
Make deployment switch branch from HEAD to master
2021-12-16 03:05:10 -08:00
Keavon Chambers
471610accd
Add the Help > About Graphite dialog with build info
...
Closes #404
2021-12-16 02:31:41 -08:00
Keavon Chambers
d4e3684744
Clean up JS message dispatcher and fix a bug thrown on empty-data messages
...
Fixes bug in #394
2021-12-16 02:18:45 -08:00
Keavon Chambers
1cf90bde9a
Fix floating menus above scrollable content; they now respect content's preferred width at edges
2021-12-15 04:04:59 -08:00
Keavon Chambers
4cbccbd8cf
Update the project readme
2021-12-06 16:51:58 -08:00
Keavon Chambers
20a4c76fd7
Fix bug in last commit that broke when scrolling on SVG elements
2021-12-06 02:55:05 -08:00
Keavon Chambers
207e46ed4f
Enable vertical scroll wheel on horizontal scrollable containers
2021-12-05 20:05:45 -08:00
Keavon Chambers
75eb7c4839
Switch CI and CD scripts to use npm ci instead of npm install
2021-12-05 18:39:45 -08:00
Keavon Chambers
bd1da01b1d
Fix ESLint configuration triggering an error in the ESLint VS Code extension
2021-12-05 18:39:02 -08:00
Keavon Chambers
54590d594a
CSS editor layout fixes and scrolling
...
Major CSS improvements to layout at small screen sizes. By adding min-width: 0 and min-height: 0 on the nested display: flex structure, widgets no longer coerce the whole layout into large-scale resizing. Scrollbars are now used to allow correct overflowing of the tab bar (fixes #177 ), Document Panel options bar, and tool shelf. Improvements to responsive resizing are also included for viewing the UI correctly on mobile now. Additional small fixes to styling of widget colors and corner roundness. The ruler has been darkened one shade to improve text contrast and aesthetics.
2021-12-04 22:30:07 -08:00
Keavon Chambers
fa64cfad4b
Switch to Node.js 16 LTS, upgrade TypeScript, ESLint, and other dependencies ( #395 )
...
* Upgrade TypeScript, ESLint, and other dependencies
This also cleans up various other files where newer ESLint rules complained
* Set CI and CD to use Node.js version 16
* Small tweak
* Fix CD version printing
* Add nvm version for Cloudflare Pages
2021-11-29 03:32:09 -08:00
Keavon Chambers
26835d8d29
Upgrade rustfmt to 2021 edition
2021-11-02 20:08:39 -07:00
Keavon Chambers
b902b50ec4
Update various node dependencies ( #391 )
2021-11-01 02:57:08 -07:00
Keavon Chambers
fa12fd9d49
Update notice for Safari users that BigInt64Array is now supported in 15 ( #390 )
2021-11-01 01:16:19 -07:00
Keavon Chambers
3c29633745
Replace vue-svg-loader dependency with simple JS file (fixes a security alert) ( #389 )
2021-11-01 00:14:31 -07:00