Keavon Chambers
d6475cfd17
Minor code readability improvements
2021-08-27 03:43:03 -07:00
Keavon Chambers
07cc2c2b54
Improve web infrastructure
...
Upgrade npm packages that were locked to old versions due to now-resolved problems
Remove unused/unnecessary dependencies and their configurations
Fix VS Code format on save
Fix VS Code removing EOF newline in JSON files in conflict with npm
Remove JSON files from ESLint because it doesn't properly support JSON
Add detailed comments to web-related configuration files
2021-08-27 02:19:30 -07:00
Keavon Chambers
8ab15520d3
Update the readme
2021-08-15 02:40:30 -07:00
Keavon Chambers
c15ab1af58
Improve Frontend -> Backend user input system ( #348 )
...
Includes refactor that sends coordinates of the document viewports to the backend so input is sent relative to the application window
Closes #124
Fixes #291
* Improve Frontend -> Backend user input system
* Code review changes
* More code review changes
* Fix TS error
2021-08-14 05:38:35 -07:00
Keavon Chambers and Dennis Kobert
790647815b
Refactor ViewportPosition from u32 (UVec2) to f64 (DVec2) ( #345 )
...
* Refactor ViewportPosition from u32 (UVec2) to f64 (DVec2)
* Fix pseudo_hash call
* Replace hash function with proper function for uuid generation
* Cargo fmt
Co-authored-by: Dennis Kobert <dennis@kobert.dev >
2021-08-14 02:45:24 -07:00
Keavon Chambers
88255997e8
Disallow snake_case variable names in frontend
2021-08-12 21:49:03 -07:00
Keavon Chambers
84ecfc86de
Miscellaneous minor code cleanup
2021-08-12 20:34:36 -07:00
Keavon Chambers
2e8b133023
Replace promise with await in MenuList.vue
2021-08-12 19:25:57 -07:00
Keavon Chambers
9654683d16
Add number labels to ruler marks
2021-08-12 02:55:00 -07:00
Keavon Chambers
ef93bed0ec
Update terminology in the docs
2021-08-12 00:39:29 -07:00
Keavon Chambers
483f7d5893
Clean up popovers: background color and placeholder text
2021-08-11 23:53:05 -07:00
Keavon Chambers
b184f2c974
Revert "Fix floating menu positioning behavior when web page has scrollbars ( #263 ) ( #341 )"
...
This reverts commit 02fd00da10 .
2021-08-11 23:49:31 -07:00
Keavon Chambers
01e66bcf79
Update npm dependencies
2021-08-10 20:25:21 -07:00
Keavon Chambers
b87cd624c7
Fix documentation links
2021-08-10 20:03:30 -07:00
Keavon Chambers
d5bc72ca07
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
Keavon Chambers
67dc9f57ba
Upgrade packages and a couple fix warnings
2021-08-09 18:41:29 -07:00
Keavon Chambers
89ee35b831
Add DisplayError to show user errors from the backend
2021-08-08 16:52:09 -07:00
Keavon Chambers
fbf2c012c3
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
3a2166375a
Refactor RadioInput widget ( #332 )
2021-08-07 03:15:40 -07:00
Keavon Chambers
63a4ed64c8
Refactor document tab management from Panel.vue into utilities/documents.ts
2021-08-04 12:39:39 -07:00
Keavon Chambers and Dennis Kobert
399111df53
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 10:29:23 +02:00
Keavon Chambers
d3958f80fa
Add checkbox to MenuBarInput widget
2021-07-31 18:20:51 -07:00
Keavon Chambers
ed9883e0d8
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
6064004606
Add TextButton widget ( #321 )
2021-07-31 04:58:25 -07:00
Keavon Chambers
561eea4560
Fix two small bugs introduced in #311
2021-07-30 18:46:23 -07:00
Keavon Chambers
9fbf6839e0
Add "Sides" label to Shape Tool's options bar number input
2021-07-30 15:45:49 -07:00
Keavon Chambers
0ddc84ba09
Add the ability for NumberInput widgets to display labels
...
Part of #313
2021-07-29 13:56:45 -07:00
Keavon Chambers
edfbc27534
Layer opacity ( #312 )
...
Closes #187
* Add layer opacity input
* Improve Rust code cleanliness
2021-07-27 23:15:23 -07:00
Keavon Chambers
8c1532b0eb
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
9e92d48454
Fix antialiasing caused by <svg> width/height 100%
2021-07-25 17:25:39 -07:00
Keavon Chambers
8d444f4b20
Swap "Layer" and "Document" menu bar entries
2021-07-24 01:54:27 -07:00
Keavon Chambers
ac7b5dd06e
Fix inconsistent whitespace
2021-07-23 17:48:39 -07:00
Keavon Chambers
f00601e5a7
Improve various code and docs spelling/grammar
2021-07-23 17:25:05 -07:00
Keavon Chambers
bc733acb4c
Fix tooltips in Document panel
2021-07-19 18:02:08 -07:00
Keavon Chambers
09f8f4444a
Fix dropdown menu widget showing wrong active entry
...
Fixes #250
2021-07-19 15:03:08 -07:00
Keavon Chambers
131256ba0b
Add (nonfunctional) rulers and scrollbars to the viewport ( #279 )
...
* Add nonfunctional rulers and scrollbars to viewport
* Switch from DOM divs to SVG lines
* Switch from SVG lines to a single SVG path
* Change variable names
2021-07-17 16:11:52 -07:00
Keavon Chambers
801bae103e
Remove outdated todo comment
2021-07-17 03:36:35 -07:00
Keavon Chambers
d57bfb87ee
Clean up widget type naming conventions
2021-07-16 15:57:42 -07:00
Keavon Chambers
9c68ff2952
Categorize frontend widgets to match design system
2021-07-16 15:37:35 -07:00
Keavon Chambers
5261a373a6
Edit readme with various updates and simplifications
2021-07-16 04:01:32 -07:00
Keavon Chambers
1b37e78d64
Remove CLI client stub
2021-07-15 03:44:57 -07:00
Keavon Chambers
49ce3f0672
Adjust OptionalInput widget design to add back its right border
2021-07-15 01:01:05 -07:00
Keavon Chambers
928ef844c4
Rename tool icons
2021-07-15 00:46:32 -07:00
Keavon Chambers
98f1b123bb
Switch all JS imports to absolute paths
2021-07-15 00:34:56 -07:00
Keavon Chambers
64050bc8b3
Make frontend request tab list on initialization
2021-07-15 00:07:21 -07:00
Keavon Chambers
c76bb608d3
Cleanup of variable naming
2021-07-14 20:11:51 -07:00
Keavon Chambers
34f058147e
Add a fullscreen button and the keyboard lock API ( #266 )
...
Closes #249
2021-07-14 18:56:22 -07:00
Keavon Chambers
83a955522e
Enforce downgraded dependency versions in package.json
2021-07-14 16:51:56 -07:00
Keavon Chambers
0330822a94
Implement closing the current, and all, documents from the menu bar ( #265 )
...
Closes #261
Additional cleanup and refactoring with the way the backend relays the list of open documents to the frontend and prompts for confirmation.
2021-07-14 16:13:58 -07:00
Keavon Chambers
726152759f
Frontend refactor to move response handler, key input handling, and more into new utilities folder ( #260 )
...
Part of #124
2021-07-14 14:31:09 -07:00
Keavon Chambers
7ae91e8330
Clean up and polish some code from the previous commit ( #255 )
2021-07-13 00:52:45 -07:00
Keavon Chambers
faed4c586f
Add a pull request template so GitHub reminds to reference issue numbers
2021-07-10 13:58:54 -07:00
Keavon Chambers
d116e159db
Downgrade wasm-pack and Vue-related dependencies which are causing issues
...
This reverts commit 744e3729d7 .
2021-07-09 20:29:14 -07:00
Keavon Chambers
ba96836596
Improve panel tabs to fix pixel mislaignments and support MMB closing
2021-07-09 16:49:54 -07:00
Keavon Chambers
cb9d851ef8
Improve readability of OptionalInput widget design styling
2021-07-09 16:02:36 -07:00
Keavon Chambers
e46889dc59
Add the checkbox input widget ( #204 )
...
* Add the checkbox input widget
* Add OptionalInput widget
2021-07-08 14:10:30 -07:00
Keavon Chambers
a12e14c282
Fix horizontal scrollbar due to status bar negative margin
2021-07-05 00:38:18 -07:00
Keavon Chambers
1e6724ed6e
Downgrade @vue/compiler-sfc which breaks linting
2021-07-02 15:02:01 -07:00
Keavon Chambers
744e3729d7
Update wasm-pack dependency and others, fixes #167
2021-07-02 13:51:00 -07:00
Keavon Chambers
c41605b464
Add styled scrollbars ( #231 )
2021-07-01 22:08:23 -07:00
Keavon Chambers
3ba570fa68
Fix bug where other panel tabs would switch the document panel tabs
2021-06-26 23:46:39 -07:00
Keavon Chambers
60cf084684
Separate Graphite header logo from menu bar
2021-06-25 00:38:32 -07:00
Keavon Chambers
ce98060cc4
Add "Guide Mode" to viewport mode selector dropdown
2021-06-23 23:10:48 -07:00
Keavon Chambers
8a56d6cf46
Reduce the greediness of keyboard input redirection
...
Part of #124
2021-06-20 02:06:40 -07:00
Keavon Chambers
1c2e667769
Add info to README to help with a possible Windows compilation issue
2021-06-13 16:05:58 -07:00
Keavon Chambers
741a712972
Fix Layer Tree panel CSS to allow scrolling ( #208 )
2021-06-13 12:29:50 -07:00
Keavon Chambers
ca712813c3
Add additional keyboard shortcut tooltips
2021-06-13 11:20:48 -07:00
Keavon Chambers
f53c907c03
Change default document title to "Untitled Document"
2021-06-13 01:46:18 -07:00
Keavon Chambers
1686660306
Add a contributing section to the project README
2021-06-12 21:34:09 -07:00
Keavon Chambers
ececca3858
Remove early sample "greet" code
2021-06-12 12:07:50 -07:00
Keavon Chambers
a3b679e64d
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
91303459a9
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
eae2d70e93
Implement "Export" entry in File menu; add Copy/Paste icons in Edit menu
2021-06-01 19:49:04 -07:00
Keavon Chambers
ad9feda054
Implement menu bar floating list menus ( #163 )
...
Progress towards #135
2021-05-31 11:51:32 -07:00
Keavon Chambers
83984700bf
Generalize and rename overlays as "floating menus"
...
Progress towards #135 .
2021-05-29 21:55:43 -07:00
Keavon Chambers
9f63c6e8ea
Fix missing keyboard shortcut <P> for the Pen Tool
2021-05-27 22:10:48 -07:00
Keavon Chambers
6331325ae0
Minor CSS custom property rename for accuracy
2021-05-27 15:03:49 -07:00
Keavon Chambers
c2314df8d5
Fix layer visibility icons incorrectly referenced in previous cleanup commit.
2021-05-27 09:26:38 -07:00
Keavon Chambers
c205fec0d4
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
313a1dfc65
Standardize icon sizes and folder paths ( closes #110 )
2021-05-27 00:14:50 -07:00
Keavon Chambers
3fba54fad1
Fix popover positioning regression
2021-05-25 21:49:43 -07:00
Keavon Chambers
b3fa6347c2
Update the readme with new progress, details, and mockup screenshot
2021-05-24 00:33:09 -07:00
Keavon Chambers
d7478f5890
Update UI colors and alignment for consistency with the design mockup ( #157 )
...
Closes #111
2021-05-23 19:01:13 -07:00
Keavon Chambers
56c1110800
Fix icon cursor hitbox below SVGs by setting images to display: block
...
Fixes #133
2021-05-21 14:28:11 -07:00
Keavon Chambers
c97cb9905c
Rename and organize widget components to conform to design terminology ( #132 )
2021-05-21 13:10:32 -07:00
Keavon Chambers
c8eea1e4b1
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
4ed093bb4b
Popovers now close when clicked out or mouse strays 100px outside bounds ( #129 )
2021-05-19 01:02:58 -07:00
Keavon Chambers
81effa550f
Move .eslintignore file rules into .eslintrc.js
2021-05-17 18:56:41 -07:00
Keavon Chambers
b20addaaaf
Implement popover component and beginnings of color picker ( #128 )
2021-05-17 12:07:54 -07:00
Keavon Chambers
94485fe6cb
Rename Panel Area -> Workspace and Dockable Panel -> Workspace Panel
2021-05-16 18:15:04 -07:00
Keavon Chambers
7fc6eddb1a
Rename Footer Bar -> Status Bar
2021-05-16 18:04:26 -07:00
Keavon Chambers
1419f3bc6b
Refactor type handling for response handler to fix dangerous casting ( #126 )
2021-05-15 01:02:33 -07:00
Keavon Chambers
a1b80db51f
Upgrade TypeScript from 3.9 to 4.x
2021-05-14 23:53:55 -07:00
Keavon Chambers
15459256b6
Update node packages
2021-05-14 00:58:15 -07:00
Keavon Chambers
c9e9f1acc0
Update favicon
2021-05-09 23:34:12 -07:00
Keavon Chambers
dc5b563ab2
Change debug colors for dark theme readability
2021-05-09 01:37:58 -07:00
Keavon Chambers
722c777ba6
Change default draw color to orange, plus small fixes
2021-05-08 15:17:31 -07:00
Keavon Chambers
64f716e081
Rename human-readable layer types ( #117 )
2021-05-07 21:13:22 -07:00
Keavon Chambers
7ec0558cbd
Plumb frontend for layer visibility toggle
2021-05-07 16:57:45 -07:00
Keavon Chambers
5bf0452b9c
Fix "P" not switching to the Pen Tool
2021-05-07 10:42:09 -07:00