Commit Graph
100 Commits
Author SHA1 Message Date
Keavon Chambers 88bdf9580f Make RadioInput accept optional selected_index 2023-09-11 15:40:05 -07:00
Keavon Chambers 56f20f2e6d Remove history step creation from Select tool box selection 2023-09-02 15:26:04 -07:00
Keavon Chambersand0hypercube 839040c6a3 Rename the Value node to Number (#1412)
* Rename the Value node to Number

* Fix test

---------

Co-authored-by: 0hypercube <0hypercube@gmail.com>
2023-09-02 22:11:03 +00:00
Keavon Chambers ee1a228bfd Fix regression blocking inputs in the graph 2023-09-02 00:19:03 -07:00
Keavon Chambersand0hypercube b30488bbb7 Add support for handling MMB/RMB double click inputs (#1407)
* Add support for handling MMB/RMB double click inputs

* Add todo comment

* Enforce types

---------

Co-authored-by: 0hypercube <0hypercube@gmail.com>
2023-09-01 14:57:03 -07: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 5944186870 Add !build command for core team to create build links 2023-08-29 19:37:21 -07:00
Keavon Chambers 817f1d8ce7 Add a jostle hint to the website main carousel 2023-08-26 00:14:36 -07:00
Keavon Chambers 89b269cf55 Reduce website static content file size by a lot 2023-08-23 15:36:55 -07:00
Keavon Chambers cc0192977d Add demo artwork open links to website 2023-08-22 03:41:19 -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 8fbf0cbb69 Improve the Circular Repeat node 2023-08-19 22:46:44 -07:00
Keavon Chambers 980b692d46 Fix graph view button hotkey tooltip; fix layer CSS bug 2023-08-19 17:04:09 -07:00
Keavon Chambers 185106132d Move node graph from panel to overlay on viewport 2023-08-19 01:21:37 -07:00
Keavon Chambers 5a7d230156 Improve the layers UI in the node graph 2023-08-18 14:26:59 -07:00
Keavon Chambers a871ea6d69 Add auto deployment infrastructure for website 2023-08-16 12:58:42 -07:00
Keavon Chambers 0a7a69b315 Improve website book sidebar and nav ripple 2023-08-15 02:10:10 -07:00
Keavon Chambers 2412a3def6 Improve responsive design sizing for website 2023-08-14 03:29:40 -07:00
Keavon Chambers cfe38c6413 Fix prod deployment cache issue and analytics templating 2023-08-12 13:44:11 -07:00
Keavon Chambers 7c1198a1b4 Fix website styling bugs caused by Safari 2023-08-10 22:59:24 -07:00
Keavon Chambers f429db6369 Revamp the Graphite website (#1265)
Revamp the website with more content
2023-08-10 18:37:04 -07:00
Keavon Chambers f2b0abc164 Roll back node dragging smoothing for now due to wire visual bugs 2023-08-09 01:10:35 -07:00
Keavon Chambers c653fe9579 Add a few node graph style improvements
Also add smoothing to node dragging
2023-08-05 00:55:19 -07:00
Keavon Chambersand0hypercube 3450d638a6 Layer-based nodes redesign, just the basics so far (#1362)
* Redesign the nodes

* Basic vertical stacking syntax sugar

* Fix node connections

* Primary output and line thickness

---------

Co-authored-by: 0hypercube <0hypercube@gmail.com>
2023-08-04 14:56:00 -07:00
Keavon Chambers a267582b4c Fix tool shelf's scrollbar layout shift
Caused by Chromium 113 removing `overflow: overlay;`.
This fixes it for just the tool shelf.
2023-08-03 23:33:24 -07:00
Keavon Chambers 2b05e1c270 Rename Shape tool to Polygon tool 2023-08-01 01:28:14 -07:00
Keavon Chambers b9e49623a3 Rename PropertyHolder to LayoutHolder 2023-08-01 00:46:30 -07:00
Keavon Chambers 8e87e42f3e Remove widgets built by methods on WidgetHolder 2023-07-31 23:36:12 -07:00
Keavon Chambers f151ba39b5 Add checkbox for a transparent BG when exporting image (#1344) 2023-07-30 10:57:07 -07:00
Keavon Chambers 9d425db5a4 Rename "Layer Tree" panel to "Layers" 2023-07-28 17:00:06 -07:00
Keavon Chambers 5c7211cb30 Fix bezier-rs interactive demos page build system 2023-05-26 17:14:31 -07:00
Keavon Chambers c79cf41c28 Show outline for image frames on hover and when selected with frame tools 2023-05-07 01:30:16 -07:00
Keavon Chambers 59adf9a032 Remove dead code from document-legacy 2023-05-06 17:03:40 -07:00
Keavon ChambersandDennis Kobert ebf67eaa82 Implement download/copy ImageFrame layer output (#1194)
* Implement download/copy ImageFrame layer output

* Add note about black transparency when copying

* Introspect node graph output type to conditionally disable the download button

---------

Co-authored-by: Dennis Kobert <dennis@kobert.dev>
2023-05-03 02:09:07 -07:00
Keavon Chambers 0bd96bee1d Reduce height of NumberInput slider thumb 2023-04-28 18:14:47 -07:00
Keavon Chambers dcabd6c0b4 Refactor naming to deprecate "node graph frame" terminology (#1187) 2023-04-28 01:30:47 -07:00
Keavon Chambers 3f17207a32 Replace responses.push() with responses.add() everywhere (#1186) 2023-04-27 17:25:19 -07:00
Keavon Chambers 0af42ee6f9 Prevent closing the crash dialog
Closes #1115
2023-04-27 13:37:39 -07:00
Keavon Chambers 44c26f1570 Fix MenuList submenu reachability on hover and other styling 2023-04-27 13:08:33 -07:00
Keavon Chambers 1f5bfdc2e5 Minor UI design style revamp 2023-04-27 02:05:45 -07:00
Keavon Chambers d8dfcb28ac Add cargo-watch installation to build instructions on website 2023-04-25 23:35:12 -07:00
Keavon Chambers 161bbc62b4 Add the Selective Color adjustment node 2023-04-19 03:02:50 -07:00
Keavon ChambersandDennis Kobert 9db5ad43bf Add the Channel Mixer node (#1142)
* Add the Channel Mixer node

* Fix NodeIdentifier not found in Registry

* Add radio toggle for red/green/blue

---------

Co-authored-by: Dennis Kobert <dennis@kobert.dev>
2023-04-17 12:47:24 -07:00
Keavon Chambers fa23e9d55b Update nodes to work with linear color by default (#1135)
* Update nodes to work with linear color by default

* Make tests work in linear not gamma
2023-04-16 12:20:44 -07:00
Keavon Chambers 0ba0b2e309 Implement the correct Brightness/Contrast node algorithm (#1130)
Implement correct brightness/contrast algorithm
2023-04-15 05:15:58 -07:00
Keavon Chambers c7d14c2a7b Fix Levels and Exposure adjustment nodes (#1112)
* Step Imaginate resolution by 64

* Fix the Exposure node

* Change comments and variable names
2023-04-11 01:52:44 -07:00
Keavon Chambers ce76dbee6a Rename the Downscale node to Downres 2023-04-09 15:22:22 -07:00
Keavon Chambers ea02a2d53a Fix crash upon setting stroke color to none 2023-04-06 18:11:45 -07:00
Keavon Chambers c16ee88b5d Fix some fatal failures related to rendered frame memory size limits 2023-04-02 18:31:41 -07:00
Keavon Chambers 1b50878f3f Prevent rendering when transforming frame layer
Reduces confusion from rendering lag and lessens the opportunity to build up leaked memory from the present lack of node graph cache eviction
2023-04-06 11:53:12 -07:00
Keavon Chambers 4bdb026d9a Update the website with some new content 2023-04-05 02:34:16 -07:00
Keavon Chambers a74376e224 Prevent browser extensions from recoloring the UI 2023-04-04 18:32:27 -07:00
Keavon Chambers a0a5f02e2a Change the edit icon used in Imaginate 2023-04-03 14:16:46 -07:00
Keavon Chambers 0a9427fe6e Polish node graph frames and rename them for clarity (#1104)
* Polish layer panel UI and layer type icons/text

* Assorted UI text and comment cleanup

* Insert Transform node before Imaginate node via tool

* Rename "Node Graph Frame" to Layer type and Frame tool

* Rename "Node Graph Frame" to "Frame" tool

* Update Node Graph Frame -> Frame tool icon

* Fix lint warnings
2023-04-03 01:52:25 -07:00
Keavon Chambers 92fe0bea50 Bezier-rs: Replace Vue-CLI with Webpack bundler 2023-03-29 16:58:51 -07:00
Keavon Chambers c770cd906e Bezier-rs: Fix visualizing negative curvature on demo site 2023-03-28 17:54:11 -07:00
Keavon Chambers 3cf955e5bb Bezier-rs: Release version 0.2 2023-03-28 12:37:52 -07:00
Keavon Chambers 7e124c8035 Update readme and Task Board links 2023-03-27 11:13:53 -07:00
Keavon Chambers d6ab417bcb Code review previous commit, and improve G/R/S hints 2023-03-26 11:49:25 -07:00
Keavon Chambers 5c0a075313 Upgrade cargo dependencies (#1090) 2023-03-25 17:29:49 -07:00
Keavon Chambers b9374ff88b Add Imaginate help docs link to UI 2023-03-25 01:04:58 -07:00
Keavon Chambers 6438a2a403 Update website mockup images 2023-03-22 09:35:32 -07:00
Keavon Chambers d4e8a5545d Skip showing auto-save document old version error 2023-03-21 09:18:28 -07:00
Keavon Chambers 089df947ac Remove leftover debug logs 2023-03-21 00:41:39 -07:00
Keavon Chambers bfbabbc4dc Fix remaining known Svelte UI regressions
Closes #1040
2023-03-20 21:26:33 -07:00
Keavon Chambers 29af355f20 Fix Eyedropper tool and make Svelte's bind:this more robust 2023-03-11 12:32:01 -08:00
Keavon Chambers 7f4602ed20 Fix import being lost when running 'cargo fix' due to feature flag 2023-03-11 01:49:00 -08:00
Keavon Chambers 5748d9bff4 Assorted code file cleanup following Svelte switch 2023-03-10 15:48:04 -08:00
Keavon Chambers 74d761dc84 Remove all references to Vue 2023-03-10 04:02:02 -08:00
Keavon Chambers db29ac6366 Delete the separate Svelte frontend folder 2023-03-10 03:55:13 -08:00
Keavon Chambers 6e20ea538b Replace the Vue frontend with Svelte 2023-03-10 03:54:39 -08:00
Keavon Chambers e539e43483 Rename .vue files to .svelte for diffing 2023-03-10 03:53:15 -08:00
Keavon Chambers 9bd319fba4 Svelte bug fixes and code cleanup (#1074)
* Fix middle click tab close

* Fix swapping colors in the ColorPicker

* Cleanup

* Fix field inputs

* Fix tab key-based navigation

* Fix ColorPicker reseting Initial color when opened

* Prevent backend fighting with user dragging NumberInput

* Remaining fixes and comment cleanup
2023-03-10 03:47:06 -08:00
Keavon Chambers 2327524690 Move JS script to the top of each Vue file 2023-03-10 03:44:49 -08:00
Keavon Chambers 7ce9d6db05 Fix FieldInput and several other Svelte bugs 2023-03-08 01:35:22 -08:00
Keavon Chambers c8a7e58bd5 Add double click input hint icons 2023-03-05 17:49:47 -08:00
Keavon Chambers 6139e807d0 Fix graph scrolling bug from #1021
And replicate those changes to the Svelte version.
2023-03-03 02:28:52 -08:00
Keavon Chambers 107e55e91d Improve the Vibrance node (#1050)
* Fix vibrance

* Improve results

* Clean up implementation

* Fix warnings from unrelated commit

* Improve negative vibrance
2023-02-21 15:42:13 -08:00
Keavon Chambers 964cf6df15 Fix Svelte regressions related to some input widgets 2023-02-19 22:57:11 -08:00
Keavon Chambers f0ad4c91d3 Replace "Edit" icon with final version 2023-02-12 20:02:15 -08:00
Keavon Chambers 33b5c0f5f4 Svelte: Fix FontInput component infinite loop 2023-02-12 01:01:40 -08:00
Keavon Chambers 91f5f74d58 Update release series to Alpha Milestone 2 2023-02-11 12:00:00 -08:00
Keavon Chambers d456640bb8 Fix regressions in previous PR 2023-02-09 11:53:14 -08:00
Keavon Chambers 875f2a5cd1 Improve Threshold node, move Gamma into Exposure node 2023-02-08 17:48:08 -08:00
Keavon Chambers 202b0ee6ed Remove Color struct from document-legacy (#1012) 2023-02-07 17:31:50 -08:00
Keavon Chambers 97b461377f Fix error spam from Rust-Analyzer due to build scripts 2023-02-03 13:00:55 -08:00
Keavon Chambers beab0f01c6 Refactor font_cache into render_data; delete image layer type 2023-01-29 20:31:14 -08:00
Keavon Chambers 7ab601c0c6 Clean up arg order in process_message() so data is last 2023-01-29 04:07:41 -08:00
Keavon Chambers d990110f63 Apply lints and cleanup to Rust code 2023-01-29 03:01:57 -08:00
Keavon Chambers 66e8325362 Update project readme and MSRV 2023-01-24 01:33:30 -08:00
Keavon Chambers d2219cec36 Fix website RSS feed title 2023-01-22 00:59:26 -08:00
Keavon Chambers 05425e39ec Svelte: fix pre-init error check and Properties panel 2023-01-18 22:55:39 -08:00
Keavon Chambers fb10e5194e Svelte: Fix calling DOM API functions on the actual elements 2023-01-13 17:17:38 -08:00
Keavon Chambers bf1a3e3daf Clean up imports and warnings in Rust code 2023-01-13 12:45:14 -08:00
Keavon ChambersandLocria Cyber 5619d44300 Port frontend from Vue to Svelte (WIP in separate folder, many bugs) (#964)
* Make `tauri build` just work

* Move folder: frontend/wasm -> wasm

* Create SvelteKit project with 'npx create-svelte'

* Move wasm-communication into seperate npm package

* Use wasm-pack directly and pack package.json

* Got it to work

* Add primitive build script for wasm npm module

* Fix wasm build script (python)

* Clean up glue code

* Rewrite wasm build script in node.js

* Add serde-reflection to trace types

* Add traced types

* Generate typescript (.d.ts) from Rust types

* Update .d.ts

* Finalize TS types

* Add script to update .d.ts

* Add watch command to build wasm-bindgen

* Make wasm work again

* Add sass; fix build script for windows

* Describe requirement for wasm-pack

* Add license

* Copy and reorganize vue components

* translate LayoutCol.vue

* Split app.scss into pieces

* Translate LayoutRow.svelte

* Rename scss files

* Fix compile issues on Windows

* WIP port TitleBar

* Support classes for LayoutCol/Row

* Restructure based on Vue codebase

* Port all components in window folder

* Port FloatingMenu

* Port Document panel component

* Update readme after folder move

* Update typegen: print discriminant by default

* Update typegen: Merge from branch 'tailwind' 4f14fedb

Fixes bigint & bytes

* Made Vue/webpack/eslint to accept wasm package at new location

This is quite a hack.

Those two packages are both named the same. Yes, it's an npm package inside another npm package.

- frontend/src/wasm-communication/
- frontend-svelte/glue/

'wasm/pkg/index.js' imports the correct one registered when linking.

* Port LayerTree

* Port NodeGraph

* Port Properties

* Port components in /floating-menus

* Finish porting all Vue -> Svelte components

* Change import prefix

* Revert type generation

* Revert moved wasm folder

* Revert all of @locriacyber's work on this branch

- Remove Vite and restore Webpack
- Remove SvelteKit
- Remove everything except the components I ported to Svelte
- Restore all frontend files from Vue code, now altered for Svelte

* Convert Vue's 'reactive' and 'provide' to Svelte's stores and contexts

* Fix event emitting and bi-di data flow

* Undo removal of 'update:' events

* Fix 'update:' event dispatching

* Fix usage in parent of bi-di component props

* Fix component typing, more progress towards no errors

* The page builds and opens!

* Add loading spinner and remove postcss dependency

* Make the basics of document editing work

* Fix rebase history

Co-authored-by: Locria Cyber <74560659+locriacyber@users.noreply.github.com>
2023-01-13 01:05:20 -08:00
Keavon Chambers 5ca6b3fafa Fix build scripts so a failure returns a nonzero exit code 2023-01-02 22:04:13 -08:00
Keavon Chambers 0c9f457866 Rename some Imaginate parameters 2022-12-27 14:30:54 -08:00
Keavon Chambers 41b07ad0cf Minor logging code cleanup 2022-12-24 14:21:30 -08:00
Keavon Chambers 54f438642b Fix some paper cuts 2022-12-22 23:53:36 -08:00