DrawPile Changelog

What's new in DrawPile 2.1.19

Aug 6, 2021
  • Fixed performance regression (noticeable especially when using the selection tool on large boards)
  • Fixed crash when adding a new input preset
  • On Windows, the "fusion" widget style is now always used for consistency. (Previously, fusion style was used only with the dark mode.)
  • Added a canvas rotation widget to the status bar.
  • Fixed that invalid canvas resize commands could crash the application
  • Unfinished indirect strokes now get exported properly
  • Fixed graphical corruption in navigator at the start of a session.

New in DrawPile 2.1.18 (Jul 26, 2021)

  • Bug fixes include:
  • Fixed inconsistent zooming at certain values
  • Fixed brush size adjustment shortcuts not working consistently
  • Fixed that undo operations would cause the layer list to scroll
  • Fixed moving a layer to the bottom-most position
  • New features:
  • Added French and Portugese translations
  • Input preferences can now be saved per tool
  • Brush cursor outline width can now be changed
  • Layer properties can now be edited in a dialog
  • Color wheel shape is now selectable
  • Maximum brush size and spacings can now be extended (affects sliders)
  • Added selection perspective transform mode
  • Breaking changes:
  • The way the active tool settings are saved is not compatible with previous Drawpile versions. Switching back to an older version after using 2.1.18 will result in missing tool settings.

New in DrawPile 2.1.17 (Feb 17, 2020)

  • Following drawpile:// links works again
  • List servers can now be added using drawpile:// links
  • Available list servers are now updated correctly in session settings dialog
  • Fixed moderator login UI
  • Server: the "trusted" user flag can now be set via the admin API
  • HTTP redirects are now followed properly

New in DrawPile 2.1.16 (Feb 11, 2020)

  • This release adds a few new features to the server, a couple of usability improvements and some bug fixes.

New in DrawPile 2.1.15 (Dec 8, 2019)

  • Server changes:
  • Added support for list server API 1.6
  • Added ext_host and ext_port fields to status API endpoint
  • Abuse report token can now be set via admin API
  • List server whitelist can now be edited via the API
  • Fixed memory leak in admin API
  • The server can now also serve web admin site static files
  • Server-gui: Added "welcome message" field
  • Bugfixes and improvements
  • Drawpile-cmd: OpenRaster export format now works
  • Added command line option to override data and config paths (portable app mode)
  • Added "closed" session list filtering option
  • Added "Add" button to join dialog for adding the server's associated list server

New in DrawPile 2.1.14 (Nov 17, 2019)

  • Version 2.1.14 is now out. This is another bugfix release that fixes some of the regressions that weren't fixed already in the previous version.
  • The primary big change in this version is that brush preset sorting by drag & drop works again. There is also a new related feature: presets can now be sorted into folders!
  • Note for people running servers: the admin API root path has changed! The paths are now prefixed with "/api", so "/status/" becomes "/api/status/". This change is to better support the new work-in-progress web admin frontend.
  • Bugs fixed:
  • Fixed dab spacing in default brush presets
  • Fixed that selecting a brush preset could change the eraser slot into a non-erasing mode
  • Fixed brush preset reordering by drag&drop
  • Fixed that pressing spacebar while drawing would cause strange input handling behavior
  • Bugfix: don't allow pasting by drag&drop if cut&paste is disabled

New in DrawPile 2.1.13 (Nov 4, 2019)

  • Bugs fixed:
  • Spacebar would have to be pressed again after releasing the mouse/stylus button when dragging
  • Brush color is now initialized properly on fresh install.
  • Eraser now works again without having to explicitly select a color
  • Brush blending mode is saved correctly again
  • Disabled brush preset drag&drop reordering. (Temporary bandaid solution to a regression. Will be fixed properly in the next release.)
  • Other changes:
  • Replaced pressure checkboxes with toggle buttons to free up some vertical space
  • Removed arbitrary OpenRaster image size limit
  • Enabled High-DPI icons and scaling (crisp toolbar buttons on Retina displays!)

