Keavon Chambers
9f25c50ca1
Prep for the RC1 release of the desktop app
2025-12-24 22:45:08 -08:00
Timon
11e2882cb2
Desktop: Fix Windows build ( #3522 )
...
* fix win build
* fix mac
* Change window button colors to match Windows colors
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-12-22 14:48:13 -08:00
Keavon Chambers
64ed21f694
Clean up code with better naming
2025-12-21 23:35:00 -08:00
Keavon Chambers
f1e8ebefc5
Improve tooltip docs with Markdown styling and refined math node explanations ( #3488 )
2025-12-20 01:05:15 -08:00
Timon
820865389c
Desktop: UI scale preference ( #3475 )
...
* ui scale preference
* cleanup
* add update ui scale message to SIDE_EFFECT_FREE_MESSAGES
* fix mac title bar height
* hide UI preference section on web
* set % as unit of ui scale
2025-12-15 14:11:43 +00:00
Timon
7532bd7260
Desktop: Hide menu bar in fullscreen mode on Mac ( #3464 )
...
hide menu bar in fullscreen mode on mac
2025-12-12 13:09:31 +00:00
Keavon Chambers
74d9c911bd
Fix ShortcutLabel drawing of consecutive key labels
2025-12-04 22:04:37 -08:00
Keavon Chambers
2ee8e56cef
Fix sending platform-specific shortcut keys to frontend before editor is initialized with the platform set
2025-12-04 15:35:30 -08:00
Keavon Chambers
783ea0b437
Unwrap the Layout enum to replace it with the WidgetLayout struct now called Layout ( #3448 )
2025-12-04 15:24:40 -08:00
Keavon Chambers
3c4ad8b720
Refactor the WidgetLayout struct to remove SubLayout and avoid sending LayoutTarget to frontend
2025-12-04 02:44:54 -08:00
Keavon Chambers
810ce40e9b
Restyle and refactor shortcut labels to send hints bar and welcome screen layouts from Rust ( #3447 )
...
* Restyle UserInputLabel and refactor its usages to have all input its data sent from Rust
* Replace the welcome screen quick buttons with ones sent by backend
* Add the ShortcutLabel widget to the backend
* Replace hints bar with a backend-controlled layout; show mouse icons in place of mouse labels
2025-12-04 01:04:14 -08:00
Keavon Chambers
600fb5c28f
Refactor the old menu bar plumbing to use standard TextButtons ( #3444 )
...
* Refactor the old menu bar plumbing to use standard TextButtons
* WIP: Fix Mac native menu bar
* WIP: fix desktop menu bar mac
* Refactor menu bar definitions to use the builder pattern
* WIP: fixup desktop
* cleanup
* fix linux
* Remove dead code that was failing to lint
---------
Co-authored-by: Timon Schelling <me@timon.zip>
2025-12-03 12:41:54 +00:00
Keavon Chambers
e8ebcc2c21
Replace text-only tooltips with custom richly styled tooltips ( #3436 )
...
* Replace the title attribute with custom FloatingMenu tooltips
* Separate tooltip labels and descriptions into two styled blocks
* Move keyboard shortcut tooltips to a separate section at the bottom
* Update shortcut key styling in tooltips and hints bar
* Fix .to_string()
2025-11-30 13:32:58 -08:00
Keavon Chambers
12453d2e61
Make the welcome screen not include Alt in Ctrl+Alt+N on desktop
2025-11-17 15:26:23 -08:00
Keavon Chambers
e42950b4be
Add support for middle-clicking (and double-clicking) the document tab bar to create a new document ( #3363 )
2025-11-10 00:54:30 -08:00
Timon
f02f834097
Desktop: Add support for UI scaling ( #3310 )
...
* desktop support ui scaling
* fix some warnings
* use browser zoom if needed
* fix infinite footprint size
* fix web canvas scale
* always set zoom
* use only zoom for scaling
* prevent user zoom
* remove mouse position scaling
2025-11-08 12:32:04 +01:00
Keavon Chambers
96d73a8570
Remove the application title from the header bar
2025-11-06 09:20:51 -08:00
Keavon Chambers
f4a0f272dd
Add note about the September 2025 release to the editor welcome screen
2025-09-20 05:20:20 -07:00
Timon
944a6eeea2
Desktop: Hook up native window controls ( #3161 )
...
* Implement window controls
* Fix drag target size
* Maximize with drag area double click
2025-09-13 20:15:52 +00:00
Flo
cf2e525ea9
Fix the ellipses of a long document name causing the tab's unsaved asterisk to be hidden ( #3146 )
...
* Fix unsaved indicator
* Change isSaved to isUnsaved to prevent showing star on tabs like Properties
* Fix CSS
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-09-08 03:40:49 +00:00
Timon
083dfa5f49
Clean up autosave persistence ( #3115 )
...
* Set auto save state to false on document rename
* Update open document list on transaction commit and aboard
* Use current network to compute hash
Was using the last element in undo
Before artworks where not auto saved when the had no undo history
* Refactor persistence
2025-09-02 13:27:38 +00:00
Keavon Chambers
b5ebe78f5e
Update all frontend npm dependencies except Svelte and Vite ( #3120 )
...
* Upgrade node dependencies except Svelte 5 and its peer deps
* Fix lint errors
* Fix previous Rust deps upgrade breakage
* Fix demo artwork
* Allow profiling CI workflow to fail
2025-09-01 17:22:30 -07:00
Timon
ad59e1c622
Desktop: Add window control buttons for Linux ( #3081 )
...
* Add window buttons for linux
* Code and design review
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-08-28 03:53:43 +00:00
Timon
e70862b399
Desktop: Add File > Save As… ( #3034 )
...
* Make file name and document name identical
* Add save as action
* Fix test errors
* Add missing save as action
* Desktop fix drop file open document file message
* Address review comments
* Replace file save suffix with file extension
* Add comment specifying that the upload function takes a html input accept string
* Fix remove file extension in web
* Use let
* Don't show save as menu entry in web
* Don't add SaveDocumentAs in web
* Remove file extension on all open document file calls
---------
Co-authored-by: Dennis Kobert <dennis@kobert.dev>
2025-08-20 10:09:01 +00:00
Keavon Chambers
2bb4509647
Replace the Spreadsheet panel with an improved Data panel ( #3037 )
...
* Improve the table data panel
* Add the "Window" menu bar section and polish everything
2025-08-10 07:46:42 -07:00
Keavon Chambers
66cd7a3b76
Desktop: Add the transparent viewport hole punch and hook up window button plumbing ( #2949 )
2025-07-28 02:13:32 -07:00
Keavon Chambers
63cce26755
Tweak the design of the RadioInput widget
2025-05-24 16:07:01 -07:00
Keavon Chambers
d445bffe31
Add donation callouts in-app and on the site
2025-04-25 00:13:24 -07:00
James Lindsay
43275b7a1e
Add the Spreadsheet panel to inspect node output data ( #2442 )
...
* Inspect node ouput stub
* Fix compile error in tests
* Create a table
* Clickable tables
* Add vector data support
* Checkbox to enable the panel
* Remove Instances table ID column; style the spreadsheet
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2025-03-18 23:06:05 -07:00
Keavon Chambers
ec8c8d6485
Polish and add aborting to several input widgets: no Esc closing parent menus; color picker axis align; repeat on arrow buttons ( #2276 )
...
* Remove color input outline; reduce antialiasing compositing artifacts in color widgets
* Rename ColorButton to ColorInput
* Add features and aborting to several other widgets
- Prevent Esc from closing parent floating menus when aborting
- Fix missing icon regression
- Gutter resizing abort
- Color picker aborts, Shift axis alignment, improve click/drag behavior for gradient spectrum
- Scrollbar abort, repeat when held, fix directional arrows when viewport is zoomed
- Number input abort, repeat when held
* Move ColorInput into the inputs folder
* Fix tiny logo
2025-02-10 05:46:41 -08:00
Keavon Chambers
9ad6c31483
Remove blob URL dead code and clean up more frontend code ( #2199 )
2025-01-14 13:08:47 -08:00
Keavon Chambers
904cf09c79
Add drag-and-drop and copy-paste file importing/opening throughout the UI ( #2012 )
...
* Add file importing by dragging and dropping throughout the UI
* Disable comment-profiling-changes.yaml
* Fix CI
2024-09-28 00:19:43 -07:00
Keavon Chambers
1ee5ffbbe8
Clean up web code errors and make CI enforce them
2024-09-24 01:33:02 -07:00
adamgerhant
0dbbabe73e
Add layer node chains, import/export edge connectors, and refactor graph editing to go thru a NodeNetworkInterface ( #1794 )
...
* WIP: NodeNetworkInterface
* Organize ModifyInputsContext to use network interface
* Improve ClickTarget and Position state
* Rework ClickTarget state
* Continue fixing NodeGraphMessageHandler
* Restructure network_metadata
* Final(?) NodeNetworkInterface struct
* Final(??) NodeNetworkInterface
* Final(???) NodeNetworkInterface. Separated persistent and transient data
* Final NodeNetworkInterface data structure. Implemented all basic getters
* Continue migrating functionality to network interface
* Migrate all NodeGraphMessage's to use network interface
* Fix all helper functions in NodeGraphMessageHandler
* Move document metadata to network interface, remove various cached fields
* Move all editor only NodeNetwork implementations to NodeNetworkInterface
* Fix all DocumentNodeDefinitions
* Rework and migrate GraphOperationMessages to network interface
* Continue migration to NodeNetworkInterface
* Save point before merging master
* Fix all errors in network_interface
* 850 -> 160 errors
* Fix all errors :D
* Render default document
* Visualize click targets
* merge conflicts
* Cache transient metadata separately, store entire interface in document history
* Start migration to storing selected nodes for each network
* Remove selected nodes from document message handler
* Move outward wires and all nodes bounding box to transient metadata
* Fix connecting/disconnecting nodes
* Layer stack organization for disconnecting/connecting nodes
* Basic chain locking
* Improve chain positioning
* Add copy/pasting
* Move upstream nodes on shift+drag
* merge conflict fixes
* Improve Graph.svelte code quality
* Final improvements to Graph.svelte
* Fix layer panel
* Performance optimizations
* Bug fixes and derived PTZ
* Chain organization improvement and bug fixes
* Bug fixes, remove all warnings
* Automatic file upgrade
* Final code review
* Fix editor tests
* Fix compile errors
* Remove select tool intersection check when panning
* WIP: Import/Exports
* Fix JS issues
* Finish simplified import/export UI
* Import/Export viewport edge UI
* Remove minimum y bound on import/export ports
* Improve performance while panning graph
* cargo fmt
* Fix CI code build
* Format the demo artwork graph with chains
* Code review
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
Co-authored-by: dennis@kobert.dev <dennis@kobert.dev>
2024-08-04 06:47:13 -07:00
Keavon Chambers
06177597ae
Fix viewport bounds getting out of sync at times, like when toggling rulers
2024-07-28 05:42:27 -07:00
Keavon Chambers
19eb6ce0ab
Remove editor instances concept and clean up JS interop code
2024-04-29 04:17:09 -07:00
0HyperCube
b31e8f7b6d
Make menu lists searchable ( #1499 )
...
* Searchable font list
* Bug fixes and UX polish for edge cases
* More work, still more bugs to fix
* Don't update highlight when not open
* Bug fixes
* Additional bug fixes and code review
* Fix keyboard input being sent to backend
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-03-09 10:58:13 +00:00
zhiyuan
9530e55ace
Split widget callbacks into update and commit so only the latter adds a history state ( #1584 )
...
* feat: split commit and update layout
* feat: add on_commit callback
* Code review
* fix: refactor
---------
Co-authored-by: Keavon Chambers <keavon@keavon.com>
2024-02-05 01:32:15 -08:00
Keavon Chambers
96b5d7b520
Many subtle improvements to the UI design system ( #1537 )
2023-12-28 04:35:20 -08:00
Keavon Chambers
01499de8e7
Make the tool shelf adapt to multiple columns and improve panel scrollbars
...
Closes #176
2023-12-06 02:10:40 -08:00
Keavon Chambers
9c83d054cf
Redesign the Layers panel
2023-12-06 01:52:02 -08:00
Keavon Chambers
3e35abd377
Clean up .graphite file serde encoding
2023-12-06 01:51:48 -08:00
Keavon Chambers
8f9371dad0
Improve navigation footer bar hints
2023-12-06 01:51:30 -08:00
Keavon Chambers
ab3410cffe
Consolidate MenuListButton into TextButton ( #1470 )
2023-11-25 01:56:05 -08:00
Keavon Chambers
719c96ecd8
Rename and reorganize several widgets ( #1462 )
...
* Rename SwatchPairInput -> WorkingColorsButton
* Remove unnecessary Svelte each-loop keys
* Rename (and migrate) MenuBarInput -> MenuListButton
* Rename PivotAssist -> PivotInput
* Rename PersistentScrollbar -> ScrollbarInput and CanvasRuler -> RulerInput
* Rename DIalogModal -> Dialog
* Rename WidgetRow -> WidgetSpan
2023-11-18 04:34:30 -08:00
Keavon Chambers
a6ca43bb2d
Restore ESLint and Prettier auto-formatting and CI linting ( #1457 )
...
* Restore ESLint and Prettier autoformatting
* Fix formatting and lints in web files
* Hacky fix to eslint crash
* Fix remaining lints
* Add lint-fix script
---------
Co-authored-by: 0hypercube <0hypercube@gmail.com>
2023-11-16 13:12:47 -08:00
Keavon Chambers
a112ab27cf
Dialog redesign and content revamp ( #1409 )
...
* Revamp the content and design of dialogs
* Add the Licenses dialog
2023-09-01 01:58:20 -07:00
Keavon Chambers
0dcfafbf64
Add demo artwork
2023-08-22 03:26:59 -07:00
Keavon Chambers
0e97a256b7
Fix node colors; fix spacebar not closing graph
2023-08-20 23:32:27 -07:00
Keavon Chambers
185106132d
Move node graph from panel to overlay on viewport
2023-08-19 01:21:37 -07:00