This file describes significant changes to Cocreate to an audience of both everyday users and administrators running their own Cocreate server. To see every change with descriptions aimed at developers, see the Git log. As a continuously updated web app, Cocreate uses dates instead of version numbers.
- Fix text editing tool when text object is deleted (by user or someone else)
- Improve SVG export font embedding
- Include
unicode-range
, which otherwise caused issues when embedding in Firefox. This makes exported files slightly bigger. - Include CSS rules only for needed fonts and unicode-ranges. This makes typical exported files smaller.
- Include
- Fix PDF export with certain mathematical expressions, e.g.,
$\log_2 n$
.
- Light/dark mode now initializes to the user's preference according to the browser/OS. (Previously it defaulted to light.)
- Fix zero-length arrows, in particular fixing crash on Firefox
- Fix arrowheads getting clipped when downloading SVG/PDF, and rectangular selection of arrowheads. [#225]
- Fix dragging multiple anchors of a polyline object [#226]
- New polygonal line tool! [#35]
- Reduce zoom speed via Ctrl + mouse wheel by 4x
- Fix PDF export of LaTeX text and arrows
- Anchor drag now translates text and images when selecting their origins. [#221]
- Dark mode better preserves color saturation using new SVG color filter from Dark Reader's Filter+ mode.
- Fix SVG export of pen strokes with arrows.
- Drawing actions are no longer interrupted when your cursor accidentally leaves the Cocreate window. [#219]
- Moving your cursor into the Cocreate window while you have a button pressed no longer starts a drawing action, fixing behavior on e.g. Chromium on X11 with a stylus. [#218], [#219]
- Fix anchor drag bugs: dragging non-defining corners of rectangles and ellipses was broken, and moving to old location was accidentally forbidden. [#214]
- Fix dotted rectangles not rendering
- Arrowheads now work with pen tool [#35]
- Arrowhead bug fixes
- Selecting text objects (only) shows font size attribute [#117]
- Dashed and dotted line styles for pen, segments, rectangles, and ellipses [#61]
- New start/end arrowhead support for line segments [#35]
- Bug fix in rectangular selection of anchors with translated objects.
- New anchor select tool now supports selecting multiple anchors, similar to the regular select tool: Click/tap on individual anchors while holding Shift to toggle their selection, or drag a selection rectangle. Then move the selected anchors by dragging or using arrow keys. The Escape key clears the selection. [#214]
- New "anchor select" tool with basic support for dragging anchors to reshape segments, rectangles, and ellipses. [#214]
- Fix bug in vertical alignment of text with LaTeX formulas in Firefox. [#199]
- Fix bug in Download PDF messing up Cocreate's layout.
- Cocreate's math renderer no longer includes the
physics
package. This fixes e.g. LaTeX's standard\div
, but removes some features. [#208]
- Arrow keys nudge selected objects by grid units (or half-grid units while holding Shift). [#149]
- Escape key now deselects any selected objects. [#179]
- Fixed dragging of current selection accidentally selecting an object (when the object was under the initial drag point).
- Improve "Cocreate updated" message. [#200]
- New "Download PDF file" feature downloads page or selection in PDF format. [#98]
- Dragging objects with grid snapping is now more accurate. The previous behavior could leave your cursor feeling off by nearly one cell. [#206]
- Other users' cursors now have a drop shadow to distinguish from the drawing underneath them.
- User list automatically closes after clicking outside the list.
- Fix Firefox support for Ctrl+C copying objects as SVG into the clipboard for e.g. pasting into Inkscape. Images won't be inlined though. Also Chrome doesn't support this yet.
- In select mode, double-clicking on a text object switches to text mode, so you can easily modify the content (similar to Inkscape).
- Fix clicking on the selected text object in text mode causing deselection.
- Clock synchronization between client and server (used for cursor fading) is more accurate (median of 3, which helps especially when (re)connecting) and runs less frequently (every 30 minutes, to reduce server load).
- User list now appears with explanatory message if no other users.
- Fix missing arrows on tooltips/popups.
- You can now jump to the cursor of another user by clicking the users icon next to your name, then clicking on a name. [#136]
- Add tooltip explaining the "Your Name" text entry box.
- Fix updating of names for remote cursors.
- Cocreate will now tell you when it's disconnected from the server (because of either network or server failure), and will ask you before upgrading to a new version of Cocreate. This should help avoid losing work because of server restarts. [#200]
- Local cursor now accurately reflects your current fill color/mode (in relevant drawing modes)
- Some LaTeX features were previously hidden behind a
\require
command. Now there's an explicit list of supported commands and extensions.
- When LaTeX text has errors, Cocreate will now render the LaTeX source (with a transparent red background) instead of the error message, making it easier to read text while it's being written. You can hover over the text to see the error message. [#202]
- Cocreate removes some unneeded attributes in SVG produced by MathJax, so exported SVG with LaTeX should be smaller.
- Cocreate is now built on SolidJS instead of React, improving UI reactivity.
- Triangular half-grid snapping now includes triangle centers. [#21]
- Dots are now easy to draw by clicking (without dragging) with the Ellipse or Rectangle tool, making small circles or squares centered at the click point. Dots can be colored and/or filled. The dot size is proportional to the line width. [#175]
- New experimental half-grid snapping feature. This doesn't change the grid visually, but lets you snap to half-grid positions. [#21]
- Multitouch pan/zoom in pan mode, and in drawing modes when "drawing with touch" is disabled. [#13] [#111]
- New rectangular selection algorithm works on Firefox and avoids false matches: selection rectangle checks overlap with shape itself, not (just) its bounding box. [#87] [#183]
- Selecting, dragging, and deleting many objects at once is much faster now. [#196]
- Support dragging images from other pages into Cocreate, creating image link (previously, only dragging links to image URLs worked).
- Fix rendering of zero-width/height rectangles and ellipses in Chrome. [#198]
- Fix LaTeX rendering in Time Travel view.
- Speed up time travel by large temporal distances.
- Fix paste and duplicate not working.
- Partial transparency/opacity attribute for all objects / drawing modes. [#193]
- Improved LaTeX rendering via MathJax 3.2.0
- Fix Cocreate on iPads with Pencil's Scribble feature enabled. [#157]
- Triangular grid feature, including reasonable snapping behavior [#21]
- Avoid one-dimensional ellipses and rectangles when holding Shift.
- Support incognito mode by handling lack of localStorage
- Default line width changed from 5 to 3. This is better for pen drawing, and gives more room to grow. [#172]
- Fix drawing horizontal and vertical lines by holding Shift. [#187]
- Prevent Ctrl-D from bookmarking page when using Select tool, even if duplicating an empty selection. (Other tools can still trigger bookmark.) [#186]
- Fix Alt key behavior when drawing rectangles, ellipses, and segments [#182]
- Fix pan tool when clicking on grid lines [#180]
- Fix SVG export with mixture of text and math
- You can now link to a specific page of a Cocreate board. You can copy the link location (or open a new tab) by right clicking on a page button. The webpage URL also automatically updates when you click on a page button. [#164]
- Cocreate now remembers the last page you viewed on each board, and starts there if the URL didn't specify a specific page to start on. (This is useful in the context of Comingle, where the entry URL usually remains fixed.)
- Custom scrollbars should look nicer especially in dark mode.
- You can now drag the selection by dragging from anywhere within the selection rectangle, making it much easier to drag the current selection. Shift-clicking behaves as before (toggle an item or start a toggle rectangle), so you can still easily modify the selection. [#170]
- You can now select a text object (e.g., to edit it with the text tool) by clicking anywhere within its bounding box, instead of having to click exactly on the letters. [#171]
- You can now pan the page around without switching to Pan mode by dragging with the middle mouse button (in addition to the previous method of dragging while holding Spacebar). [#174]
- Exported SVG files should be slightly smaller.
- Middle click shouldn't accidentally paste on Linux anymore. [#166]
- Time Travel is now a toggle/overlay mode supporting both Pan and Select tools, enabling copying from the past and pasting into the present. [#174]
- Pen strokes render more efficiently, especially when not using a pressure-sensitive pen, so should bog down a page less.
- Rename main branch from
master
tomain
. The link to the documentation and this Changelog have changed (but the old links redirect).
- Exported SVG with images should now load correctly in Inkscape
(by replacing
href
attribute with olderxlink:href
). [#165]
- Cocreate now remembers the last view you used for each page of each board in localStorage, and resets the view when going to a new page. [#163]
- The "zoom-1" reset button now reset the entire view, returning to the origin in addition to the old behavior of resetting the zoom to 100%.
- Rendering the page grid is no longer extremely slow if you zoom way out. [#163] [#21]
- Fix zoom-to-fit button. (It was doing the wrong thing when zoom level was not 100% and page contained text objects.)
- Fix zoom to avoid under/overflows [#163]
- Allow typing or pasting a Tab character when entering text. It renders as an em-space. [#160]
- Improve handling of
`
characters in text, closer to the Markdown spec.
- Restore the grid in SVG export [#157]
- Improve styling of list of users in page tooltip.
- Fix CORS support for API calls.
- Fix Coop protocol support for setting of dark mode.
- Increase height of text entry box to be enough for two lines (50% increase), in particular to clarify that it supports multiple lines.
- Make it easier to resize the text entry box by preventing it from getting too small vertically and preventing horizontal changes.
- Support blank lines in multiline text objects.
- Pages gain a hover tooltip with a list of all users on that page.
- Fix long-standing issue with extra lines being drawn in Time Travel view.
- Fix undo/redo buttons for stepping through history one operation at a time.
Refer to the Git log for changes older than listed in this document.