New in DrawPile 2.1.12 (Oct 21, 2019)

  • Bugs fixed:
  • Fixed lockup when opening a layered TIFF file
  • Fixed responsivity of tool quick adjustment by dragging
  • Server: session files are now named consistently
  • Fixed crash when using large-radius color picker near the edge of the canvas
  • Other changes:
  • Added Italian translation (contributed by Albano Battistella)
  • The same default curve is now used for velocity pressure emulation mode
  • drawpile-cmd: added support for outputting to stdout
  • The same default curve is now used for velocity pressure emulation mode
  • Server: file backed session file naming is now consistent when archive mode is enabled

New in DrawPile 2.1.4 (Mar 25, 2019)

  • Bugs fixed in this release:
  • Fixed session list sorting in login dialog
  • Fixed crash when resizing canvas
  • Fixed layer access user list going out of sync
  • Fixed navigator focus rect scaling
  • Fixed "registered" level permissions not taking effect on login
  • New features:
  • Server: session and recording directories are now automatically created if missing
  • Added automatic new release checking
  • Added filter field to user list (event log)
  • Reimplemented navigator user cursors. If you have any comments about this, please see issue #698 at GitHub.
  • Navigator cursors can now be enabled or disabled independently of the main canvas cursors

New in DrawPile 2.0.11-1 (Aug 30, 2018)

  • Server: fixed OP status auto-restoration for users who used the "become operator" feature
  • Server AppImage: updated libmicrohttpd to version 0.9.59
  • Fixed a crash caused by dragging&dropping a layer that was deleted during the drag operation
  • Fixed unsetting shortcuts which have a default value
  • Changed default "session settings" shortcut to F9, to avoid collision with the default (Windows) fullscreen shortcut F11
  • Added a nicer set of presets for the brush palette
  • Sending USR1 signal to drawpile-srv now restarts the internal web-admin server
  • Updated Chinese translation

New in DrawPile 2.0.7.2 (Jan 29, 2018)

  • Regression fixes:
  • Windows specific: Fixed a missing DLL that resulted in a Windows 95 UI style
  • Fixed that you couldn't enter a password protected session after logging in with a registered user account
  • Fixed duplicate colors in the color history palette
  • Fixed flipbook downscaling
  • New features:
  • Added a "remember my password" feature. Makes using registered accounts much easier!
  • Flipbook now upscales if the canvas or cropped area is very small
  • The "show password protected sessions" checkbox now retains its state
  • Other bug fixes:
  • Fixed that paste & area fill could be done on a locked layer (locally, did not affect other users)
  • Improved selection scaling behavior. Proportional scaling mode now maintains aspect ratio correctly.
  • Errata:
  • Password file path was incorrect on Windows. Fixed in 2.0.7.1. Other platforms are not affected.
  • Mac package didn't open in versions older than High Sierra. Fixed in 2.0.7.2.

New in DrawPile 2.0.5.1 (Jun 26, 2017)

  • Bugs fixed in this release:
  • Fixed flood fill expansion (regression)
  • Fixed concurrency problem in recording playback (controls out of sync with actual playback)
  • Fixed zooming with ctrl+stylus motion
  • Fixed language changing
  • Fixed tool selection when "select all" command was used and the rectangular selection tool was already selected
  • Fixed a bug in the server GUI that could reset server settings
  • Usability improvements:
  • The number of remembered host addresses is now limited
  • Enter and Esc keys can now be used to end or cancel Bezier curve drawing
  • If a selection exists, undo first undos the selection transformation
  • Improved latency hiding behaviour (avoids blinking strokes while drawing caused by repeated canvas rollbacks)
  • Canvas is now locked on autoreset and a notification chat message is sent
  • Layer selection is now restored after session reset
  • Removed "persistent session" option from the host dialog (this option was misleading since persistence may not be available on the target server. Once a session is started, it can be made persistent via the session settings dialog if the server supports it.)
  • New features:
  • Added a built-in tablet testing tool
  • Added an option to hide the server address in the status bar
  • Added an option to disable tool toggling shortcut
  • All admin HTTP queries are now logged
  • Added a log file for debug messages

