d9e8a33aa4
feat(editor): implement overlap box selection ( #11053 )
...
Co-authored-by: Mark Tolmacs <mark@lazycat.hu >
2026-04-01 18:41:11 +02:00
David Luzar and GitHub
4a5c9e990c
fix(editor): ensure font picker font names are not quoted ( #11036 )
2026-03-25 17:56:48 +01:00
c09e170bdd
feat(editor): deselect on esc ( #11035 )
...
Co-authored-by: Jawahar <jawahars_16@live.in >
Co-authored-by: Andrew Aquino <dawneraq@gmail.com >
2026-03-25 17:14:24 +01:00
David Luzar and GitHub
c1082923ee
feat(editor): support mermaid staate diagrams ( #11031 )
2026-03-24 20:20:28 +01:00
David Luzar and GitHub
a9ca16eb42
chore(packages/excalidraw): export Fonts helper class ( #11008 )
2026-03-21 22:44:27 +01:00
David Luzar and GitHub
81ab857a6f
feat(editor): various text related improvements ( #10979 )
2026-03-19 16:00:58 +01:00
David Luzar and GitHub
e8b4620a96
feat(editor): put caret at pointer coords when clicking on selected text element ( #10970 )
2026-03-18 19:14:44 +01:00
David Luzar and GitHub
2b0e4c9623
fix(editor): remove leftover debug code path ( #10954 )
2026-03-14 13:12:48 +01:00
David Luzar and GitHub
c9ba7f839c
chore(editor): bump @excalidraw/mermaid-to-excalidraw@2.1.1 ( #10944 )
2026-03-12 17:32:13 +01:00
David Luzar and GitHub
b4ce7c713b
fix(editor): arrowhead picker overflowing viewport ( #10943 )
2026-03-12 16:08:46 +01:00
David Luzar and GitHub
816c81c12e
feat(editor): ERD arrowheads and diagrams ( #10940 )
2026-03-11 22:00:31 +01:00
David Luzar and GitHub
92d25446d6
feat(packages/excalidraw): tweak and expose more API around state and lifecycle ( #10939 )
2026-03-11 16:51:03 +01:00
David Luzar and GitHub
e73a5b0116
docs(packages/excalidraw): improve readme ( #10932 )
2026-03-11 09:49:12 +01:00
David Luzar and GitHub
21dd1cfacc
feat(packages/excalidraw): state tracking, api hook, and others ( #10870 )
2026-03-08 23:15:18 +01:00
David Luzar and GitHub
fa1f7d9f22
feat(packages/excalidraw): export throttleRAF ( #10912 )
2026-03-07 12:05:33 +01:00
David Luzar and GitHub
3d8c12fba4
fix(editor): do not conditionally disable midpoint snapping menu preference ( #10906 )
2026-03-06 20:44:57 +01:00
757dfeb6ad
fix(editor): call throttleRAF with lastArgs and remove trailing ( #10905 )
...
Co-authored-by: Varun Chawla <varun_6april@hotmail.com >
Co-authored-by: aziamimoh <aziamimoh@users.noreply.github.com >
Co-authored-by: pgzcoa <pgzcoa@users.noreply.github.com >
Co-authored-by: TinaZhang24 <TinaZhang24@users.noreply.github.com >
2026-03-06 20:40:36 +01:00
David Luzar and GitHub
a0e93b6040
feat(editor): sync export theme with ui theme ( #10903 )
2026-03-06 18:37:28 +01:00
David Luzar and GitHub
c1dbbdf678
feat(editor): mermaid code editor & improve parsing ( #10897 )
2026-03-05 18:52:41 +01:00
David Luzar and GitHub
47c254216b
fix(editor): disable snap-to-midpoint menu item when arrow-binding disabled ( #10885 )
2026-03-04 16:48:33 +01:00
David Luzar and GitHub
60b275880d
feat(editor): support radar chart and multiple series for other chart types ( #10824 )
2026-02-26 16:13:15 +01:00
David Luzar and GitHub
2874f9e48c
fix(editor): simplify and fix midpoint highlighting ( #10832 )
2026-02-24 21:11:46 +01:00
David Luzar and GitHub
b0404b10b6
chore(debug): add debug.logChanged() and make easy to import ( #10828 )
2026-02-23 20:20:37 +01:00
David Luzar and GitHub
eb959128ac
feat(editor): allow laser-pointing in view mode ( #10802 )
...
* feat(editor): allow laser pointing in view mode
* feat: allow switching between laser/hand in view mode
* fix lint
* factor out to utils
* fix: only handle primary clicks with the selection/laser tools
2026-02-20 22:49:46 +01:00
4c3d037f9c
feat(editor): allow clicking on links and embeds with laser tool ( #10797 )
...
Co-authored-by: Anvi <anvikudaraya417@gmail.com >
Co-authored-by: Chris Tangonan <ctangonan123@gmail.com >
2026-02-19 11:45:01 +01:00
David Luzar and GitHub
46ddd60948
feat(editor): support embedding google drive videos ( #10788 )
2026-02-16 22:19:11 +01:00
David Luzar and GitHub
3a5ef4020d
feat(app): add preferences to main menu ( #10760 )
...
feat(editor): add preferences to main menu
2026-02-08 23:30:45 +01:00
063533aede
feat(packages/excalidraw): support nested dropdown menu ( #10749 )
...
Co-authored-by: Barnabás Molnár <38168628+barnabasmolnar@users.noreply.github.com >
2026-02-08 22:27:34 +01:00
David Luzar and GitHub
83d3943cd0
feat(editor): reduce binding gap ( #10739 )
...
* feat(editor): reduce binding gap to 7px
* feat(editor): reduce binding gap to 5px
* feat(editor): reduce binding gap to 3px
* go back to 5px
* update tests
2026-02-05 12:00:56 +01:00
David Luzar and GitHub
54a9826817
fix(editor): copying to clipboard with no ClipboardEvent ( #10729 )
...
* fix(editor): copying to clipboard with no ClipboardEvent
* fix(editor): use green for `success` state of `FilledButton`
2026-02-01 11:06:37 +01:00
David Luzar and GitHub
d29fd62e41
fix(editor): crop editor cursor drift ( #10727 )
...
* fix(editor): do not scale cropping editor pointer offsets
* fix lint
* fix more lint
* fix drift related to image canvas scale
2026-02-01 10:45:04 +01:00
David Luzar and GitHub
b57f3e0096
fix(editor): image positioning in crop editor ( #10726 )
2026-02-01 09:21:30 +01:00
David Luzar and GitHub
f7b537a8b1
feat(packages/excalidraw): export CommandPalette ( #10724 )
...
feat: export CommandPalette
2026-01-31 20:24:20 +01:00
David Luzar and GitHub
802cde3501
feat: support customizing TTD welcome screen ( #10719 )
...
* feat: support customizing TTD welcome screen
* remove debug
2026-01-30 16:28:36 +01:00
f5cf81ce42
feat: prevent pasting excalidraw into textarea & paste element text if avail ( #10710 )
...
* feat: prevent pasting excalidraw json into textarea & paste element text if avail
Co-authored-by: Ashutosh Kumar <130897584+codeaashu@users.noreply.github.com >
* fix FF
---------
Co-authored-by: Ashutosh Kumar <130897584+codeaashu@users.noreply.github.com >
2026-01-28 22:35:39 +01:00
David Luzar and GitHub
6135548534
fix: rerender TTD preview on message remove ( #10681 )
2026-01-21 14:07:48 +01:00
David Luzar and GitHub
acf54c6f38
fix: dropdownMenu item badge position ( #10682 )
2026-01-21 14:07:36 +01:00
David Luzar and GitHub
84a309d669
fix: ttd 429 error handling ( #10680 )
2026-01-21 14:07:23 +01:00
David Luzar and GitHub
3c8e893cab
fix: keep input focus during generation ( #10679 )
2026-01-20 20:14:28 +01:00
David Luzar and GitHub
60ab14c2f6
fix: fail gracefully during restore ( #10673 )
...
* fix: fail gracefully during restore
* tests
2026-01-20 12:33:22 +01:00
David Luzar and GitHub
1f47d61e8c
chore: bump node in tests.yml ( #10670 )
2026-01-19 09:23:50 +01:00
David Luzar and GitHub
9d760336d1
feat: reduce max tablet MQ size ( #10669 )
...
* feat: reduce max tablet MQ size
* replace UIOptions.formFactor with getFormFactor
2026-01-18 21:55:14 +01:00
David Luzar and GitHub
0443511954
fix: tweak error display in ttd ( #10668 )
...
fix: better error handling for ttd
2026-01-17 18:17:04 +01:00
David Luzar and GitHub
5a73b9a363
refactor: change TTD persistence to iDB ( #10662 )
...
refactor: change ttd persistence to iDB
2026-01-16 15:10:00 +01:00
David Luzar and GitHub
24a6941861
fix: retries and related UX fixes ( #10657 )
...
* fix: retries and related UX fixes
* bump
* fix package version
* yarn.lock
* naming and clearer type
* ignore test flake
2026-01-16 09:52:18 +01:00
David Luzar and GitHub
b9a255407f
refactor: update SCSS syntax & remove open-color dep ( #10633 )
2026-01-10 18:15:14 +01:00
David Luzar and GitHub
cc6c29c0b9
fix: update wysiwyg color on theme change ( #10618 )
2026-01-07 12:55:33 +01:00
David Luzar and GitHub
87faa5d3da
fix: sentry CI worfklow ( #10610 )
2026-01-06 11:39:45 +01:00
David Luzar and GitHub
c158187f20
fix: grid color in dark mode ( #10600 )
2026-01-04 17:51:53 +01:00
David Luzar and GitHub
63e1148280
feat: stop using CSS filters for dark mode (static canvas) ( #10578 )
...
* feat: stop using CSS filters for dark mode (static canvas)
* fix comment
* remove conditional dark mode export
* make shape cache theme-aware
* refactor
* refactor
* fixes and notes
2026-01-04 15:16:35 +01:00
David Luzar and GitHub
6c908553a9
fix: reconciliation of server updates & refactor restore ( #10597 )
2026-01-04 15:13:38 +01:00
David Luzar and GitHub
becaabfa0f
chore: bump node@20 in ci workflows ( #10531 )
2025-12-16 19:08:42 +01:00
David Luzar and GitHub
d080833f4d
chore: bump typescript@5.9.3 ( #10431 )
2025-12-01 22:37:42 +01:00
David Luzar and GitHub
210dc85c8c
fix: do not finalize multi-point lines if binding not enabled ( #10410 )
...
* fix: do not finalize multi-point lines if binding not enabled
* refactor
2025-11-26 21:02:36 +01:00
David Luzar and GitHub
b660478164
fix: prevent translation of excalidraw container ( #10389 )
2025-11-22 16:16:30 +01:00
David Luzar and GitHub
7f66e1fe89
fix: banner url ( #10315 )
2025-11-11 11:29:44 +01:00
David Luzar and GitHub
f2600fe3e8
fix: close floating sidebar on main menu open ( #10295 )
2025-11-06 22:39:39 +01:00
David Luzar and GitHub
5bcd8280c9
feat: add comments/presi eplus promos for discoveribility ( #10294 )
2025-11-06 21:35:14 +01:00
David Luzar and GitHub
4e0441eeb4
fix: small tweaks to shortcut hints ( #10214 )
2025-10-20 16:57:40 +02:00
David Luzar and GitHub
5fffc4743f
fix: mobile UI and other fixes ( #10177 )
...
* remove legacy openMenu=shape state and unused actions
* close menus/popups in applicable cases when opening a different one
* split ui z-indexes to account prefer different overlap
* make top canvas area clickable on mobile
* make mobile main menu closable by clicking outside and reduce width
* offset picker popups from viewport border on mobile
* reduce items gap in mobile main menu
* show top picks for canvas bg colors in all ui modes
* fix menu separator visibility on mobile
* fix command palette items not being filtered
2025-10-14 16:34:49 +02:00
David Luzar and GitHub
8608d7b2e0
fix: revert preferred selection to box once you switch to full UI ( #10160 )
2025-10-12 23:33:02 +02:00
David Luzar and GitHub
9fcbbe0d27
fix: library search UI fixes/tweaks ( #10032 )
...
* fix library icon height in command palette
* add clear button when no results
2025-09-29 12:06:17 +02:00
David Luzar and GitHub
a8acc8212d
feat: better file normalization ( #10024 )
...
* feat: better file normalization
* fix lint
* fix png detection
* optimize
* fix type
2025-09-25 22:26:58 +02:00
David Luzar and GitHub
f738b74791
fix: reintroduce height-based mobile query detection ( #10020 )
2025-09-24 18:17:39 +02:00
David Luzar and GitHub
a6a32b9b29
fix: align MQ breakpoints and always use editor dimensions ( #9991 )
...
* fix: align MQ breakpoints and always use editor dimensions
* naming
* update snapshots
2025-09-17 07:57:10 +00:00
David Luzar and GitHub
414182f599
fix: normalize file on paste/drop ( #9959 )
2025-09-10 17:59:02 +02:00
David Luzar and GitHub
b9d27d308e
fix: pasting not working in firefox ( #9947 )
2025-09-06 22:51:23 +02:00
531f3e5524
fix: restore from invalid fixedSegments & type-safer point updates ( #9899 )
...
* fix: restore from invalid fixedSegments & type-safer point updates
* fix: Type updates and throw for invalid point states
---------
Co-authored-by: Mark Tolmacs <mark@lazycat.hu >
2025-08-22 15:45:58 +00:00
David Luzar and GitHub
90ec2739ae
fix: calling toLowerCase on potentially undefined navigator.* values ( #9901 )
2025-08-22 17:37:16 +02:00
David Luzar and GitHub
f29e9df72d
chore: bump mermaid-to-excalidraw to 1.1.3 ( #9898 )
2025-08-21 20:58:04 +02:00
David Luzar and GitHub
c78e4aab7f
chore: tweak title & remove timeout ( #9883 )
2025-08-20 14:09:20 +02:00
David Luzar and GitHub
dda3affcb0
fix: do not strip invisible elements from array ( #9844 )
2025-08-12 11:56:11 +02:00
David Luzar and GitHub
a3763648fe
chore: update title ( #9814 )
...
* chore: update title
* update meta tag
* lint
2025-08-01 17:17:42 +02:00
David Luzar and GitHub
678dff25ed
fix: ellipsify MainMenu and CommandPalette items ( #9743 )
...
* fix: ellipsify MainMenu and CommandPalette items
* fix lint
2025-07-15 12:59:55 +02:00
David Luzar and GitHub
cde46793f8
feat: support timestamps for youtube video emebds ( #9737 )
2025-07-13 19:19:10 +02:00
David Luzar and GitHub
d4e85a9480
feat: use enter to edit line points & update hints ( #9630 )
...
feat: use enter to edit line points & update hints
2025-06-07 18:05:20 +02:00
David Luzar and GitHub
08cd4c4f9a
test: improve getTextEditor test helper ( #9629 )
...
* test: improve getTextEditor test helper
* fix test
2025-06-07 17:45:37 +02:00
David Luzar and GitHub
fc3e062074
feat: do not break polygon on point delete inside line editor ( #9580 )
...
* feat: do not break polygon on point delete inside line editor
* fix: polygon point highlighting when selected point == 0
2025-05-26 16:51:47 +02:00
cc571c4681
chore: init CLAUDE.md ( #9563 )
...
* chore: init CLAUDE.md
* Add Copilot instructions
* update gitignore
* simplify
---------
Co-authored-by: Mark Tolmacs <mark@lazycat.hu >
2025-05-25 21:23:40 +02:00
David Luzar and GitHub
95d89a751a
refactor: decouple radio button selection from .buttonList wrapper ( #9528 )
...
* refactor: decouple radio button selection from `.buttonList`
* fix
2025-05-15 13:22:26 +02:00
David Luzar and GitHub
0a534f1bc6
fix: never show snap lines when lasso tool active ( #9523 )
2025-05-14 22:04:40 +10:00
David Luzar and GitHub
298812e1d0
fix: improve ctrl+alt lasso selecting ( #9514 )
2025-05-12 18:09:37 +02:00
David Luzar and GitHub
c4c064982f
feat: show empty active color if no common color ( #9506 )
2025-05-11 15:07:57 +02:00
David Luzar and GitHub
51dbd4831b
refactor: make element type conversion more generic ( #9504 )
...
* feat: add `reduceToCommonValue()` & improve opacity slider
* feat: generalize and simplify type conversion cache
* refactor: change cache from atoms to Map
* feat: always attempt to reuse original fontSize when converting generic types
2025-05-10 20:06:16 +02:00
David Luzar and GitHub
ff2ed5d26a
refactor: change movePoints pointUpdates type ( #9499 )
2025-05-08 16:47:13 +02:00
David Luzar and GitHub
a7c61319dd
fix: do not translate bound elements twice ( #9486 )
2025-05-06 13:09:00 +02:00
David Luzar and GitHub
4a60fe3d22
fix: remove noreferrer on internal links ( #9452 )
...
* fix: remove `noreferrer` on internal links
* fix snaps
* fix lint
2025-04-29 18:45:17 +02:00
David Luzar and GitHub
8fb2f70414
fix: scrollbar rendering and improve dragging ( #9417 )
...
* fix: scrollbar rendering and improve dragging
* tweak offsets
2025-04-20 12:28:41 +02:00
David Luzar and GitHub
b5d60973b7
fix: duplication tests pointer state leaking between tests ( #9414 )
...
* fix: duplication tests pointer state leaking between tests
* fix snapshots
2025-04-18 11:11:12 +02:00
David Luzar and GitHub
a5d6939826
fix: keep orig elem in place on alt-duplication ( #9403 )
...
* fix: keep orig elem in place on alt-duplication
* clarify comment
* fix: incorrect selection on duplicating labeled containers
* fix: duplicating within group outside frame should remove from group
2025-04-17 16:08:07 +02:00
David Luzar and GitHub
0cf36d6b30
fix: erasing locked elements ( #9400 )
...
* fix: erasing locked elements
* signature tweaks
2025-04-16 10:28:56 +02:00
c2caf78e95
fix: deselected hit element being duplicated + incorrect re-seeding ( #9333 )
...
* fix: deselected hit element being duplicated + incorrect re-seeding
* snapshots
* Fix alt-drag binding
Signed-off-by: Mark Tolmacs <mark@lazycat.hu >
* Add alt-drag bound arrow test
Signed-off-by: Mark Tolmacs <mark@lazycat.hu >
---------
Signed-off-by: Mark Tolmacs <mark@lazycat.hu >
Co-authored-by: Mark Tolmacs <mark@lazycat.hu >
2025-04-07 10:41:31 +02:00
David Luzar and GitHub
57a9e301d4
feat: tweak color swatch, and button bgs ( #9330 )
...
* feat: tweak color swatch, and button bgs
* snapshots
2025-04-02 14:36:13 +02:00
David Luzar and GitHub
7c58477382
feat: tweak properties panel styling ( #9322 )
2025-03-30 19:20:13 +02:00
David Luzar and GitHub
83fac6d0db
feat: tweak stats panel input styles ( #9321 )
2025-03-30 19:00:31 +02:00
David Luzar and GitHub
f2e8404c7b
feat: allow to disable preventUnload in dev ( #9319 )
...
* feat: allow to disable preventUnload in dev
* add template
2025-03-29 19:42:33 +01:00
David Luzar and GitHub
d797c2e210
fix: strip legacy attrs on element restore ( #9318 )
2025-03-29 19:31:16 +01:00
David Luzar and GitHub
99d8bff175
fix: elements offset incorrectly when action-duplicated during drag ( #9275 )
...
* fix: elements offset incorrectly when action-duplicated during drag
* prevent duplicate action during drag altogether
2025-03-15 20:05:42 +01:00
David Luzar and GitHub
70c3e921bb
fix: package env vars ( #9221 )
2025-03-04 21:45:48 +01:00
David Luzar and GitHub
d92384b77d
revert: vite@6 -> vite@5 ( #9220 )
2025-03-04 17:45:52 +00:00