Commit graph

3046 commits

Author SHA1 Message Date
adroitwhiz
852eefc2d7 Fix gradient outlines with 0 width in select mode
Previously, if you selected a shape with a gradient outline that had a
width of 0, its outline color wouldn't be null when it should have been.
2020-07-28 08:39:49 -04:00
adroitwhiz
98daa5ee5d Gradients in line mode
The UX here isn't the best thing in the world but I think having the
functionality is important judging from the playtest
2020-07-28 08:39:49 -04:00
adroitwhiz
689532f269 Enforce minimum gradient size
This fixes the bug where percertly horizontal gradients on perfectly
vertical lines and vice versa would not be rendered at all
2020-07-28 08:39:49 -04:00
adroitwhiz
f0b1881fb0 Fix changing gradient strokes to/from null
Hopefully the comments help; the logic is kinda convoluted here
2020-07-28 08:39:49 -04:00
adroitwhiz
696e35582c Add GradientToolsModes for shouldShowGradientTools
This means that gradient tools will also be enabled for the stroke color
indicator even in fill and bitmap modes, but that's okay because the
stroke color indicator will be disabled or hidden in those modes anyway.
2020-07-28 08:39:49 -04:00
adroitwhiz
6ab7b4c67d Remove unnecessary bitmapMode params 2020-07-28 08:39:49 -04:00
adroitwhiz
a304dea338 Add gradients to bitmap shape tools 2020-07-28 08:39:49 -04:00
adroitwhiz
9f77faf5c1 Don't set color in bitmap shape onSelectionChanged
This *should* be safe because OvalTool and RectTool's wrapper "mode"
components, the only places that call onSelectionChanged, also update
the tools' color, and the color state reducers will always set the color
every time the selection changes, meaning it'll be updated anyway.
2020-07-28 08:39:49 -04:00
adroitwhiz
f625109c67 Make styleShape more flexible
Now, you can pass null in for a color instead of
{primary: null, secondary: null, gradientType: GradientTypes.SOLID}
and it'll still clear the color. Passing strokeWidth is also
optional now.
2020-07-28 08:39:49 -04:00
adroitwhiz
c81853b1b7 Make fill tool work for outlines 2020-07-28 08:39:49 -04:00
adroitwhiz
2eab5048ac Add hit result to hovered item data 2020-07-28 08:39:49 -04:00
adroitwhiz
df1989d0b0 Add gradients to vector shape tools 2020-07-28 08:39:49 -04:00
adroitwhiz
2df22838b4 Update color reducer tests 2020-07-28 08:39:49 -04:00
adroitwhiz
6094953ef4 Wire up stroke gradient controls
* Abstract FillColorIndicator and StrokeColorIndicator to ColorIndicator
* Replace stroke color reducer with stroke style reducer
* Add color style proptype
* Clear stroke gradient in line mode
2020-07-23 05:57:52 -04:00
adroitwhiz
a23fabd778 Fix fill color reducer test 2020-07-23 05:57:01 -04:00
adroitwhiz
f8da455005 Use createGradientObject in applyGradientTypeToSelection 2020-07-23 05:57:01 -04:00
adroitwhiz
1ecab99cfb Make style-path helpers generic over fill & stroke 2020-07-23 05:54:57 -04:00
adroitwhiz
b59af02254
Merge pull request #1006 from adroitwhiz/broad-brush-braces
Improve broad brush handling
2020-07-21 16:07:28 -04:00
DD Liu
f8b94a294f
Merge pull request #1154 from Jacco/fix-1153
ungroup
2020-07-16 22:40:26 -04:00
DD Liu
bb30345741
Merge pull request #1167 from LLK/dependabot/npm_and_yarn/scratch/paper-0.11.20200709220949
Bump @scratch/paper from 0.11.20200529164227 to 0.11.20200709220949
2020-07-14 16:30:41 -04:00
dependabot-preview[bot]
374810c865
Bump @scratch/paper from 0.11.20200529164227 to 0.11.20200709220949
Bumps [@scratch/paper](https://github.com/paperjs/paper.js) from 0.11.20200529164227 to 0.11.20200709220949.
- [Release notes](https://github.com/paperjs/paper.js/releases)
- [Changelog](https://github.com/paperjs/paper.js/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/paperjs/paper.js/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-09 22:18:33 +00:00
adroitwhiz
dc430a0111 Fix setting of stroke colors in bitmap mode 2020-07-09 17:52:08 -04:00
adroitwhiz
1017911fd4 color -> style, move selection gradient into it
A "style" refers to something that can fill/stroke a shape.
Currently that's either a solid color or a gradient of some orientation.
The selection gradient type reducer has been removed and folded into the
"fill style" reducer.
2020-07-09 17:52:08 -04:00
adroitwhiz
7bab4d5ed8 Abstract color reducer into reducer-generator 2020-07-09 17:13:41 -04:00
adroitwhiz
018958ce7b Combine fill-color and fill-color-2 reducers 2020-07-09 17:13:41 -04:00
adroitwhiz
604b450b5d Simplify fill-color-2 reducer logic
why my brain hurt???
2020-07-09 16:06:04 -04:00
Jacco Kulman
5a154e708e ungroup 2020-06-27 14:41:24 +02:00
DD Liu
2218730c11
Merge pull request #1133 from Jacco/fix-711
Keyboard shortcuts added
2020-06-26 22:02:47 -04:00
DD Liu
b9eefe0b96 Merge branch 'develop' into reshapeCurves 2020-06-23 16:51:35 -04:00
DD Liu
42f74fd3a8 Reshape should hit curves, not strokes 2020-06-23 16:51:09 -04:00
Jacco Kulman
8a886a7b73 Only cut if something is selected 2020-06-21 10:16:16 +02:00
Jacco Kulman
78af17cccf shouldShow checks added 2020-06-21 09:57:27 +02:00
Jacco Kulman
b94a2addf3 Keyboard shortcuts added 2020-06-21 09:52:04 +02:00
adroitwhiz
8d52b31d82
Merge pull request #1119 from adroitwhiz/fix-mixed-color2
Fix color button turning white when it shouldn't
2020-06-19 12:42:44 -04:00
DD Liu
4f614c2c66
Update ref to beta 2020-06-19 12:27:55 -04:00
DD Liu
e90000b20b
Merge pull request #1120 from Jacco/fix-379
prevent scaling factor too low (per direction)
2020-06-18 21:37:35 -04:00
Jacco Kulman
0f24b4b6b5 MIN_SCALE_FACTOR & clamping instead of halting 2020-06-17 06:47:20 +02:00
adroitwhiz
013aa47bc9
Merge pull request #1108 from adroitwhiz/no-origrot
Stop setting item.data.origRot
2020-06-15 10:59:16 -04:00
Jacco Kulman
e44127b492 prevent scaling factor too low (per direction) 2020-06-13 15:11:20 +02:00
adroitwhiz
c95f882d7e Fix color button turning white when it shouldn't
If you select a group with "mixed" gradient types, then color and color2
will both be MIXED. If you then select a shape with a solid color, it
won't reset color2, which will remain MIXED. We only want the background
to appear white if color2 is MIXED *and* the gradient type actually uses
color2. This is already done in the component itself, which only shows
the "mixed" icon if the gradient type is non-solid, but
colorToBackground left out this gradient type check.
2020-06-12 02:59:35 -04:00
DD Liu
10ce12d322
Merge pull request #1117 from LLK/dependabot/npm_and_yarn/scratch-svg-renderer-0.2.0-prerelease.20200609210443
Bump scratch-svg-renderer from 0.2.0-prerelease.20200604203226 to 0.2.0-prerelease.20200609210443
2020-06-10 18:14:56 -04:00
DD Liu
8013fdd707 Update svg renderer version 2020-06-10 18:13:22 -04:00
dependabot-preview[bot]
b4e2bdfb1d
Bump scratch-svg-renderer
Bumps [scratch-svg-renderer](https://github.com/LLK/scratch-svg-renderer) from 0.2.0-prerelease.20200604203226 to 0.2.0-prerelease.20200609210443.
- [Release notes](https://github.com/LLK/scratch-svg-renderer/releases)
- [Commits](https://github.com/LLK/scratch-svg-renderer/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-10 14:34:06 +00:00
DD Liu
dd3220ff01
Merge pull request #1113 from LLK/dependabot/npm_and_yarn/scratch-svg-renderer-0.2.0-prerelease.20200604203226
Bump scratch-svg-renderer from 0.2.0-prerelease.20200507183648 to 0.2.0-prerelease.20200604203226
2020-06-09 17:26:55 -04:00
DD Liu
13902dda0e
Update Contributing.md 2020-06-09 16:53:46 -04:00
adroitwhiz
2a1eaa8926
Merge pull request #997 from adroitwhiz/adjust-reshape-tolerance
Adjust reshape mode handle tolerance
2020-06-09 13:19:00 -04:00
adroitwhiz
e22295b68c Add handle padding and radius 2020-06-08 16:49:49 -04:00
dependabot-preview[bot]
15a4e6f0ea
Bump scratch-svg-renderer
Bumps [scratch-svg-renderer](https://github.com/LLK/scratch-svg-renderer) from 0.2.0-prerelease.20200507183648 to 0.2.0-prerelease.20200604203226.
- [Release notes](https://github.com/LLK/scratch-svg-renderer/releases)
- [Commits](https://github.com/LLK/scratch-svg-renderer/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-05 12:38:25 +00:00
adroitwhiz
3dac1b6adc
Merge pull request #1097 from adroitwhiz/scrollbar-padding
Make the room between canvas edges and scrollbars count as draggable
2020-06-04 15:23:12 -04:00
adroitwhiz
32e80364c1
Merge pull request #1000 from adroitwhiz/addpoint-divideat
Use divideAt in PointTool.addPoint so that adding new points doesn't affect curves' shape
2020-06-04 15:22:29 -04:00