David Luzar
792f238d16
refactor: improve typing & check ( #5415 )
2022-07-19 15:44:04 +02:00
Aakansha Doshi
6e0ac52a64
fix: check for ctrl key when wheel event triggered to only disable zooming ( #5459 )
...
* fix: check for ctrl key when wheel event triggered to only disable zooming
* remove newline
2022-07-18 14:39:55 +05:30
David Luzar
5bc40402a6
fix: disable render throttling by default & during resize ( #5451 )
2022-07-16 11:36:55 +02:00
Aakansha Doshi
df14c69977
refactor: don't pass zenModeEnable, viewModeEnabled and toggleZenMode props to LayerUI ( #5444 )
...
refactor: don't pass zenModeEnabled and viewModeEnabled props to LayerUI
2022-07-14 16:13:10 +05:30
Aakansha Doshi
1ea67ba93d
fix: attach wheel event to exscalidraw container only ( #5443 )
2022-07-14 11:08:20 +05:30
Aakansha Doshi
a7153d9d1d
feat: update toast api to account for duration and closable ( #5427 )
...
* feat: update toast api to account for duration and closable
* fix
* update snaps
* update docs
* male toast nullable
* fix snaps
* remove clearToast from App.tsx and replace clearToast prop in Toast comp with onClose
2022-07-11 18:11:13 +05:30
Aakansha Doshi
7efa081976
fix: show toast when browser zoom is not 100% ( #5304 )
...
* fix: show toast when browser zoom is not 100%
* update threshold for detecting zoom
* Make toast permanent for browser zoom
* check if browser zoomed on mount
* retrieve toast params from function getToastParams
* Revert "retrieve toast params from function getToastParams"
This reverts commit cfca580d74c0261c3706f577db5ba7f2213cdce8.
2022-07-08 19:19:00 +05:30
Aakansha Doshi
5deb93a083
fix: prevent browser zoom inside Excalidraw ( #5426 )
...
* fix: prevent browser zoom inside Excalidraw
* prevent default only for =/-
2022-07-08 17:53:40 +05:30
David Luzar
b6bb74d08d
feat: throttle scene rendering to animation framerate ( #5422 )
2022-07-07 11:47:37 +02:00
David Luzar
50bc7e099a
fix: unable to use cmd/ctrl-delete/backspace in inputs ( #5348 )
2022-06-23 17:27:15 +02:00
Ishtiaq Bhatti
cdf352d4c3
feat: add sidebar for libraries panel ( #5274 )
...
Co-authored-by: dwelle <luzar.david@gmail.com>
Co-authored-by: Aakansha Doshi <aakansha1216@gmail.com>
2022-06-21 17:03:23 +02:00
David Luzar
4712393b62
fix: stale appState.pendingImageElement
( #5322 )
...
* fix: stale `appState.pendingImageElement`
* unrelated fix for devTools race conditions
* snap fix
2022-06-19 14:13:43 +02:00
David Luzar
fd48c2cf79
fix: non-letter shortcuts being swallowed by color picker ( #5316 )
2022-06-17 12:37:11 +02:00
Aakansha Doshi
ec35d5db51
fix: bind text to correct container when nested ( #5307 )
...
* fix: bind text to correct container when nested
* fix tests
2022-06-15 16:09:12 +05:30
David Luzar
4a9fac2d1e
fix: unsafely accessing draggingElement ( #5216 )
2022-05-20 17:48:26 +02:00
Aakansha Doshi
07ebd7c68c
feat: support setting/resetting cursor from host ( #5215 )
...
* Support setting/resetting cursor type from host
* add docs
* minor
2022-05-20 18:43:38 +05:30
Johannes
ef8559d060
fix: do not deselect when not zooming using touchscreen pinch ( #5181 )
...
* Do not deselect when zooming
* do not deselect when trackpad zooming on Safari
Co-authored-by: dwelle <luzar.david@gmail.com>
2022-05-11 23:30:50 +02:00
Johannes
33bb23d2f3
fix: wheel zoom normalization ( #5165 )
...
Co-authored-by: David Luzar <luzar.david@gmail.com>
2022-05-11 22:01:20 +02:00
David Luzar
d2cc76e52e
feat: support adding multiple library items on canvas ( #5116 )
2022-05-11 15:51:02 +02:00
David Luzar
cad6097d60
feat: factor out url library init & switch to updateLibrary
API ( #5115 )
...
Co-authored-by: Aakansha Doshi <aakansha1216@gmail.com>
2022-05-11 15:08:54 +02:00
Aakansha Doshi
68f23d652f
feat: support custom elements in @excalidraw/excalidraw ( #5164 )
...
* feat: support custom elements in @excalidraw/excalidraw
* revert
* fix css
* fix offsets
* fix overflow of custom elements in example
* fix overflow in comments input
* make sure comment input never overflows the viewport
* remove offsetschange
* expose setActiveTool
* rename to onPointerDown
* update docs
* fix
2022-05-11 13:30:15 +05:30
David Luzar
d2e687ed0a
feat: make file handling more robust ( #5057 )
2022-05-09 15:53:04 +02:00
David Luzar
a524eeb66e
fix: eraser removed deleted elements ( #5155 )
...
* fix: eraser removed deleted elements
* rename `getElements` API
* fix one more case of not including deleted elements
2022-05-07 21:01:37 +02:00
Aakansha Doshi
64d330a332
feat: support customType in activeTool ( #5144 )
...
* feat: support customType in activeTool
* fix
* rewrite types and handling
* tweaks
* fix
Co-authored-by: dwelle <luzar.david@gmail.com>
2022-05-06 18:21:22 +05:30
David Luzar
d53ac2a61e
fix: library init/import race conditions ( #5101 )
2022-04-29 16:45:02 +02:00
Aakansha Doshi
399ce1e01a
fix: don't bind text to container if double clicked else instead of center ( #5105 )
2022-04-27 17:04:21 +05:30
David Luzar
832b88249c
feat: stop event propagation when key handled ( #5091 )
...
* feat: stop event propagation when key handled
* don't handle s/g shortcuts if cmd/ctrl/alt pressed
2022-04-24 18:29:38 +02:00
Achille Lacoin
86cf28f2b4
fix: don't merge libraryItems on updateScene ( #5076 )
2022-04-21 10:54:02 +02:00
David Luzar
cd942c3e3b
feat: rewrite library state management & related refactor ( #5067 )
...
* support libraryItems promise for `updateScene()` and use `importLibrary`
* fix typing for `getLibraryItemsFromStorage()`
* remove `libraryItemsFromStorage` hack
if there was a point to it then I'm missing it, but this part will be rewritten anyway
* rewrite state handling
(temporarily removed loading states)
* add async support
* refactor and deduplicate library importing logic
* hide hints when library open
* fix snaps
* support promise in `initialData.libraryItems`
* add default to params instead
2022-04-20 14:40:03 +02:00
David Luzar
a3fbe40b26
fix: eraser cursor showing on theme change when not using eraser ( #4990 )
2022-04-17 22:47:36 +02:00
David Luzar
70b3a9de49
feat: library restoring changes ( #4995 )
...
* restore library items in all cases & refactor
* export `restoreLibraryItems` from package
* feat: rerender library menu when updating via API
* update readme & changelog
* fix changelog
2022-04-14 16:20:35 +02:00
zsviczian
bf6d0eeef7
fix: Pinch zoom in view mode ( #5001 )
2022-04-12 12:39:28 +02:00
David Luzar
58fe639b8d
fix: select whole group on righclick & few lock-related fixes ( #5022 )
2022-04-07 17:53:55 +02:00
Tom Sherman
327ed0e2d1
feat: Element locking ( #4964 )
...
Co-authored-by: dwelle <luzar.david@gmail.com>
Co-authored-by: Zsolt Viczian <viczian.zsolt@gmail.com>
2022-04-07 13:43:29 +02:00
David Luzar
77d789ed8e
fix: more copyText fixes ( #5016 )
2022-04-05 23:11:00 +02:00
Faustino Kialungila
89471094ce
fix: Copy to clipboard all text nodes as text ( #5014 )
...
* fix: Copy to clipboard all text nodes as text
* fix: support copying text even if there are selected elements that are no text
* patch: makes paragraphs betwen texts of each element
* patch: allow copying text for bound text
2022-04-05 21:48:59 +02:00
Faustino Kialungila
670ceafc84
feat: Copy to clipboard all text nodes as text ( #5013 )
...
* Copy to clipboard all text nodes as text
* fix: only show the option for text elements
2022-04-05 15:31:19 +02:00
Aakansha Doshi
2fa69ddc32
refactor: move elementLocked to activeTool.locked ( #4983 )
...
* refactor: move elementLocked to activeTool.locked
* fix
* fix snap
* update docs
* Update src/packages/excalidraw/CHANGELOG.md
* revert
* make lastActiveToolBeforeEraser required and nullable
* fix snap
2022-03-29 17:10:19 +05:30
David Luzar
f242721f3b
chore: add ga for most actions ( #4829 )
2022-03-28 14:46:40 +02:00
connorhanafee
580e719580
fix: adding check for link length to prevent early return ( #4982 )
...
Co-authored-by: Connor Hanafee <connorp@Connors-MacBook-Pro.local>
Co-authored-by: dwelle <luzar.david@gmail.com>
2022-03-27 23:50:41 +02:00
Aakansha Doshi
127af9db23
refactor: rename elementType to activeTool and make it an object ( #4968 )
...
* refactor: rename elementType to activeTool
* update docs
* fix snap
* update activeToll to be an object and review fixes
* fix tests
* fix
2022-03-25 20:46:01 +05:30
Aakansha Doshi
db28595302
fix: cancel erase elements on pointer up if eraser is not active on pointer up ( #4956 )
...
* fix: erase elements on pointer up if present
* cancel erase on pointer up if eraser is not active
2022-03-22 17:14:07 +05:30
Aakansha Doshi
cded1cd63d
fix: restore original opacities when alt pressed while erasing ( #4954 )
2022-03-22 16:40:28 +05:30
Aakansha Doshi
8e447b4c32
fix: don't bind text to container if already present ( #4946 )
...
* fix: don't bind text to container if already present
* Add specs and update condition
2022-03-22 15:32:49 +05:30
Aakansha Doshi
625ecc64ed
feat: Support binding text to container via context menu ( #4935 )
...
* feat: Support binding text to closest container
* Bind text to selected container
* show bind action in canvas and selected container after binding
* allow binding if container has no bound text
* fix
* move logic to show/hide bind actions to contextMenuPredicate
* don't show bind action when clicking on bounding box and not elemnts
2022-03-21 17:54:54 +05:30
Aakansha Doshi
ceb43ed8fb
fix: erase all elements which are hit with single point click ( #4934 )
2022-03-17 21:03:59 +05:30
zsviczian
192debd829
fix: Add multiElement-edit finalize action to Desktop (currently only visible in Mobile view) ( #4764 )
...
* add finalize action to Desktop UI
* Update LayerUI.tsx
* add size to panel component
* finzalize button style
* add finalize button
* changed isMobile to DeviceInfo, added isTouchScreen
* cleanup
* rename deviceInfo to deviceType
* rename deviceInfo to deviceType
* added updateObject
* Update App.tsx
2022-03-16 15:59:30 +01:00
Aakansha Doshi
558227f744
feat: update eraser cursor ( #4922 )
...
* feat: update eraser cursor
* fix dark theme
* check before adding active class
* use custom cursor instead of DOM manipulation
* cache canvas and redraw only when theme changes
* use oc colors
* remove
* cache preview data url
* increase linwidth
* update coords for cursor
* add white 2px outline
* improvements
* use 1px line width 6px radius for outer
* improve
2022-03-15 20:56:39 +05:30
Aakansha Doshi
6d45430344
fix: undo when erasing elements by clicking ( #4921 )
...
* fix: undo when erasing elements by clicking
* newline remove
2022-03-14 14:59:55 +05:30
Aakansha Doshi
e92d133973
fix: undo when erasing ( #4900 )
2022-03-11 20:44:17 +05:30