Drawpile 2.0.8 Release and Roadmap to 2.1.0

Feb. 11, 2018

Version 2.0.8 is now out. This will likely be the last release of the 2.0.x branch, unless more severe bugs are found. The next big release will be version 2.1.0.

Important fixes in this version:

  • Regression fix: autoreset no longer removes session permission settings
  • Manual resets now also preserve permissions
  • Fixed password remembering on Windows (also fixed in 2.0.7.1)
  • Fixed that a server password would also get saved for ext-auth (also fixed in 2.0.7.1)
  • Platform input method context plugins are now included in the AppImage

Other improvements:

  • Server: added support for SSL certificate chains and certificate auto-reloading
  • Server: web admin can now be used with socket activation
  • Server: support ext-auth "did" field
  • Better icons for authenticated users and mods
  • New session option: allow only authenticated users to join (requires server version 2.0.8)
  • Chatbox no longer shows "user joined" messages for users already in the session
  • macOS: a new window is now opened when the application icon is clicked if none is currently open.

Read more...

Drawpile 2.0.7 Release

Jan. 26, 2018

Version 2.0.7 is now out, a bit earlier than intended. This release fixes a couple serious bugs introduced in the 2.0.6 release and adds some feature improvements too.

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.

Read more...

Drawpile 2.0.6 Release

Jan. 21, 2018

Version 2.0.6 is now done! It's been 6 months since the last release, but to make up for it, this update is packed full of new features and bug fixes.

Tablet problems after updating Windows 10

Many have a encountered new tablet bug after installing the Windows 10 creators update: Drawing with a stylus drags the canvas instead of paining. Whether by design or a bug, Windows now generates touch events for the stylus. Touch is typically used for scrolling, which is what is happening here. This change has affected many applications, so it's not just Drawpile.

Currently, there is no true fix to this problem, but there is a workaround: uncheck the "scroll with finger" checkbox in the preferences. If you're not getting any pressure sensitivity, try also checking the "bug workaround mode" checkbox.

Canvas clearing session reset bug

I found a number of distinct bugs that could corrupt the canvas in some circumstances during a session reset. The most easily triggered one is that if a user is drawing at the exact moment the reset finishes, the canvas can disappear entirely. This happend on a per-user basis: users who weren't drawing or joined later were unaffected. This bug is now fixed.

In another case, a client could submit an empty reset. I'm not entirely sure yet what causes it, but I've added a check that blocks empty reset snapshots.

There may be still some reset related bugs remaining, but it should generally work a bit more robustly now.

User accounts

Perhaps the most important new feature in this release is enhanced support for user account registration. Drawpile has supported user accounts for a long time, but without a way for users to register accounts by themselves, it hasn't been of little use.

Version 2.0.6 introduces a new feature that makes it possible for web sites to provide Drawpile user accounts. You will now be able to register a user account here at drawpile.net to use on the public server. It is even possible for other servers to accept drawpile.net accounts or create their own.

At the moment, the only thing you can do with drawpile.net user accounts is reserve usernames to use on the public server, but new website features are coming soon!

Note: if you try logging in using a reserved username with a version older than 2.0.6, you will get a somewhat cryptic error message saying "Invalid state".

Read on for a full list of other new features added and bugs fixed, and also some ideas for future development.

Read more...

Drawpile 2.0.5 Release

June 26, 2017

Version 2.0.5 is now out! This release brings many general usability improvements and fixes a few bugs.

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

Linux specific fixes:

  • Fixed server build with systemd integration enabled
  • Qt version in AppImage downgraded to 5.6, as tablet hover events are broken in Qt 5.7 and newer

Read more...

Website update

May 21, 2017

The website has just received a technical overhaul. While the overall layout remains the same, the site is now powered by Django. (Previously, it was a static site generated with Hyde.) This makes it possible to add dynamic features in the future, such as username registration for the public server and user galleries.

The source code for the website is now fully open and can be found at github. I will accept pull requests if you have ideas for improvement or even just typo fixes.

Read more...