Commit graph

1230 commits

Author SHA1 Message Date
DD Liu
a367d54d0a
Merge pull request #1243 from fsih/gradientOutlines2
Gradient outlines more fixes
2020-08-31 17:26:02 -04:00
DD Liu
517ff63670 Fix lint 2020-08-31 02:17:16 -04:00
DD Liu
cf507eac06 Clear out gradients when setting default colors 2020-08-31 01:56:30 -04:00
DD Liu
740f0e6b2b Remove mixed from the color state when switching to the shape tools 2020-08-28 04:23:54 -04:00
DD Liu
889cd0a0dd If theres no display gradient, the second color of the gradient is ignored. 2020-08-28 01:12:11 -04:00
DD Liu
84da7aa842 Revert the code that converted a transparent-to-transparent gradient to a transparent solid color on select, because that was causing the bug where when you switched gradient twice with trans-trans, it became black-white. Instead, leave the color as a trans-trans gradient, but treat it as if its solid when switching colors. Its starting to keep track of a lot of secret state, which seems brittle... 2020-08-28 00:46:33 -04:00
DD Liu
c62093febe Change transparent fills to black and white when a gradient is added 2020-08-25 06:00:26 -04:00
DD Liu
b45faec330 Merge branch 'develop' into gradientOutlines2 2020-08-21 11:27:15 -04:00
DD Liu
544d833b53 Remove transparent to transparent gradients. Hide the second color of stroke width 0 gradients again. 2020-08-21 11:23:54 -04:00
DD Liu
35749e5b37 Make transparent color switch to black and white when a gradient type is applied 2020-08-21 10:28:08 -04:00
DD Liu
5d5e3ee654
Merge pull request #1211 from fsih/gradientOutlines
Gradient outlines fixes
2020-08-13 17:02:11 -04:00
DD Liu
474b309f7a Remove unnecessary change 2020-08-13 16:48:45 -04:00
DD Liu
d2a78a9e9f Lint 2020-08-08 21:42:32 -04:00
DD Liu
4ec6bcae99 Don't report the gradient type as solid when it's a transparent to transparent gradient, because then switching to a gradient doesn't add a stroke width as expected 2020-08-08 02:19:56 -04:00
DD Liu
92ec567887 Fix stroke width showing 0 when the first color of a gradient is transparent. Fix "MIXED" being the secondary gradient color 2020-08-08 02:11:45 -04:00
adroitwhiz
0b16ca16eb
Merge pull request #1197 from adroitwhiz/vector-line-mode-gradient
Don't clear gradient on entering vector line mode
2020-07-29 17:09:07 -04:00
adroitwhiz
2acf471075
Merge pull request #1128 from adroitwhiz/secondary-color
Make generated secondary color always visibly differ from primary color
2020-07-29 16:57:46 -04:00
adroitwhiz
c0cf25b8c0 Make secondary color always visibly differ 2020-07-29 16:43:32 -04:00
adroitwhiz
92ac312ad8 Rename getRotatedColor to getSecondaryColor
This function is used to generate a "secondary" color for gradients.
It will soon do things other than rotate the hue.
2020-07-29 16:43:21 -04:00
adroitwhiz
a97aee7913 Don't clear gradient on entering vector line mode 2020-07-29 16:41:31 -04:00
adroitwhiz
4f86762737
Merge pull request #1004 from adroitwhiz/stroke-gradient
Implement gradient outlines
2020-07-28 16:47:01 -04:00
adroitwhiz
0f5fb40425
Merge pull request #1166 from adroitwhiz/stroke-gradient-part-1
Gradient outlines part 1
2020-07-28 16:46:45 -04:00
DD Liu
12f4ae32c4
Merge pull request #1191 from adroitwhiz/new-paper
Update paper.js
2020-07-28 16:46:16 -04:00
adroitwhiz
0b619055cc Update paper.js 2020-07-28 16:40:50 -04:00
adroitwhiz
272a10c91f Also enforce minimum gradient size in select mode
Oops
2020-07-28 16:36:55 -04:00
adroitwhiz
379599905a Enforce minimum gradient width for fill tool 2020-07-28 16:01:49 -04:00
DD Liu
7da1c16678
Merge pull request #1142 from fsih/reshapeCurves
Reshape curves
2020-07-28 15:04:51 -04:00
DD Liu
f4f83f6af3 Merge branch 'develop' into reshapeCurves 2020-07-28 14:46:04 -04:00
DD Liu
92bbe741bf
Merge pull request #1189 from adroitwhiz/eslint-react-fix
Pin eslint-plugin-react to 7.20.3
2020-07-28 14:17:26 -04:00
DD Liu
01864080ad Merge branch 'reshapeCurves' of github.com:fsih/scratch-paint into reshapeCurves 2020-07-28 13:47:32 -04:00
DD Liu
3039b48849 Merge branch 'develop' into reshapeCurves 2020-07-28 13:47:13 -04:00
DD Liu
311422334f
Update src/helper/selection-tools/reshape-tool.js
Update comment to remove stroke

Co-authored-by: adroitwhiz <adroitwhiz@protonmail.com>
2020-07-28 13:00:32 -04:00
adroitwhiz
807434a425 Pin eslint-plugin-react to 7.20.3 2020-07-28 09:45:20 -04:00
adroitwhiz
cca0832f0d Fix zero-width-outline logic
- Set the stroke color to "null" when the width is set to 0
- Properly set the stroke color state when the width is increased from 0
2020-07-28 08:39:49 -04:00
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