New in DrawPile 2.0.4 (Apr 26, 2017)

  • Added support for room codes and private listings
  • Reverted pressure controls back to checkboxes
  • Added dedicated eraser brush slot
  • Restored eraser as a separate tool (uses only the eraser slot)
  • Added 'Ctrl+E' shortcut to toggle the current brush's eraser mode
  • Added bezier curve tool
  • Fixed stale op and lock bits left over from previous user with the same ID (fixes OP status being out of sync with server after logging back in)
  • Flood fill size can now be limited to protect against accidental canvas fills
  • Added erase mode to flood fill tool

New in DrawPile 2.0.3 Pre 1 (Apr 8, 2017)

  • The new UI restores the brush slot buttons (1-5), but also changes some other things:
  • The 1-5 buttons are now only used with brushes and not other tool types
  • Brushes and tools are now decoupled:
  • Pen, Brush, Watercolor and Eraser tools are all merged into a single Freehand tool
  • Any brush can now be toggled into eraser mode
  • Brushes are now shared by all tool types (freehand, line, rectangle and ellipse)
  • Tool preset pie menu replaced with a brush preset box
  • No brush feature has been removed, just moved into different places in the UI. In fact, the new UI exposes some features that have previously been inaccessible.

New in DrawPile 2.0.2 (Mar 28, 2017)

  • Fixed returning from full-screen mode to maximized window
  • Fixed server crash when terminating an announced session
  • Restored missing “lock dock positions” feature
  • Messages received during reset while session history is full are now dropped (mitigates auto-reset loop of death)
  • Fixed layer selection after current layer is deleted
  • Separated layer delete & merge menu items
  • Various session template related fixes
  • Session history size is now displayed in the status bar
  • Fixed lockup on reset when navigator was visible
  • Reset no longer clears pinned chat message
  • Fixed “hide from self” layer menu item
  • Fixed selection moving when selection is partially (or completely) outside the canvas

New in DrawPile 2.0.1 (Mar 21, 2017)

  • Brush crosshair cursor restored (configurable: activate it from the preferences dialog)
  • Session announcement list error messages are now shown properly
  • New feature: timestamps can now be automatically added to recordings
  • Fixed frequent canvas rollbacks when many people were drawing simultaneously (stroke would disappear, then reappear)
  • Moderator accounts now get OP status correctly (regression fix)
  • Fixed exclusive layer locking
  • Fixed restoring session & layer ACLs after a reset
  • Fixed cut&paste and annotation locking
  • Progress bar is now shown during session reset
  • Fixed missing username in “op granted/revoked” chat messages
  • Fixed duplicate local messages when sending reset snapshot
  • Fixed max session count and session size limit settings in server GUI

New in DrawPile 2.0.0 (Mar 20, 2017)

  • Server: Fixed setting of local hostname (when using a configuration file)
  • Server: Fixed setting of port number in announcement
  • Server: Show listing server error messages
  • Server: Restore op/deop chat notifications
  • Server: Fixed GUI mode tray icon
  • Made tool pie menu smaller
  • Temporarily disabled pie menu popup with right mouse button
  • Restored tool preset shortcuts (1-8)
  • Added shortcuts for assigning tool presets (Ctrl+1-8)
  • Removed new brush cursors (will be made configurable in the next version)
  • Fixed incorrect range in session alias validation ('z' and '9' characters were not accepted)
  • Fixed lasso selection tool (regression)
  • Switching tools now commits the floating selection instead of cancelling it
  • Regression fix: previosly used color list
  • NSFM icon for session lists
  • Fixed selection resize handle bounding box
  • Show received chat message timestamps

