Keavon Chambers
ab75f0fbfb
Improve the website and readme with details and cleanup
2022-09-16 01:29:33 -07:00
Keavon Chambers
655831eedf
Improve wording on the website home page; add a volunteer icon
2022-09-04 14:31:08 -07:00
Keavon Chambers
0f6f3be6e7
Add the Pivot Assist widget
...
Part of #525
2022-08-29 00:07:38 -07:00
Keavon Chambers
33cb6fcb00
Remove usage of 'null' in favor of 'undefined'
2022-08-25 21:32:27 -07:00
Keavon Chambers
1e74ccb4f8
Enable some TS consistency lints
2022-08-25 19:00:23 -07:00
Keavon Chambers
881ad667d7
Prefix all type imports with the 'type' keyword where appropriate
2022-08-25 15:38:21 -07:00
Keavon Chambers
3a84de32ac
Clean up MenuList types and fix many Vue and Clippy warnings
...
Also remove hard-coded-in-Vue Graphite logo in the menu bar in favor of a Rust definition.
2022-08-25 14:41:16 -07:00
Keavon Chambers
1a90a4db86
Clean up camelCase and snake_case in frontend code
2022-08-23 13:36:27 -07:00
Keavon Chambers
f73836b838
Add grayscale sample image for its node graph test
2022-08-20 23:59:37 -07:00
Keavon Chambers
4412b983cd
Move bezier-rs into libraries folder and deploy its interactive docs
2022-08-14 16:17:27 -07:00
Keavon Chambers
78a3644c45
Fix logic bug in key internationalization for A-Z keys in alternate layouts
2022-08-14 13:57:01 -07:00
Keavon Chambers and Dennis
863c17b86f
Simplify platform-specific keyboard layouts with Accel key and global platform variable ( #748 )
...
* Simplify platform-specific keyboard layouts with Accel key and global platform variable
Co-authored-by: Dennis <dennis@kobert.dev >
2022-08-13 04:28:02 -07:00
Keavon Chambers
41bead9028
Rename MovementMessage to NavigationMessage
2022-08-11 17:20:10 -07:00
Keavon Chambers
9559ec58e8
Switch Vec<Key> to KeysGroup newtype
2022-08-11 16:35:04 -07:00
Keavon Chambers
47aaaf89d7
Fix shortcut label on welcome screen: "Control" -> "Ctrl"
2022-08-11 10:53:03 -07:00
Keavon Chambers
cf6bbcfd30
Revamp key/code input processing which fixes Option key on Mac and other locales
...
Closes #742
Closes #746
2022-08-11 02:53:46 -07:00
Keavon Chambers
765b648704
Extend welcome screen button click area to labels
...
Closes #738
2022-08-08 01:29:23 -07:00
Keavon Chambers
45a1e144a8
Populate menu bar
...
Closes #531
2022-08-06 03:17:25 -07:00
Keavon Chambers
9e34199ca9
Additional cleanup of prelude imports in editor codebase
...
Closes #744
2022-08-05 17:09:37 -07:00
Keavon Chambers
e4306c30e2
Restructure the entire editor codebase to consistently match the message hierarchy
...
Closes #744
2022-08-05 05:38:11 -07:00
Keavon Chambers
0c2dbd411b
Fix formatting of previous commit
2022-08-04 00:18:42 -07:00
Keavon Chambers and Dennis
f39d6bf00c
Add full support for Mac-specific keyboard layouts ( #736 )
...
* IPP for Mac, flawed initial experiments
* Cleanup and progress, but not compiling yet
* Fix error and rename nonmac -> standard
* Extentd ipp macros to accomodate mac input
* Add Mac versions of shortcuts; refactor and document the input mapper macros
* Change frontend styling for user input labels in floating menus
* Additional macro documentation
* A little more documentation
* Improve entry macro syntax
* Move input mapper macros to a separate file
* Adapt the keyboard shortcuts to the user's OS
* Display keyboard shortcuts in the menu bar based on OS
* Change Input Mapper macro syntax from {} to ()
* Fix esc key bug in Vue
* Tweaks
* Interim solution for Mac-specific hints
* Feed tooltip input hotkeys from their actions
* Fix hotkeys for tools because of missing actions
* Make Vue respect Ctrl/Cmd differences per platform
* Remove commented lines
* Code review pass by me
* Code review suggestions with TrueDoctor
* Turn FutureKeyMapping struct into ActionKeys enum which is a bit cleaner
* Add serde derive attributes for message discriminants
* Re-add serde deserialize
* Fix not mutating ActionKeys conversion; remove custom serializer
* Add serde to dev dependencies
Co-authored-by: Dennis <dennis@kobert.dev >
2022-08-03 14:12:28 -07:00
Keavon Chambers
dc0b38750c
Update npm dependencies
2022-07-23 15:31:02 -07:00
Keavon Chambers
a07c1a37a8
Implement File > Import and fix Ctrl+O to Open hotkey
...
Closes #671
2022-07-23 15:17:12 -07:00
Keavon Chambers
4c6f2c80bd
Hide canvas zoom widget automatically when zero
2022-07-22 23:09:45 -07:00
Keavon Chambers
ad7097ea92
Fix broken BigInt64Array unsupported message on old Safari
2022-07-07 10:58:29 -07:00
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