connorhanafee
5fabc57277
fix: view mode cursor adjustments ( #3809 )
2021-07-10 00:00:13 +02:00
Aakansha Doshi
6dee02e320
feat: expose fontfamily and refactor FONT_FAMILY ( #3710 )
...
* feat: expose fontfamily and refactor FONT_FAMILY for better readability
* fix
* fix
* fix
* docs
* fix
2021-06-13 21:26:55 +05:30
David Laban
abfc58eb24
feat: save exportScale in AppState ( #3580 )
...
Co-authored-by: David Luzar <luzar.david@gmail.com>
Co-authored-by: dwelle <luzar.david@gmail.com>
2021-05-30 16:31:12 +02:00
Aakansha Doshi
360310de31
feat: Add prop UIOptions.canvasActions.saveAsImage to show/hide save image button ( #3662 )
...
* feat: Add prop UIOptions.canvasActions.saveAsImage which implies whether the save as image dialog should be shown
* Add docs
* fix specs
2021-05-29 19:41:50 +05:30
Aakansha Doshi
ba48974351
feat: customise export dialog with UIOptions.canvasActions.export prop ( #3658 )
...
* refactor: update UIOptions.canvasActions.export to be a an object
* fix
* fix
* dnt show export icon when false
* fix
* inline
* memoize UIOptions
* update docs
* fix
* tweak readme
Co-authored-by: David Luzar <luzar.david@gmail.com>
2021-05-29 02:56:25 +05:30
Aakansha Doshi
bc0b6e1888
refactor: rename UIOptions.canvasActions.saveScene to UIOptions.canvasActions.saveToActiveFile ( #3657 )
...
* refactor rename action saveScene to saveFileToDisk
* docs
* fix
* fix
2021-05-28 02:10:33 +05:30
Preet
07839f8d20
perf: Reduce SVG export size by more than half by reducing precision to 2 decimal places ( #3567 )
...
* render svg with a specified precision
* moved precision to a constant
* fix test case to use rounded values
2021-05-11 19:35:35 -07:00
David Luzar
a7cbe68ae8
refactor: improve types around dataState and libraryData ( #3427 )
2021-04-10 19:17:49 +02:00
Aakansha Doshi
c19c8ecd27
feat: Add scroll listener to the nearest scrollable container and allow consumer to disable it ( #3408 )
...
* fix: Add scroll listener to the nearest scrollable container
* fix
* use loop instead of recursion
* fix
* return document
* calculate nearest scrollable container in settimeout to unblock main thread
* Add prop detectNearestScroll and clear timeout on unmount
* disable scroll listener on excal app
* update prop name to detectScroll
* update docs
* remove settimeout
* tweak docs
Co-authored-by: David Luzar <luzar.david@gmail.com>
* tweak changelog
Co-authored-by: David Luzar <luzar.david@gmail.com>
* lint
Co-authored-by: David Luzar <luzar.david@gmail.com>
2021-04-09 20:44:54 +05:30
David Luzar
09dfd16b17
feat: use component dimensions to break to mobile ( #3414 )
...
Co-authored-by: Jed Fox <git@jedfox.com>
2021-04-08 19:54:50 +02:00
Arun
233576628c
feat: Support customising canvas actions 🎉 ( #3364 )
...
* feat: Support hiding save, save as, clear & export
* Remove canvasActions from state & minor changes
* Rename prop to UIOptions & pass default value
* Make requested changes
* better type checking so that optional check not needed at every point
* remove optional checks
* Add few tests
* Add describe block for canvasActions & use snapshot tests
* Add support for hiding canvas background picker
* Take snapshot of canvasActions instead of the whole app
* Add support for hiding dark mode toggle
* Update README.md
* Rename table heading
* Update changelog
* Make requested changes
* Update test name
* tweaks
Co-authored-by: Aakansha Doshi <aakansha1216@gmail.com>
2021-04-04 15:57:14 +05:30
David Luzar
cf9e29834d
feat: prefer hash when importing libraries & expose importLibrary ( #3320 )
2021-03-26 18:10:43 +01:00
David Luzar
94ad8eaa19
feat: support pasting file contents & always prefer system clip ( #3257 )
2021-03-20 20:20:47 +01:00
Aakansha Doshi
f1daff2437
refactor: Rename appearance to theme ( #3237 )
...
* refactor: Rename appearance to theme
* fix
* update changelog
* rename theme_dark to theme--dark
* add about migration
2021-03-13 18:58:06 +05:30
Aakansha Doshi
07e71a8071
fix: Reduce the scroll debounce timeout to 100ms and update only if offset changes ( #3182 )
...
* fix: Reduce the scroll debounce timeout to 100ms so offsets get updated faster when the container scrolled
fixes https://github.com/excalidraw/excalidraw/issues/3175
* update changelog
* update offsets only when if it changes
* up
* Update src/components/App.tsx
Co-authored-by: David Luzar <luzar.david@gmail.com>
2021-03-06 19:06:42 +05:30
Arun
4e421e6e9e
feat: Support exporting with dark mode ( #3046 )
...
Co-authored-by: Lipis <lipiridis@gmail.com>
Co-authored-by: dwelle <luzar.david@gmail.com>
2021-02-24 15:22:17 +01:00
David Luzar
e6cd97c4f2
feat: adjust line-confirm-threshold based on zoom ( #2884 )
...
Co-authored-by: Lipis <lipiridis@gmail.com>
2021-02-14 14:43:23 +01:00
Aakansha Doshi
830fb64a25
fix: Support Excalidraw inside scrollable container ( #3018 )
...
* refactor: remove position fixed from excalidraw container, modal and stats
* remove unused css
* remove position fixed from toast and scroll to content
* Make excal interactable by fixing offsets and set popover as fixed since position needs to be calculate from viewport top
* Assign 200px less than height of Excalidraw to the selected shapes actions o UI doesn't overflow
* update changelog, readme and package.json
2021-02-14 18:18:34 +05:30
Aakansha Doshi
b5fc8757a4
fix: allow to toggle between modes when view only mode to make UI consistent ( #3009 )
2021-02-12 10:40:40 +02:00
Thomas Steiner
1837147c55
feat: Add idle detection to collaboration feature ( #2877 )
...
* Start idle detection implementation
* First working version
* Add screen state
* Add type safety
* Better rendering, enum types, localization
* Add origin trial token
* Fix
* Refactor idle detection to no longer use IdleDetector API
* Cleanup some leftovers
* Fix
* Apply suggestions from code review
* Three state: active 🟢 , idle 💤 , away ⚫ ️
* Address feedback from code review
Thanks, @lipis
* Deal with unmount
Co-authored-by: Panayiotis Lipiridis <lipiridis@gmail.com>
2021-02-04 11:55:43 +01:00
David Luzar
10cd6a24b0
feat: increase max zoom ( #2881 )
2021-01-30 18:03:23 +01:00
Lipis
b1c8c538ee
fix: Change the timeout for reporting the version to 30s ( #2858 )
2021-01-26 22:22:41 +02:00
Lipis
c799b28a0e
fix: Count all versions ( #2798 )
2021-01-16 18:59:26 +01:00
Arun
543c624405
feat: Add toast ( #2772 )
...
Co-authored-by: Lipis <lipiridis@gmail.com>
Co-authored-by: dwelle <luzar.david@gmail.com>
2021-01-15 16:02:46 +01:00
Lipis
001880ba88
feat: Track current version ( #2731 )
2021-01-10 20:48:12 +02:00
Lipis
6adb45ef5a
feat: Change title to Excalidraw after a timeout ( #2656 )
...
* feat: Change title to Excalidraw after a timeout
* clear timeout
2020-12-22 10:34:06 +01:00
Aakansha Doshi
e617ccc252
Factor out collaboration code ( #2313 )
...
Co-authored-by: Lipis <lipiridis@gmail.com>
Co-authored-by: dwelle <luzar.david@gmail.com>
2020-12-05 15:30:53 +01:00
David Luzar
ba3f548b91
Fix library dnd ( #2314 )
2020-10-30 21:01:41 +01:00
David Luzar
5950fa9a40
support embedding scene data to PNG/SVG ( #2219 )
...
Co-authored-by: Lipis <lipiridis@gmail.com>
2020-10-13 14:47:07 +02:00
João Forja
e7d186b439
Fix drag multiple elements bug ( #2023 )
...
Co-authored-by: dwelle <luzar.david@gmail.com>
2020-08-26 18:37:44 +02:00
Herb Caudill
29f803e25d
Fix display of some emoji on Windows ( #1933 )
2020-07-19 21:14:45 +02:00
David Luzar
7ab0c1aba8
reload scene on hashchange ( #1893 )
...
* reload scene on hashchange
* tweak isLoading
2020-07-09 22:16:28 -07:00
David Luzar
d5e7d08586
prompt when loading external scene before overriding local one ( #1862 )
2020-07-08 22:55:26 +02:00
David Luzar
cd87bd6901
do not center text when not applicable ( #1783 )
2020-06-25 21:21:27 +02:00
Daishi Kato
baa8fb6c14
grid support (1st iteration) ( #1788 )
...
Co-authored-by: dwelle <luzar.david@gmail.com>
2020-06-23 17:24:52 +02:00
Steven Nguyen
fd75b88bd3
Double finger zoom should not select things ( #1333 )
2020-06-02 19:41:40 +03:00
Aakansha Doshi
17e9cc4506
Some cleanup in App.tsx ( #1681 )
2020-05-30 15:26:17 +02:00
David Luzar
63c10743fb
split font into fontSize and fontFamily ( #1635 )
2020-05-27 15:14:50 +02:00
Daishi Kato
51608c07b0
15-degree rotation locking ( #1627 )
2020-05-23 10:45:05 +02:00
Thomas Steiner
ad81033a78
Prompt for reload when new service worker is available ( #1588 )
2020-05-13 19:19:49 +02:00
David Luzar
6771b505ad
rewrite wysiwyg property updating ( #1387 )
...
* rewrite wysiwyg property updating
* reuse existing class
* fix case of focus being stolen by other UIs
* revert mistake csp removal
* ensure we don't run cleanup twice
* fix opacity updating
* add shape actions menu class to constants
2020-04-12 15:57:57 +02:00
Aakansha Doshi
227ff60909
refactor(app.tsx): move Portal to new file and some refactoring ( #1398 )
2020-04-12 12:54:52 +02:00
Aakansha Doshi
e98fba38be
refactor(app.tsx): use constants instead of hard coded strings for better readablility ( #1391 )
...
don't use inline function as it will create a new refrence everytime
2020-04-11 17:42:02 -07:00
Preet
57bbc9fe55
Fill a looped curve with the selected background color ( #1315 )
2020-04-09 11:46:47 +03:00
José Quinto
030954badb
shift locking 22.5 degree and move to constants ( #1216 )
...
* shift locking 22.5 degree and move to constants #1171
* review SHIFT_LOCKING_ANGLE
2020-04-04 14:55:22 +03:00
David Luzar
b7da524538
confirm arrow on doubleclick ( #949 )
...
* confirm arrow on double click
* change hint
* fix cursor not updating on click
2020-03-18 16:43:06 +01:00
Jed Fox
c6a0cfc2b1
Refactor ( #862 )
...
* Initial factoring out of parts of the LayerUI component
2360 → 2224 LOC
* Create a Section component
* Break up src/index.tsx
* Refactor actions to reduce duplication, fix CSS
Also consolidate icons
* Move scene/data.ts to its own directory
* Fix accidental reverts, banish further single-character variables
* ACTIVE_ELEM_COLOR → ACTIVE_ELEMENT_COLOR
* Further refactoring the icons file
* Log all errors
* Pointer Event polyfill to make the tests work
* add test hooks & fix tests
Co-authored-by: dwelle <luzar.david@gmail.com>
2020-03-07 16:20:38 +01:00