New in DrawPile 2.0.0 RC (Feb 27, 2017)

  • Various bug fixes
  • Added parental controls feature (password protected option to limit access to sessions tagged as "not safe for minors")
  • New brush cursors
  • Slightly adjusted laser style (line is always thick, less blinky)
  • Added server column to session list
  • New feature: mark layer as default for new users
  • Protocol change: added MoveRegion command

New in DrawPile 2.0.0 Beta 2 (Jan 20, 2017)

  • Fixes many bugs discovered in the previous release, restores some missing features and adds a couple of new ones:
  • Automatic session resetting when space is low
  • Sessions no longer terminate when they run out of space
  • Dedicated server configuration is now stored in a SQLite database
  • HTTP admin API is back, and most server settings can now be changed through it.
  • Users can now be banned from individual sessions
  • Session settings can now be changed from the GUI
  • Graphical mode for the standalone server (unfinished)
  • Lots of bug fixes

New in DrawPile 1.0.6 (Dec 18, 2016)

  • Server: non-persistent session idle time can now also be limited
  • * Server: added /opword command
  • Name of the user who created an annotation is now displayed in the editing widget
  • Bugfix: enable/disable fill commands when operator status changes and image lock is in place
  • Bugfix: Filling freeform selections now uses the correct blending mode
  • Cut and fill commands now only operate on selections to avoid accidentally clearing or filling whole layers
  • Added an option to lock dock widgets in their places
  • Added server log chat messages for operator actions
  • Server: remove kicked users from the session immediately
  • Display user pointer on FillRect and PutImage commands

New in DrawPile 1.0.5 (Oct 15, 2016)

  • Fixed edited palette loading (OSX specific regression)
  • Fixed untrusted certificate error (OSX specific)
  • Improved performance when joining a session (task bar related bugfix)
  • Fixed restoration of eraser hard edge mode when switching tools

New in DrawPile 2.0.0 Beta 1 (Aug 6, 2016)

  • Major refactoring
  • Protocol version 4
  • Some server features removed (to be re-implemented later)
  • New simplified recording playback dialog
  • Session resetting to previous snapshots

New in DrawPile 1.0.4 (Aug 6, 2016)

  • Username length is now limited to 22 characters
  • Show correct error message when server is full
  • Let the user know if their IP address has been banned
  • Added option to restrict cut&paste and fill operations
  • List of logged in users can now be included in session announcement
  • Allow undo override even while session is locked

New in DrawPile 1.0.3 (Jul 6, 2016)

  • Remember last used path when saving files
  • Support new miniupnpc library version
  • Added txt2dprec tool
  • Added support for session templates in the standalone server
  • Fix shortcut saving when editor widget was not manually closed
  • Removed default canvas size limit (screen size)
  • Recording buffer is now periodically flushed to minimize data loss in case of a crash
  • New feature: chat message pinning
  • Selection mirror & flip buttons now automatically cut the selection
  • Flipbook playback range can now be selected

New in DrawPile 1.0.2 (Jul 6, 2016)

  • Fixed crash when smoother was set to zero
  • Server: added command line option to enable split recording mode (new recording for each snapshot)
  • Server: /force_snapshot command can now be used outside debug mode
  • Fixed stretched selection contents if selected area was (partially) outside the canvas
  • Chat URL autolinker now accepts more characters in the fragment identifier
  • Retcon simplification: just discard the local fork on conflict rather than replaying
  • Hidden layers are no longer saved when in a flattened image
  • Fixed pressure glitch at the start of a stroke
  • OpenRaster loader optimization: more efficient loading of solid fill layers

