DD
6a8803b9e7
liiiiiiint
2018-01-23 14:59:57 -05:00
DD
86c9cb1e27
Use translate instead of position for costume centering.
2018-01-23 14:35:08 -05:00
Florrie
3341470cf0
Only use deltaY-horizontal-scrolling if deltaX is unset
2018-01-22 22:21:52 -04:00
Florrie
bffcf4dd96
Add holding shift to force horizontal scrolling
2018-01-20 22:17:17 -04:00
Paul Kaplan
7aff96c3ff
Only update the full color state after eyedropper changes.
...
This prevents the sliders from changing when other sliders change (i.e.
bringing brightness down to 0). I needed to reorder the callback before
deactivate so the color picker can know that the update is coming from
the eyedropper. Also updated the comment to reflect what is really going
on.
2018-01-19 09:58:47 -05:00
Paul Kaplan
0279ba095c
Enforce state update before propogating change through props.
2018-01-19 09:43:25 -05:00
DD
379ecf85fc
Add an initial undo state when importing a blank costume
2018-01-12 11:22:26 -05:00
DD
300bbc80f3
Run ensure clockwise after flip, since flip makes everything counterclockwise which breaks fill
2017-12-22 17:44:14 -05:00
DD
04560d32ef
Flip
2017-12-22 17:44:14 -05:00
DD
801fc926a0
Change .1 to .5 since we figured out that it doesnt matter and .5 seems less arbitrary
2017-12-22 17:30:05 -05:00
DD
db5ddcbe87
Change handle ratio to make squares circles
2017-12-22 11:32:06 -05:00
DD
29b5c931f2
fix lint
2017-12-21 17:03:28 -05:00
DD
a0c89642d8
Make state change even when select items dont change so that handle changes work. Make the edge code pick the normal in a more well defined way
2017-12-21 15:38:24 -05:00
DD
07b30aa55b
Handle pointed and curved
2017-12-21 15:38:24 -05:00
DD
0fc9fd151d
Set enabled state based on whether any points are selected
2017-12-21 15:38:24 -05:00
DD
2dbce9186d
alphabetize
2017-12-20 14:44:39 -05:00
DD
f5c2fe2dd6
Break out mode tools
2017-12-20 14:34:32 -05:00
DD Liu
a35a0f7933
Merge pull request #221 from fsih/fill
...
Fill tool
2017-12-19 16:43:14 -05:00
DD
dcabea2a99
Convert SVGs to clockwise when importing
2017-12-19 14:40:00 -05:00
DD
814ec160b3
Fill tool for fills (not strokes)
2017-12-19 13:47:39 -05:00
DD
207341f47f
Basic fill tool
2017-12-19 13:47:39 -05:00
Paul Kaplan
bdd70165c8
Add missing code for updating stroke color from eyedropper
2017-12-19 10:47:12 -05:00
Matthew Taylor
21dc3a4b7f
Merge pull request #212 from mewtaylor/issue/gh-147
...
Implement eye dropper for paint editor
2017-12-15 11:04:54 -05:00
Matthew Taylor
8c2fc475f6
updates from @paulkaplan’s feedback
...
1. Removes the cursour over loupe, and fills the loupe center’s color correctly
2. Fixes a console error and loupe initialization issue
3. Increases the size of the swatches
Thanks @paulkaplan!
2017-12-15 10:09:19 -05:00
Matthew Taylor
54e1e34127
don’t close popover on eye dropper click
...
and also update the hsv states from an eye dropper color change.
2017-12-14 14:45:26 -05:00
Matthew Taylor
0209e65ac0
accommodate zoom in eye dropper
2017-12-14 12:58:25 -05:00
Matthew Taylor
d87adbeac5
remove shouldComponentUpdate
...
also do proper validation of `previousTool`
2017-12-13 17:18:53 -05:00
Matthew Taylor
ae0358079e
use pixelRatio
instead of scale constant
...
Turns out that the width/height paper sets on the canvas is tracked at scale to the width/height we set in the `pixelRatio` value, so use that to handle grabbing pixel color rather than a constant we set.
2017-12-13 13:13:43 -05:00
Matthew Taylor
c8094af69e
don’t change modes when activate eye dropper
...
It works well to keep track of the previously active tool in redux, and reactivate that tool when the eye dropper is finished. This takes `eye-dropper` out of the mode tool reducer too, which is nice.
2017-12-13 13:12:33 -05:00
Paul Kaplan
6a7daa83a5
Merge pull request #213 from paulkaplan/strip-svg-namespace
...
Remove "svg:" namespace from svg before importing.
2017-12-12 10:55:53 -05:00
Paul Kaplan
0e74afc631
Remove "svg:" namespace from svg before importing.
...
The namespace on tags causes paperjs to fail to import.
2017-12-12 10:25:59 -05:00
Matthew Taylor
4accabbc69
Changes from PR feedback
...
fixes lint and gui compatibility issues shown by @paulkaplan, and also does some cleanup to references and structure as requested by @fsih. Thanks to both of you for the reviews!
FYI – part of the canvas reference change made it so that the `PaintEditor` presentation component could become a classless declaration.
2017-12-11 13:24:57 -05:00
Matthew Taylor
2183dc759f
Implement eye dropper for paint editor
2017-12-08 16:52:37 -05:00
DD
5fe8369b1e
Handle null items
2017-11-30 17:56:10 -05:00
Matthew Taylor
5ffdd14ff0
Merge pull request #194 from mewtaylor/issue/gh-41
...
Implement GH-41: Add minimum width gui
2017-11-21 11:06:05 -05:00
Matthew Taylor
27c0684e1c
fine-tune the responsive design
...
squish some things together a bit more, including in desktop mode (in order to fit the coming “rotation point” button). Also turn canvas into 480x360, as it is in the mocks
2017-11-13 15:13:20 -05:00
Paul Kaplan
8730c28a79
Merge pull request #196 from paulkaplan/fix-object-values
...
Do not use Object.values
2017-11-08 13:18:06 -05:00
Paul Kaplan
b9398d2f22
Do not use Object.values
...
This is almost silly because the "keymirror" used to create Modes
actually ensures that the keys and the values of the object are the
same. So replace object.values with object.keys which has complete
browser support.
2017-11-08 08:32:43 -05:00
Matthew Taylor
95099d6e90
move modes to lib
2017-11-07 14:02:39 -05:00
DD
5e1fcc66ea
Tools keep track of when they are 'active' (mouse down has occured on them)'
2017-11-07 11:17:11 -05:00
DD
a9b55b9a22
Try to make layer management more robust
2017-11-02 17:19:42 -04:00
DD
a5a60b0884
Offset the pasted item from the original when on the same costume
2017-11-01 18:10:03 -04:00
DD
cc920e8969
clear more of the state when you switch costumes. you shouldnt retain the same selected items
2017-11-01 17:23:20 -04:00
DD
7e1e8d96ac
add copy/paste
2017-11-01 17:05:37 -04:00
DD Liu
28b9c4149e
Merge pull request #169 from fsih/shapeColor
...
Force a color state when switching to shape tools
2017-10-31 10:27:59 -04:00
DD
0d0cdfa757
Force a color state when switching to shape tools
2017-10-30 18:23:41 -04:00
DD
81191ff7f9
remove pen
2017-10-30 17:49:44 -04:00
Paul Kaplan
3dab6ef7f0
Fix nits
2017-10-30 11:13:29 -04:00
Paul Kaplan
7cc3ecf74b
Only submit SVG changes when color picker closes
2017-10-29 14:10:43 -04:00
Paul Kaplan
76b9efabeb
Allow ctrl key to zoom
2017-10-27 11:18:21 -04:00
Paul Kaplan
82928a51b9
Merge branch 'develop' into wheel-pan-zoom
2017-10-27 10:27:20 -04:00
Paul Kaplan
62526889c9
Remove wheel listeners from brush and eraser
2017-10-27 10:22:52 -04:00
Paul Kaplan
d4b28a8817
Remove scroll action on eraser and brush
2017-10-27 10:16:13 -04:00
Paul Kaplan
62fad01607
Increase zoom button increment
2017-10-27 10:05:21 -04:00
Paul Kaplan
9ac6b0b048
Save and restore project pan and zoom correctly between costume changes
2017-10-27 09:59:57 -04:00
Paul Kaplan
94b90e104b
Add basic zooming and panning from mousewheel
2017-10-27 09:12:31 -04:00
Paul Kaplan
433baae5ba
Fix linting
2017-10-26 18:16:14 -04:00
Paul Kaplan
ab3b4e4555
Force a stroke width on pen and line mode
2017-10-26 17:43:06 -04:00
Paul Kaplan
b8aadc3c54
Disable fill or outline indicators for brush, line and pen mode.
2017-10-26 17:43:06 -04:00
Paul Kaplan
40ec57fbf1
Force a real color when activating brush, pen and line mode.
2017-10-26 17:43:06 -04:00
DD Liu
b2eb47d7f2
Merge pull request #107 from fsih/backspace
...
Don't delete when input field focused
2017-10-26 15:44:19 -04:00
Matthew Taylor
b7f0df5214
Merge branch 'issue/disabled-state' into develop
...
* issue/disabled-state:
comment out disabled mode tools for now
Change border on disabled undo/enabled redo
pass props to button from labeled button
Add undo/redo disabled states
Have the paint-editor container listen to `selectedItems`
Add bool to `disabled` prop type
Add disabled state for button
# Conflicts:
# src/containers/paint-editor.jsx
2017-10-26 15:32:43 -04:00
DD
6e589e8f81
case
2017-10-26 12:05:54 -04:00
DD
7ca851985e
Move delete out of tools so its always available
2017-10-26 11:25:38 -04:00
Matthew Taylor
7b783a5c46
Add undo/redo disabled states
2017-10-26 10:58:28 -04:00
Matthew Taylor
2376a3ce63
Have the paint-editor container listen to selectedItems
...
This solves the issue of buttons not updating their disabled/enabled state until being dragged by making sure that a re-render occurs whenever a new item is selected, checking again for state.
2017-10-26 09:28:01 -04:00
DD
29a3d74143
Add the background guide layer
2017-10-24 17:12:44 -04:00
DD
083bf63869
Add group and ungroup
2017-10-24 13:26:43 -04:00
DD
3b4f509f89
Implement ordering buttons
2017-10-23 17:20:35 -04:00
Ray Schamp
82386c2c88
Merge pull request #78 from rschamp/costume-on-submit
...
Add props for name, onUpdateName, and svgId
2017-10-23 11:56:34 -04:00
Ray Schamp
138718008c
Add SVG id prop to track costume changes
...
Since the editor will receive an update every time the svg is updated, only re-render if the actual svg id changes.
2017-10-21 16:15:55 -04:00
Ray Schamp
303b4caced
Add props for name/onUpdateName
2017-10-21 16:15:55 -04:00
DD
cc350e9056
oval mode
2017-10-20 15:01:25 -04:00
DD Liu
dbe24ed50c
lint and clean up some things
2017-10-20 14:19:52 -04:00
DD
f95bbe2ca5
Basic rectangle tool
2017-10-20 14:19:52 -04:00
DD
f9772e90ed
Remove hover. Why did I leave hover in all of these
2017-10-20 14:19:02 -04:00
DD Liu
4580fcc7d8
Merge pull request #71 from fsih/penTool
...
Pen tool
2017-10-20 14:18:04 -04:00
DD
b62c2e32cb
remove references to hover
2017-10-20 14:17:10 -04:00
DD
131193ef73
Pen tool
2017-10-20 14:17:10 -04:00
DD Liu
29ca6c66cf
Merge pull request #70 from fsih/lineToolSnapping
...
Line tool snapping
2017-10-20 14:16:51 -04:00
DD
b79bb8174f
found a better fix than the in handle = null thing
2017-10-20 14:16:23 -04:00
DD
021930eadc
fix lines getting curved when joining paths
2017-10-20 13:36:57 -04:00
DD
70ff3b656f
Fix allowing connecting lines with end points that are very close together
2017-10-20 12:02:28 -04:00
Paul Kaplan
8a5e59dd44
Merge pull request #79 from mewtaylor/issue/tool-select-ui
...
Add svg icons to tool select components
2017-10-20 11:41:24 -04:00
Matthew Taylor
2e0b34a325
Add svg icons to tool select components
...
This also adds a generic `tool-select` component which can be composed by each of the individual tools for presentation purposes.
Towards #40 .
2017-10-19 15:08:15 -04:00
DD
1c3d5d72f9
rename style path to style blob and use style path for line tool
2017-10-18 19:21:29 -04:00
DD
d27aa53fca
Fix line tool
2017-10-18 14:08:03 -04:00
DD
05d7b806a6
fix a bunch of things around import and export
2017-10-16 19:37:48 -04:00
DD
ce53a2c77e
Add oval, rect, rounded rect buttons that do nothing
2017-10-16 14:33:11 -04:00
DD
d2881b2d15
Add pen tool that does nothing. Move blob tools to helper folder.
2017-10-16 14:18:04 -04:00
Paul Kaplan
fb11d5dd5e
Merge pull request #59 from paulkaplan/color-picker
...
Color picker
2017-10-16 08:52:09 -04:00
Paul Kaplan
3eaf8047aa
Initial prototype of color picker
2017-10-13 13:34:25 -04:00
DD
4077fe828c
use scratch fork of paper
2017-10-12 18:35:30 -04:00
DD Liu
e79faa79d1
Merge pull request #51 from fsih/fixImport
...
Fix import
2017-10-12 11:26:14 -04:00
DD
affe8463be
fix undo removes cursor preview
2017-10-12 11:23:35 -04:00
DD
87eb78ad49
update stage on undo and redo
2017-10-12 11:23:35 -04:00
DD
345a43e127
merge onUpdateSvg and undoSnapshot
2017-10-12 11:23:35 -04:00
DD
28464b237b
call undo
2017-10-12 11:23:35 -04:00
DD
cb34c29db6
Fix some issues with import not centering costume
2017-10-11 17:48:21 -04:00
DD
ab244a5e4c
convert getSelectedItems(recursive) to 2 functions
2017-10-11 11:32:51 -04:00
DD
60a310ae85
remove unused
2017-10-03 18:13:12 -04:00
DD
aa2b70f1e7
Add missing clearSelectedItems function to blob
2017-10-03 17:53:06 -04:00
DD
e4f1a5ad28
clean up and add comment
2017-10-03 15:17:27 -04:00
DD
720f83605d
add tests
2017-10-03 15:04:53 -04:00
DD
b87c17523a
Selection sets and gets fill/stroke color/width
2017-10-03 12:07:56 -04:00
DD
32661dde92
switch to use id instead of hovered item
2017-09-22 13:56:58 -04:00
DD
7e1375d855
Switch state to track hover item ID instead of item itself
2017-09-22 13:48:48 -04:00
DD
5db66af0a1
add comments and clean up
2017-09-22 12:12:24 -04:00
DD
4bc4d92415
Move select tool out of select mode
2017-09-21 18:39:00 -04:00
DD
f15a3dbe02
Add reshape
2017-09-21 10:36:26 -04:00
DD
b8de3dcc3a
Add reshape button
2017-09-18 11:28:43 -04:00
DD
9a09c4324d
the declarations done to avoid lint errors actually broke hover, so put them back
2017-09-14 17:53:28 -04:00
DD
67ac013edf
prune unused function and lint
2017-09-14 14:34:45 -04:00
DD
6048c9f866
hook into other tools
2017-09-13 17:58:27 -04:00
DD
9216098a3f
get rotate working
2017-09-13 16:59:37 -04:00
DD
0e91439edd
Get move working
2017-09-13 15:17:59 -04:00
DD
3126c2ca7f
correct stroke width type"
2017-09-12 17:43:53 -04:00
DD
448ff9bfe4
Add more selection files
2017-09-12 17:39:25 -04:00
DD
ef367646fb
Merge branch 'strokeWidth' into select
2017-09-11 14:01:35 -04:00
DD
4e29f31639
convert container to not a component
2017-09-11 13:54:48 -04:00
DD
9f40c633f8
Merge branch 'fillStrokeColor' into strokeWidth
2017-09-11 13:53:12 -04:00
DD
499635ddf1
convert containers to mysterious non-components
2017-09-11 13:28:35 -04:00
DD
cf75703580
In-progress add select mode
2017-09-11 10:52:00 -04:00
DD
a2cd53b159
add stroke width indicator
2017-09-08 11:52:36 -04:00
DD
e0ed034044
don't apply stroke color to brush
2017-09-08 11:41:40 -04:00
DD
6f11c5ec1c
don't apply stroke color to brush
2017-09-08 11:41:21 -04:00
DD
ce8fdaac1c
pipe through stroke color
2017-09-07 18:36:35 -04:00
DD
74ff77a38d
add stroke color to state
2017-09-07 17:59:14 -04:00
DD
1088de519f
nest fill color in a color state. Pipe fill color to brush
2017-09-07 17:49:41 -04:00
DD
9e4c510372
add fill color component
2017-09-07 17:12:50 -04:00
DD
f96c26ddbe
newlines
2017-09-06 18:10:19 -04:00
DD
4c6898657b
Bring in buffered input from GUI
2017-09-06 18:01:49 -04:00
DD
23693f3764
get rid of null check, since onUpdateSvg is required
2017-09-05 18:00:41 -04:00
DD
36016bbd11
Handle removing the viewbox and centering
2017-09-05 15:53:26 -04:00
DD
b0d29a946b
Pipe through updateSvg and call it whenever a tool finishes an action
2017-08-30 18:43:34 -04:00
DD
162bf7e335
Merge branch 'develop' into importExport
2017-08-30 14:52:47 -04:00
DD
c228a191cb
fix lint
2017-08-30 10:56:30 -04:00
DD
cf19fc556f
Merge branch 'develop' into addLine
2017-08-30 10:51:25 -04:00
DD
633ecd2399
load an svg string
2017-08-30 10:50:05 -04:00
DD
2c64c45101
fix lint errors
2017-08-29 17:24:40 -04:00
DD
dd27974d07
clean up in deactivate
2017-08-25 14:00:30 -04:00
DD
cc50a14e1d
Merge branch 'develop' into addLine
2017-08-25 13:55:19 -04:00
DD
7989387078
Merge branch 'develop' into addLine
2017-08-25 11:35:05 -04:00
a622d0d3e9
add tests
2017-08-24 17:49:22 -04:00
DD Liu
c2cae279b7
Add line mode
2017-08-23 19:01:29 -04:00
DD Liu
4c528a6ad9
Merge branch 'addButtons' into addI18n
2017-08-23 11:00:46 -04:00
DD Liu
8616e49f1a
change comment
2017-08-23 10:56:37 -04:00
DD Liu
9521203e19
move the intl stuff to playground
2017-08-22 18:22:59 -04:00
DD Liu
ac024c6c6b
make helper mouse functions have consistent interface
2017-08-22 16:39:34 -04:00
DD Liu
b40ccd46a9
make helper mouse functions have consistent interface
2017-08-22 16:29:50 -04:00
DD Liu
ff77bb6a3d
add rendered components for brush and eraser
2017-08-17 18:13:24 -04:00
DD Liu
6ede893585
Bring over new bug fixes from papergrapher
2017-08-17 16:50:30 -04:00
DD Liu
a875bee81c
move blob helper files
2017-08-17 13:53:54 -04:00
DD Liu
f325ae43ee
move isEraser to options
2017-08-17 13:40:39 -04:00
DD Liu
4ea7d154ee
Change broad brush helper and segment brush helper into their own classes, instead of adding functions to tool
2017-08-16 17:44:52 -04:00
DD Liu
33a01c1396
make modes independent of tool. Fix tests
2017-08-16 15:34:33 -04:00
DD Liu
087a6264a0
rename stuff from tool to mode so it isn't confused with paper.tool'
2017-08-15 18:11:13 -04:00
DD Liu
0c1e7ed961
some comments
2017-07-27 16:48:37 -04:00
DD Liu
dc2fea3dd6
some clean up in react code'
2017-07-27 16:41:41 -04:00
DD Liu
c7471d26ab
Merge branch 'addTool' into addEraser
2017-07-27 11:45:41 -04:00
DD Liu
a4891d22b0
code review
2017-07-27 00:34:33 -04:00
DD Liu
dc683f1d82
switch to jest
2017-07-26 20:48:35 -04:00
DD Liu
f139bfada0
fix cursor preview
2017-07-25 15:00:35 -04:00
DD Liu
02730cbd58
add eraser
2017-07-25 11:53:54 -04:00
DD Liu
014907ba98
get broad brush working
2017-07-20 22:49:05 -04:00
DD Liu
435f00b745
add state to switch tools, and keyboard shortcuts to do so
2017-07-17 18:39:50 -04:00