When using an iPad with an apple stylus, finger touches now trigger the whiteout tool.
This behavior can be disabled by setting the environment variable AUTO_FINGER_WHITEOUT=disabled
* Auto white-out with a finger when using stylus
* Add AUTO_FINGER_WHITEOUT config variable
* Use local variable to remember if stylus was used and make behavior configurable
* Delete "stylus" property
* Make AUTO_FINGER_WHITEOUT on by default
Co-authored-by: Ophir LOJKINE <pere.jobs@gmail.com>
* Delete parseBool, add note about iPad/Pencil
Co-authored-by: ishabalin <ishabalin@apple.com>
Co-authored-by: Ophir LOJKINE <pere.jobs@gmail.com>
* add option to block tools
* use tool name instead of computing an id
Co-authored-by: Ophir LOJKINE <ophir.lojkine@auto-grid.com>
* require comma separated list as input of blocked tools environment variable
Co-authored-by: Ophir LOJKINE <ophir.lojkine@auto-grid.com>
* Log attempts to use blocked tools
Co-authored-by: Ophir LOJKINE <ophir.lojkine@auto-grid.com>
* fix syntax
* require tool names to not have a comma in them
* Update server/configuration.js
Co-authored-by: Ophir LOJKINE <pere.jobs@gmail.com>
* Added cursors
* Prepare cursor code for future settings to toggle cursors on or off.
Let cursor be the color the person has currently selected
* fix cursor on mobile (still won't display it in most cases as there is no hover on mobile but at least it won't throw errors)
* use correct size for cursor
* throttle cursor update rate to dramatically improve performance by eliminating congestion
* fix remote cursor size on desktop
* show own cursor by default and renove offset
* use svg as mouse cursor for pencil to be able to apply a reduced opacity to it and view our cursor
* don't throttle local cursor
* throttle local cursor at an independent higher rate. This could be made user adjustable for low power devices
* remove let and const from client-side code
* get emit count and emit count period from configuration
* reduce network cursor updates a lot to prevent instantly getting banned with the current defaults
* prevent eraser from deleting cursors
* use group inside of svg as drawing area and only delete elements inside it with the eraser
* use transform: translate to move cursors around instead of manipulating x and y directly
* fix: add socket ids to cursor messages
* fix incorrect remote cursor scaling and make local cursor visible again after it has been moved after being hidden due to inactivity
* create cursors in a proper fashion and keep them in a separate group
* scaling has been fixed in a1a5580
* move duplicated cursor creation code to function
* show cursors above content
* pass some of ther server configuration through to the client
* fix bug introduced in a833ce9
* allocate at most half of the allowed traffic to cursor updates
* remove debugging leftover
* use feature detection instead of ua sniffing
Co-Authored-By: Ophir LOJKINE <ophir.lojkine@auto-grid.com>
* fix regression where local cursor color was not updated on color change
* Define the cursor as a tool
* Remove the cursor tool from the UI
* Throttle remote cursor updates, not local ones
* Do not increment notification count on cursor move
* Use only one pencil icon
Use the same image for the pencil icon in the menu
and the pencil cursor that appears while drawing
* Add a test for the new cursor feature
* only stop drawing remote cursor when using some tools and always draw local cursor
* increase idle period before hiding cursor
* change idle duration back and set whether a cursor should be sent when using a tool in the respective tool
Co-authored-by: Robert Beach <rdbeach@gmail.com>
Co-authored-by: Ophir LOJKINE <ophir.lojkine@auto-grid.com>
Co-authored-by: ophir <pere.jobs@gmail.com>