New in DrawPile 1.0.1 (Jul 6, 2016)

  • Strokes are started immediately even when smoothing is enabled
  • Ports in autolinked URLs are now recognized
  • Dedicated server: added --welcome-message parameter
  • Fixed "reset size" for polygonal selections
  • Improved recording index file generation
  • Active selection is no longer cleared when switching from rectangle to lasso tool
  • A link to unhide age restricted sessions is now shown in the session selector
  • Bugfix: remember selected listing server in session finder dialog
  • Improved UI lockup prevention when receiving large amount of commands
  • Smarter image sending: avoid sending blank images
  • New feature: area sampling for color picker
  • When opening a drawpile:// link, rather than connecting directly, the join dialog is shown

New in DrawPile 1.0.0 (Jul 28, 2015)

  • Added "Behind" and "Color erase" blending modes
  • Added support for automatically setting up port forwarding with UPnP
  • Added notification about Carrier Grade NAT
  • Added option to show layer numbers instead than titles
  • Added "thick laser trail" option
  • Added German translation
  • Remain somewhat responsive when joining a long-running session
  • Fixed timeout disconnect caused by missing Ping messages (related to above)
  • Fixed missing button icons in flipbook window
  • Fixed crash when using filling a rectangle aligned with bottom right corner of the canvas
  • Improved touch gesture support (scrolling, zooming and rotating)
  • Faster image loading
  • Moved user list to the chat box
  • OpenRaster: new namespace for Drawpile extensions
  • Protocol change: all blending modes can now be used with PutImage
  • Removed Color pressure mode
  • Scale selections maintaining aspect ratio by holding shift
  • Pasted images are now placed on their original positions (if copied from Drawpile)
  • Public session listing filtering for adult content

New in DrawPile 0.9.11 (Jun 5, 2015)

  • Fixed moving of freeform selections
  • Fixed merging (and export) of layers with sublayers
  • Fixed crash when closing animation export dialog
  • Support original frame size for all video export types
  • Updated Czech and Finnish translations
  • Added animated GIF export feature

New in DrawPile 0.9.10 Beta (May 22, 2015)

  • Fixed loading of older recording formats (

New in DrawPile 0.9.9 Beta (Apr 4, 2015)

  • Added "Lasso" selection tool
  • Added view flipping and mirroring
  • Added filter bar to shortcut settings editor
  • Added last used colors selection to color dock
  • Added selection transformation buttons
  • Added notification sounds
  • Palettes are now write-protected by default
  • Selections (and pasted images) can now be rotated as well as scaled
  • New dab mode button style
  • Chat icon is now shown in statusbar when there are unread messages
  • Crosshair cursor is no longer shown for brush tools
  • Protocol change: added implementation for LayerCopy
  • Added experimental workaround for certain tablet event bugs
  • Added "duplicate layer" button
  • Added "solo" layer view mode
  • Added IP ban feature to the standalone server
  • New icon theme (Breeze)

New in DrawPile 0.9.8 Beta (Feb 3, 2015)

  • Show menu bar when pointer is brought to the top of the screen in full screen mode
  • Fixed unnecessary retcon at start of new strokes
  • Fixed annotation moving (regression)
  • Fixed retconning of indirect paint mode strokes
  • Added a language override field to settings dialog
  • New feature: Hold tool shortcut button to select the tool temporarily; releasing the button switches back.
  • Simplified Host dialog
  • Flat tool slot button style
  • Minor protocol change: added new PutImage composition modes
  • "Fill under" mode for flood fill tool
  • Moved zoom buttons to the status bar

New in DrawPile 0.9.7 Beta (Jan 20, 2015)

  • Fixed "host on remote server" dropdown box
  • Fixed crash when reordering layers
  • Added new Retcon synchronization method
  • Removed preview strokes
  • Protocol change: 16 bit layer and annotation IDs
  • Updated server admin API
  • New server admin web app
  • Added context menu to pressure curve editor
  • Added clear button to key shortcut editor

New in DrawPile 0.9.6 Beta (Jan 6, 2015)

  • Added connection timeout check
  • Added keepalive messages
  • Automatically switch stroke preview mode based on latency
  • OSX: Quit menu action now works as expected
  • OSX: Added "Close" item to File menu.
  • OSX: Don't quit when all windows are closed
  • OSX: Added Window menu
  • Added zoom and angle shortcut context menus to status bar
  • Added network statistics dialog
  • Color picker cursor is now set when quick colorpicking
  • Simplified navigator dock
  • Brush size adjustment now sets brush diameter instead of radius
  • Slightly smoother antialised (thin) brush stroke rendering
  • Fixed tablet event handling when running on Qt 5.4
  • Added preview widget for flood fill
  • Set annotation editor background color
  • Added Watercolor brush
  • Added pixel grid for high zoom levels
  • Statusbar is no longer shown under the tool docks to conserve vertical space
  • Custom session IDs are now shown in session selection window
  • Ctrl+wheel zoom now uses 50% steps
  • Various minor improvements and bug fixes
  • Added dprec2txt tool
  • Added support for playing back all older recording format versions

New in DrawPile 0.9.5 (Oct 21, 2014)

  • Contains a few feature improvements as well as bug fixes. Notable improvements are:
  • Added Czech translation
  • Improved canvas zooming and rotation
  • An option to disable tablet events
  • Tool specific cursors
  • Flood fill expansion
  • Added "recolor" (preserve alpha) blending mode
  • Fixed language fallback (The wrong translation would be loaded on some non-English systems)
  • This release also contains a few Mac specific improvements:
  • Support for OSX versions 10.7 "Lion" and newer
  • Multitouch pinch/pan gestures
  • Retina display support

New in DrawPile 0.9.4 (Aug 16, 2014)

  • Redesigned color docks: palette box and RGB/HSV sliders are now combined into a single dock and a color wheel was added.
  • New chat command to simulate dice rolls for online tabletop gaming
  • Layer locking is now supported in offline mode
  • Chat history can be optionally preserved
  • Improved drag & drop support
  • Added flood fill tool

New in DrawPile 0.9.3 (Jul 18, 2014)

  • Layer opacity glyph now acts as show/hide button
  • Added layer context menu
  • Support for loading remote files (e.g. drag&drop URLs to canvas)
  • Bug fix: paint tools on new windows would not get enabled
  • Set mainwindow title correctly
  • Zero canvas size when creating layers is now tolerated
  • New chat command added: /me
  • Bug fix: locked layers could be changed my merging
  • Regression fix: rectangle fill was broken in previous version
  • Register .dprec filetype on OSX

New in DrawPile 0.9.2 (Jul 14, 2014)

  • Improved message popup widget
  • Server: session hibernation
  • Protocol change: more information is included in SessionConf message
  • Translation support
  • Add Finnish translation
  • Web admin API and sample app
  • Bugfix: set layer lock status bits correctly at the start of a new session
  • Changed default stroke preview type to Realistic
  • Default shortcuts for Copy layer & Copy visible changed for consistency with other programs
  • Added Edit toolbar
  • List of supported image formats for saving is now constructed correctly
  • Protocol change: session IDs are now treated as strings rather than numbers
  • Protocol change: SessionConf::attrs is now two bytes long
  • Protocol change: added "flags" field to Chat message
  • Protocol change: use 32 bit coordinates everywhere
  • Chat messages are no longer included in the session history by default
  • Fixed crash when dragging&dropping a layer
  • Fixed canvas stealing focus from text boxes
  • Authenticated login support
  • More version info shown in `drawpile-srv --version`
  • Various bug fixes and usability improvements

New in DrawPile 0.6.0 (Oct 25, 2008)

  • Subpixel drawing.
  • A new pen tool that draws without antialiasing.
  • Support for blending modes other than regular alpha blend.
  • Brush sliders have a new graphical style.
  • The view can now be rotated.
  • Support for changing keyboard shortcuts.