You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Server Fix: Add --ssl-key-algorithm parameter to allow non-RSA SSL keys, defaulting to guessing the most common formats RSA and EC. Thanks Bluestrings for reporting.
Fix: Make pressure-less mode work with pens on Android. Thanks molluscdotgov for reporting.
Fix: Don't start dragging keyframes when they're moved only a minuscule amount. Thanks Meru for reporting.
Fix: Remove duplicate port from displayed network address when hosting under a non-default port. Thanks SadColor for reporting.
Fix: Keep focus on brush sliders when typing into them. Thanks MachKerman for reporting.
Server Feature: Allow setting web admin auth through DRAWPILESRV_WEB_ADMIN_AUTH environment variable. The --web-admin-auth parameter takes precedence.
Fix: Show the fill tool size limit rectangle even when the outline width is set to zero pixels. Thanks Blozzom for reporting.
Server Fix: Show an error message if listing on a certain server is not allowed.
Fix: Unlist sessions more reliably when terminating sessions hosted "on this computer". Thanks to Buch for helping figure this out.
Fix: Don't select a newly created layer when there's a default layer.
Fix: Give the timeline dock a sensible minimum height. Thanks Kink for reporting.
Fix: Don't exit the program in the pathological case of initiating a quit, being prompted to save, cancelling the save dialog and then saving again.
Fix: Properly update current layer fill source when switching layers.
Fix: Cap the number of threads used for parallel processing, because 128 core CPUs exist.
Fix: Move back button in login dialog to the left side. Thanks Blozzom for reporting.
Fix: Properly forget password when editing account and unchecking the "remember password" box. Thanks Meru for reporting, as well as Bluestrings and Blozzom for finding issues with the fix.
Fix: Apply chosen interpolation to pasted images. Thanks Deovise and Hipofiz for reporting.
Fix: Properly disable Session > Reset option when there's no canvas present that could be reset.
Fix: Allow opening PSD files and importing Drawpile 2.1 animations on Android. Thanks ariqhadiyan for reporting.
Server Fix: Prevent users from being assigned permission flags they're denied by the server configuration, which could lead to a weird superposition of being flagged as a moderator, but not actually having moderator permissions. Thanks Bluestrings for reporting.
Fix: Don't act like the user entered incorrect account credentials if a session unexpectedly requires a password. This only happened with either amazingly bad timing or in the superposition described above. Thanks Bluestrings for reporting.
Fix: Don't leave one-finger touch setting blank when "do nothing" is selected. Thanks BornIncompetence for reporting.
Fix: Shorten and normalize debounce delay to be 250 milliseconds for the layer opacity/blend mode, onion skins and timeline controls, rather than being a bunch of different values. Thanks robotto for reporting.
Fix: Remember invite link type setting properly. Thanks Bluestrings for reporting.
Fix: Try to keep the start dialog behind other dialogs it spawns harder. Thanks Bluestrings and shablagoo for reporting and Buch for finding issues with the fix.
Fix: Use a single palette in GIF export to prevent flickering. The palette is generated from the merged image. Thanks Hopfel and Bluestrings for reporting.
2023-12-08 Version 2.2.0-beta.11
Server Fix: No longer show "cannot look up one session and then join another" when joining a session with an ID alias. Thanks Kink and Fabian for finding this.
Fix: Actually disable brush taking in 2.1 sessions, last attempt didn't stick. Thanks again Blozzom for reporting.
Fix: Also show mute notifications action when right-clicking the chat. Thanks Blozzom for reporting.
Fix: Make brush palette less immensely slow. Thanks lowontrash for reporting.
Fix: Show kick and ban messages in the correct order, without duplicates. Thanks xxxx for reporting.
Fix: Force the canvas to refresh on resize even harder because some systems still get artifacts. Thanks xxxx for reporting.
Fix: Default the mouse wheel to pan the canvas on macOS instead of zooming it, since that makes more sense for its two-dimensional scroll wheels. Thanks Charmandrigo for reporting.
Fix: Make Apple Magic Trackpad and hopefully other touch pads work. Thanks Charmandrigo for reporting and helping figure this out.
Fix: Add a close button to the tablet tester, playback, event log and flipbook dialogs so that it can be closed on Android and other systems without window decorations without having to press some button or key combination.
Fix: Enable fingerpainting on Android by default if the device doesn't have a stylus.
Fix: Prefer versioned lconvert executable over unversioned one to make things work on Fedora. Thanks lowontrash for reporting.
Fix: Look in source directory for assets when building, making running from the build directory possible. Can be turned off with -DSOURCE_ASSETS=OFF. Thanks Meru, lowontrash and probably others for running into issues with this.
Fix: Make large circles and curves drawn with the circle and curve tool not look all jaggy.
Fix: Make large rectangles close properly with MyPaint brushes. Thanks haxekhaex2 for reporting.
Fix: Allow horizontal scrolling in the preferences dialog so the close button doesn't get thrown off-screen on mobile. Thanks Xkower for reporting.
Fix: Allow scrolling of preferences and start dialog sidebar.
Fix: Move preferences dialog sidebar to the top on macOS and to the bottom on Android, to fit better with how those systems work. Thanks Snover and Xkower.
Fix: Make copying and pasting work on Android. Thanks ariqhadiyan for reporting.
Fix: Open files in the background to avoid "not responding" warnings. Thanks ariqhadiyan for reporting.
Fix: Force main window to fit screen on Android whenever the docks change, to avoid spills beyond the edge of the screen. Thanks Xkower for reporting.
Fix: Don't load ORA files in parallel on Android. This is slower, but avoids the application getting terminated for using too much memory. Thanks ariqhadiyan for reporting.
Fix: Make keyboard modifiers work better on Android. Thanks ariqhadiyan for reporting.
Fix: Default Export Image option to export as PNG instead of ORA, because that's what that option is for. Thanks SadColor for reporting.
Feature: Add libera.chat link to start dialog.
Fix: Properly restore avatar again when reconnecting to a session on a 2.1 server. Thanks xxxx for reporting.
Fix: Make kinetic scrolling work in brush editor categories list.
Fix: Make canvas rendering not get stuck when switching frames really quickly. Thanks Kink and Hopfel for reporting.
Fix: Update color swatch when using fill selection, recolor selection and color erase selection.
Fix: Only update color swatch when using tools that actually put those colors on the canvas.
Fix: Make color palette swatch select last used color so that it doesn't get stuck when switching brush slots. Thanks Meru for reporting.
Fix: Make Copy Merged and Copy Without Background from a floating selection work again. Thanks Meru for reporting.
Fix: Make Export Selection, Copy Merged and Copy Without Background adhere to current view mode. Thanks Bovy for reporting.
Fix: Make fill tool adhere to current view mode (minus onion skins) when using Merged Image as the source. Thanks Meru for reporting.
Fix: Don't crash when changing saturation in color dialog when using HSL or LCH color models. Thanks Meru for reporting.
Fix: Don't deadlock when saving and clearing password fallback.
Feature: Shortcut login flow on servers that only support guest and internal account logins.
Feature: Allow changing tablet driver through Edit menu on Windows.
Fix: Reset floating selection when filling it to avoid weird effects if the fill is inside the originally selected area. Thanks Meru for reporting.
Fix: Properly load annotations and timeline from ORA files without a background. Thanks MyaThingoss for reporting.
Feature: Add a Tablet Setup link in the start dialog.
Fix: Don't hide dock titlebars when pressing shift when a text field is in focus, since that might hide a field you're currently typing in. Thanks Trite for reporting.
Fix: Disable Hold Shift to Arrange by default, since it's not needed most of the time.
Fix: Don't claim every username is taken when connecting to a server with the old login flow doesn't allow guest logins, instead tell the user that they need an account. Thanks Meru for reporting.
Fix: Give checkbox outlines more contrast, since they're virtually invisible in most themes. This is a patch to Qt.
Fix: Change italic to bold text, since the former is not readable in Chinese script.
Fix: Make keep aspect ratio checkbox in resize dialog keep the current aspect ratio, not the original one.
Fix: Don't act like keep aspect ratio is checked when resizing from a selection. Thanks Meru for reporting.
Fix: Make onion skin color partially transparent by default so that they don't turn into solid blocks on colored stuff. Thanks BulletPepper for reporting.
Fix: Clarify the host dialog by adding additional messages that explain common sources of confusion, such as the title being required, disallowing invite links as the title, the password being necessary to host a private session and "host on this computer" requiring port forwarding.
Fix: Prevent jittering pixels on the canvas at certain zooms and rotations. Thanks Bluestrings, Meru and taiyu for reporting this. Also thanks Meru for actually finding the solution and contributing this fix.
Fix: Don't reset brush mode when clicking on the freehand tool button from a different tool. Thanks Big Piston for reporting.
Fix: Render annotations when saving to PNG and JPEG. Thanks chrystalclear and Rykuta for reporting.
Fix: Don't reset annotation settings to weird values when there's no text. Thanks Blozzom for reporting.
Fix: When hiding a layer group, indicate that all containing layers are hidden too. Thanks Missile for reporting.
Fix: Take scroll into account when reordering tracks. Thanks Meru for reporting.
Fix: Show proper ext-auth URL when prompting for a login. Thanks xxxx for reporting.
Fix: Properly show server info URL as a clickable link when prompting for a login.
Feature: Focus the input field on the Join page when switching to it so that you can immediately paste a link without having to click it.
Fix: Handle view mode changes (frame view, onion skins etc.) properly in drawpile-cmd and drawpile-timelapse tools.
2023-11-12 Version 2.2.0-beta.10
Fix: Don't deadlock on first startup. Thanks to Hail, lowontrash, FARBOL234, Dorokinyo and hamlin for reporting.
Fix: Disable brush taking in 2.1 sessions. Thanks Blozzom for reporting.
2023-11-11 Version 2.2.0-beta.9
Fix: Make Android build work again. Thanks Tetriser for reporting.
Fix: Allow indirect mode in 2.1 sessions when opacity dynamics are disabled. Thanks to Blozzom for reporting.
Fix: Make LCH color wheel circle not look so bright and discontinuous.
Fix: Refresh canvas view harder on resize to avoid artifacts on some systems. Thanks xxxx for reporting.
Fix: Use proper background color in resize dialog. Thanks xxxx for reporting.
Fix: Correct a rounding error when converting pixels for display. This corrects both the visuals and the color picker when picking from the merged image. Thanks deovise and hipofiz for reporting.
Fix: Don't crash when a new user joins when using the builtin server and a local fork is present. Thanks to Kink for reporting.
Feature: Interpolate inputs that are far away from each other to compensate against fast strokes producing jagged curves. Can be disabled in the input preferences.
Fix: Make build directories outside of the source directory work again. Thanks Aquargent for reporting.
Fix: Properly handle modifier key releases for keyboard canvas shortcuts. Thanks Daystream for reporting.
Server Feature: Implement a shared bans system, letting owners of multiple servers manage a single list instead of having to keep them in sync manually. Thanks Bluestrings for suggesting.
Server Feature: Allow exempting users from ban ranges, to help alleviate false positives.
Fix: Make IPv6 addresses work in invite links.
Fix: Properly add drawpile:// in front of direct invite links when hosting "on this computer".
Feature: Support reading and writing Photoshop Document (PSD) files. Thanks pachuco, onyx, Geese and probably others for suggesting. Thanks xxxx for helping getting it compatible with other software.
Fix: Make MyPaint brush permission not deny drawing with classic brushes. Thanks xxxx for reporting.
Fix: Offer to crop all avatars, not just non-square ones. Thanks Bluestrings for reporting.
Feature: Allow adding labels onto brush preset thumbnails. Thanks Paris Green for causing this.
Fix: Don't restore flipbook to previous location and size if that would put it outside of any available screen. Thanks Ausjamcian for reporting.
Server Feature: Allow exporting and importing session bans. They are encrypted with a per-server key by default. Thanks tincancrab for suggesting.
Fix: Prevent banning yourself from sessions.
Server Feature: Allow moderators to exempt sessions from the idle timeout. This ability can be disabled by server owners. Thanks Bluestrings for suggesting.
Fix: Show proper reasons when a session is terminated, rather than always claiming the server is shutting down.
Server Feature: Allow specifying a reason when terminating a session manually.
Fix: Squash whitespace in session listings to prevent funky display. Thanks yeen for reporting.
Server Fix: Error out when invalid --extauth parameter is given to drawpile-srv. Previously it would just keep going and simply not work without any indication as to why. Thanks RAINTARD for running into this.
Feature: Allow exporting images, which saves them without setting the current file or warning about the image being merged together.
Feature: Disable selection-dependent menu items (Deselect, Fill Selection etc.) when no selection is present.
Server Feature: Add Roles tab to session settings to allow changing operator and trusted status of registered users not currently online, as well as allowing importing and exporting this list of users. Thanks tincancrab for suggesting.
Feature: In addition to sounds, allow configuring popup bubbles and task bar flashing in notification preferences. Thanks MagicaJaphet and Bluestrings for suggesting.
Feature: Add a notification for unexpected disconnects.
Fix: Play back sounds in a different way that should fix the issues with chugging or wrong output devices that some systems have. Thanks Blozzom and Snover for reporting.
Feature: Allow configuring notifications for private messages separately from regular chat messages. Mentions can be configured to use these notifications, allowing silencing of regular chat, but still being notified or stuff directed at you. Thanks leandro2222 for suggesting.
Fix: Replace the terrifying notification sound effects with stuff from KDE's Ocean Sound Theme.
Fix: Don't delay own laser trails as if it were a stroke from another user. Thanks matt for reporting.
Fix: Properly update avatar on user markers when they reconnect with a different one. Thanks xxxx for reporting.
Fix: Show own user marker again when using the laser pointer.
Fix: Use previous avatar when using the reconnect button after a disconnect.
Fix: Don't trigger a cacophony of notifications after joining a session, just play a single notification once catchup is done instead.
Feature: Store alpha preserve state of layers in ORA files for better Krita compatibility (requires Krita 5.2.1 or newer.)
Feature: Allow onion skins to wrap around the timeline, toggleable in the onion skins dock. Thanks Hopfel for suggesting.
Feature: Fill the brush slots with nicer default values on first startup, rather than them all being the same pixel brush.
Fix: Don't lock tool slots when using the eraser tool, to avoid accidentally getting stuck in it.
Feature: Translate a single-colored bottom layer into background color when loading ORA and PSD files.
Fix: Make Alt+Space canvas shortcut sorta work in Windows. Thanks Bovy and xxxx for reporting.
Feature: Drawpile 2.1 animation import.
Server Fix: Don't boot user when they enter an incorrect password, let them try again.
Server Feature: Allow the user to pick how they want to log in, to avoid the common issue of wanting to join as a guest but picking a username that's taken.
Fix: Nudge catchup if it gets stuck without any messages received for a while.
Feature: Remember accounts, not just passwords. Should reduce the clicks and typing needed to log in even if you use multiple accounts.
Feature: Allow toggling whole tile marking in the inspector, since it makes some things easier to see.
Feature: Render flipbook frames in the background and indicate that fact with a loading spinner. It no longer lags the UI and gets done faster because of multithreading.
Feature: Crop flipbook when a selection is present upon opening it.
Feature: Make the flipbook UI clearer. The buttons now look like buttons, the uncrop button has a better icon and only shows while the view is cropped and the speed slider shows how many FPS you're actually running at.
Fix: Allow saving and loading files in weird Android folders that chew up the file names internally.
Server Feature: Allow servers to have a rules text that users are prompted to accept upon connecting. Clients remember that they accepted the rules and won't prompt again unless they changed since last time.
Feature: Add velocity and distance dynamics to classic brushes. Similar to how they worked for the input settings before, but more flexible than just a pressure mapping.
Feature: Allow grabbing the current brush settings of another user.
Fix: Relax transform size restrictions so that transforms of layers that cover the whole canvas don't always get cancelled.
Server Feature: Allow servers to set a minimum protocol version for sessions being hosted.
Server Feature: Let clients know at the beginning of the login if the session they're trying to join is nonexistent. Thanks Meru for suggesting.
Server Feature: Allow server owners to make sessions only joinable through direct links. Thanks Meru for suggesting.
Feature: Add touch tester, available under the Help menu.
Fix: Actually put the link that's being joined into the address input when using a web link, rather than leaving it blank.
Fix: Make Recolor (alpha locked) mode way faster.
Fix: Allow using gestures instead of touch screen controls, hopefully making zooming on touch pads work again.
2023-09-30 Version 2.2.0-beta.8
Fix: Apply color wheel direction to color dialogs too. Thanks Blozzom for reporting.
Fix: Don't smoothe the canvas view when at 100% zoom with the canvas rotated at a right angle, since that just blurs it for no reason. Thanks SadColor for reporting.
Fix: Make flipbook shortcut work while the flipbook is in focus, causing it to refresh its view.
Fix: Cap flipbook range properly, rather than letting you set a range beyond the last frame.
Fix: Remove the useless "?" button from dialogs in Windows. Thanks vipperz for reporting.
Fix: Turn off input event compression, which causes jaggy lines on slow devices.
Feature: Draw a hatching pattern on frames in the timeline that are the same as the currently visible one, making it easier to figure out if it's being re-used.
Fix: Make flipbook extend the playback range if it was on the last frame and new ones are added to the timeline.
Feature: Bring back dprectool, the command-line tool that converts Drawpile recordings. It should work mostly the same as it did in Drawpile 2.1.
Feature: Apply parent folder opacity to frames within it, useful for sketch tracks. Thanks to TeaLord9000 for suggesting.
Feature: Add a "small screen" mode, which should make the application usable on phones. Thanks to Verdrusk for suggesting.
Feature: Allow changing the application font size, rather than using the system default that may be garbage, especially on Android. Also Verdrusk's fault.
Feature: Locking docks now also locks toolbars, rather than still allowing you to move them around on accident.
Feature: Kinetic scrolling. This lets you click/tap/touch scrollable stuff and fling it around instead of using the scroll bars or wheel. Configurable in the preferences. Thanks again Verdrusk.
Fix: Make two-finger zoom and rotation not go completely crazy when the canvas is mirrored or flipped. Thanks BoyOnion for reporting.
Fix: Don't crash when picking a brush preset on Android. Thanks to zetalambo and VeeBeeArt for reporting.
Fix: Selections finally no longer sometimes disappear when transforming them. Thanks to Spuzzy, Xan and xxxx for reporting.
Feature: Capture volume rocker on Android and bind it to undo and redo by default. Thanks to cl for suggesting.
Feature: Add compatibility for Drawpile 2.1's broken indirect mode.
Fix: Make the receive delay not delay your own undos.
Feature: Add a setting for the background color behind the canvas. Thanks to Nightshade for suggesting.
Feature: Let operators create layers beyond the 256 per-user maximum. They will use layers of user 0 first, then 255, 254 etc. Thanks to haxekhaex2 for reporting.
Fix: Make Drawpile 2.1 binary (dprec) recordings play back properly. Text (dptxt) recordings are not supported.
Fix: Synchronize rendering during recording playback properly.
Feature: Bring back drawpile-cmd, the command-line tool that renders Drawpile recordings to images. Should also mostly work like it did in Drawpile 2.1.
Feature: Implement drawpile-timelapse, a new command-line tool that turns Drawpile recordings into timelapse videos.
Server Feature: Add --web-admin-allowed-origin option, to set the Access-Control-Allow-Origin header to the given value. Particularly useful for development, where you don't particularly want to set up an nginx to make CORS happy. Thanks Chem for reporting.
Server Feature: Update the server to use the 2.2 protocol.
Server Fix: Fix up some invalid casts and thread ownership issues. Not sure if they actually caused issues in practice, but especially on Windows they might have.
Feature: Bring back the builtin server, allowing you to host "on this computer" again.
Fix: Don't duplicate local fork on soft reset or undo depth change.
Fix: Make Erase, Divide and Subtract layer modes in ORA files compatible with Krita.
Feature: Stick ID alias and listing hosting options behind an advanced options checkbox, since they keep causing confusion.
Fix: Make host page in the start dialog work properly on Arabic and other right-to-left languages.
Feature: Allow choosing ffmpeg path on Windows. Thanks xxxx for suggesting.
Fix: Move brushes to the proper place in MediBang-esque layout. Thanks xxxx for reporting.
Fix: Replace the reset notice dialog with less disruptive on-canvas messages. If you continue drawing, the notice about saving the previous state will dismiss itself. Thanks to Blozzom, vipperz, xxxx, zheida and probably others for reporting.
Feature: Allow the client to translate server messages, rather than having them always be in English.
Fix: Make preferences dialog not use custom layouts anymore. Fixes the dialog getting stuck at an unusably tiny size on Windows, makes it work with Arabic and other right-to-left languages and allows resizing the dialog as well as scrolling its contents.
Fix: Drag-zooming (Ctrl+Middle Click by default) now zooms on the initial click location, rather than the center of the canvas. Thanks to Valaek for reporting.
Fix: Don't select layer when toggling its visibility.
Fix: Show a crossed-out folder icon for hidden layer groups, rather than switching to the layer icon for them. Thanks to Blozzom for reporting.
Fix: Make catchup explicit. Solves both the "stuck at 99%" problem during session resets and the canvas too be unlocked too early.
Fix: Give erase mode its own icon so that it doesn't get confused for the eraser slot. Thanks Geese for reporting.
Feature: Show if the current brush is in erase or alpha lock mode in the toolbar and allow resetting it via a click. Thanks Geese for suggesting.
Feature: Paste in center of the canvas (instead of the center of the view) when the pasted image size is equal to or larger than the canvas size. Thanks Meru for suggesting.
Fix: Single-pixel offset when pasting with an existing selection present. Thanks Meru for reporting.
2023-08-26 Version 2.2.0-beta.7
Fix: Make classic brushes not go brighter when smudging into transparency. Thanks to cada for reporting.
Feature: "Ratchet" canvas rotation shortcut, using Alt+Shift by default. Rotates the canvas in 15° increments. Thanks to Kvothen for suggesting.
Fix: Don't filter out undo depth messages when playing back recordings.
Fix: Make floating docks restore properly again. Thanks SnazComic for reporting.
Fix: Don't show tag options when right-clicking on a brush preset. Thanks Blozzom for reporting.
Fix: Properly disable blend mode combo box in layer properties dialog. Thanks xxxx for reporting.
Fix: Move chat status bar button into a legal position. Thanks Flz for reporting.
Fix: Correct various errors in text recording reading and writing.
Fix: Don't keep locally forked canvas states around. This reduces memory usage by a bunch, especially when drawing locally.
Feature: Add layer on current key frame button is now in the top bar of the timeline, next to the other key frame buttons. Thanks FallenArts for suggesting.
Feature: Show a notice when there's no tracks yet, rather than just showing an empty timeline grid.
Fix: Actually pick color when adding a color to the color picker through the color dialog.
Feature: Mark window when a chat message is received. On Windows, this makes the icon in the task bar orange. On macOS, it supposedly bounces an icon somewhere. On other platforms it probably does something similar, indicating which window is the one that got a message ready. Thanks Radio for suggesting.
Fix: Don't add current color to the palette when creating it. Thanks xxxx for reporting.
Fix: Make exported palettes not start using the exported location to save changes to. Thanks xxxx for reporting.
Feature: Allow muting notifications for a window. Thanks Blozzom for suggesting.
Fix: Enable the lock session menu option properly, it remained stuck disabled in some cases before.
Feature: Allow selecting and copying text from the pinned message (through the context menu, it doesn't take keyboard shortcuts.) Thanks Bluestrings for suggesting.
Fix: Don't claim that a layer is locked when it's just not visible in the current frame.
Feature: Make canvas rendering and preview painting asynchronous. This should make the UI much more responsive when e.g. changing layer visibility or transforming a large selection.
Fix: Properly handle canvas resizes while transforming a selection, it now no longer causes the source of the transform to get offset.
Fix: Show the current color properly on program startup.
Feature: Make the color wheel innards go from least to most saturated, putting it in line with how most other software presents it. This can be toggled in the preferences.
Feature: Holding Shift while moving a selection now keeps it along the closest axis. Thanks Kvothen for suggesting.
Feature: Implement brush export and make the brush import also understand classic brushes.
Fix: Make erasing with MyPaint brushes in indirect mode actually work.
Feature: Make sliders adhere to the chosen color space. Thanks to leandro2222 for suggesting.
Feature: Increase font size on emoji posted into chat. Thanks to leandro2222 for suggesting.
Feature: Allow adding an avatar from the login dialog.
Fix: Show main window maximized by default, because who wants a drawing program in a tiny window.
Fix: Give docks sensible initial sizes. Thanks to xxxx for reporting.
Fix: Don't tabify the now invisible-by-default timeline and onion skins by default. Thanks Ben for finding.
Fix: Make the flipbook remember your last crop, frame range and playback speed for the current window. Thanks Ben for finding.
Fix: Don't mark guests as registered. Thanks to xxxx for reporting.
Fix: Allow assigning a shortcut to open the Layouts dialog (F9 by default) and to the entries in the Help menu (nothing by default.)
Fix: Make reloading the last brush preset slot-specific, since it's nonsense to clobber your current slot with the last preset you set in another one.
Feature: Allow increasing and decreasing key frame exposure. Thanks Tabuley for suggesting.
Fix: Properly update the view when the canvas size changes, rather than leaving stale areas outside of the canvas.
Feature: Add shortcuts to swap the contents of brush slots to allow for a kind of toggling behavior using a single shortcut. Thanks xxxx for suggesting.
Fix: Make drawpile:// URL handling actually work on Windows. Thanks Sal for reporting.
Fix: Don't draw the curves for MyPaint brushes in the brush editor with the same color as the background grid.
Feature: Allow exporting animations from the Flipbook, using the cropping, frame range and speed set in it.
Fix: Pre-fill image saving file dialogs with the current filename, rather than the previously opened or saved one. Thanks xxxx for reporting.
Fix: Make filling transparent areas work better, rather than different surrounding colors making it behave differently.
Fix: Make layer folders work as sources for flood filling.
2023-07-31 Version 2.2.0-beta.6
Fix: Don't forget account password when entering a wrong session password.
Fix: Smoothe out the timing of strokes received over the network to not make them appear jerky because of the paint engine drawing them too fast.
Fix: Lock timeline controls when the canvas or user is locked.
Feature: Allow adding key frames and an associated layer or group with a single action.
Feature: Allow duplicating key frames along with their contents.
Fix: Put changing the timeline frame count behind a button, since it might get mixed up with the current frame on accident.
Fix: Slow down user markers only for MyPaint brushes and snappy for classic brushes as well as when a new line is started.
Feature: Add a flipbook button to the timeline dock.
Feature: Hide the indirect mode button in the brush dock instead of just disabling it, since it's hard to tell the difference otherwise.
Fix: Fixed a crash when resizing the canvas while an indirect stroke is in progress.
Feature: Allow viewing tile and draw context memory usage in the statistics dialog.
Server Fix: Make the server GUI exist again, it got lost in the build scripts.
Fix: Put unpinning behind operator permissions too, just like pinning.
Feature: Improved canvas view. It now allows scrolling further beyond the edges, has more sensible zoom steps and shows messages about locks and canvas transformations.
Fix: Make the canvas view not jigger anymore when you zoom it out at certain sizes.
Fix: Lock drawing when the user is locked.
Fix: Make KisTablet Windows Ink the default tablet driver on Windows, because the Qt one is pretty busted.
Fix: Re-synchronize the canvas when local desynchronization is detected, rather than just keeping going with a broken state for ages.
Fix: Don't reset the layer properties dialog when someone else changes a layer. This would cause renames to get reverted to the original name, for example, which is really annoying.
Fix: Make default layer actually select itself when joining a canvas.
Fix: Move notifications to their own preferences page, since the network page was out of room and squashed some controls.
Fix: Make preference notes larger so that they work better in non-Latin writing systems.
Fix: Make the password page of the login dialog not so annoyingly large.
Feature: Clarify when asking for a session password versus an account password.
Fix: Handle duplicated shortcuts by complaining about it, rather than doing nothing.
Feature: Add shortcuts to move the canvas around, for people who want to do it with something other than the arrow keys.
Feature: Enable auto-repeat for shortcuts where it's sensible, such as zooming, moving the canvas, undo, redo or switching between layers, frames and tracks.
Feature: Allow clicking and dragging the inspector around, so that it's easier to hit small sections.
Fix: Don't fire an assertion when moving a selection out of bounds. This is not an error.
Fix: Default color wheel to HSV mode, not HSL.
Fix: Stretch columns of the ban list so they don't look so weirdly cut off.
Fix: Don't revert settings with a default value that have an old version of some other value.
Server Feature: Relay listing errors to the client, rather than leaving them in silence.
Server Feature: Add maximum user count and closed state to listings.
Server Feature: Expedite listing refreshes when something important changes, like the NSFMness, title or closedness of a session.
Server Fix: Make the server GUI compatible with Qt6.
Fix: Make layer picking and the inspector pay attention to the layer view mode, so that picking layers when animating works properly.
Fix: Allow pixel brushes to have a minimum of zero pixels, rather than treating both 0 and 1 as 1.
Fix: Make chat line not scroll into oblivion when dragging over it.
Fix: Make the UI not mess up the sizes of docks and chat when starting it on Windows.
Fix: Make brush outline update even when docks are hidden.
Feature: Make Linux AppImage more compatible with older Linuxes.
Fix: Make secure connections work in the Linux AppImage.
Feature: Automatically join a session when given a URL on startup, rather than waiting for another button press.
Feature: Allow including session passwords into URL.
Feature: Implement an invite dialog, to make it easier to directly let people join a session without listing it publicly.
Feature: Show a warning when joining an NSFM session, since it might not be obvious to new users what they're in for.
Fix: Make newlines show up properly when the chat is in context mode.
Fix: Handle key presses and releases while dragging the canvas, since some people start the drag before pressing the key and would like their inputs to not be ignored.
Fix: Wrap server title in the login dialog to make it not stretch the window into eternity.
Fix: Allow opening links in the server title. They were turned into links, but those couldn't actually be clicked.
Feature: Implement a start dialog instead of dumping the user into a blank canvas and making them pick through the menu at the top. Replaces the join, host, new and update dialogs, unifying them into a single one instead that should reduce the number of clicks required to do pretty much anything.
Fix: Properly disable the NSFM session setting when it can't be changed.
Fix: Make the color palette work properly again, it was broken in various ways. Also makes the color picker look like it used to in 2.1.
Feature: Add a button to the color picker to pick from the screen.
Feature: Allow focusing the canvas by double-tapping the Alt key, as well as an assignable shortcut for it, which is Ctrl+Tab by default.
Feature: Show coordinates in the view status bar.
Fix: Put resize arrows at the corners of the selection, rather than offset on the far ends.
Fix: Don't displace selection by some subpixel amount when moving it around.
Fix: Prioritize sending of pings and pongs so that a lot of queued messages don't cause a disconnect.
Fix: Make filtering closed sessions actually work.
Feature: Make the server browser columns resizable.
Feature: Allow filtering duplicates in the server browser.
Fix: Make pinned messages persist again even when chat recording is turned off.
Fix: Don't grab colors from way too far away when using classic brushes.
Fix: Avoid colors tending toward black when smudging.
Fix: Make the cursors for the line, rectangle, ellipse and curve tools look less skrunkly.
Fix: Prefer Drawpile's own icons over system icons, to avoid nonsensical icons being used on Linux.
Made the new default theme actually the default theme, don't sync it with the theme from Drawpile 2.1.
Fixed saving and loading settings even when Drawpile 2.1 corrupted them.
Fixed saving of shortcuts and probably also some other settings that didn't let you clear stuff anymore.
Allowed ordering of list servers in the preferences again.
Made chat pins work properly again.
Allowed color picking when using the selection tool again.
Brought back the old averaging smoothing, as another option in addition to the new time-based stabilizer.
Miscellaneous fixes and prettifications in the settings dialog.
Fixed stabilizer settings being forgotten when closing the program.
Non-floating selections now stick around after hitting Delete, since you might want to delete on multiple layers.
Fixed some crashes when closing the window when it's in a funky state.
Made settings only save to disk when you're not doing anything in the program, to avoid causing chugging on slow disks.
Fixed Copy Merged to actually work and not just copy a blank rectangle.
Fixed floating docks not being resizable on macOS.
Fixed pasting images with weird color formats.
Added an NSFM option to the host dialog, letting you turn that on right from the get-go.
Called NSFM the same everywhere in the program, instead of mixing up "NSFM", "NSFW" and "age-restricted" in different places.
Added a context menu to the join dialog, if you want to copy stuff out of there.
Made popup messages ("Connecting..." and such) work on Wayland.
Made nearest-neighbor transform actually work, it ended up being forced to bilinear every time.
Made the stabilizer not run at a really low framerate on Windows.
Split Shortcuts and Canvas Shortcuts into two settings pages again.
Fixed shortcuts not getting assigned when closing the preferences without clicking somewhere else first.
Made conflicting shortcuts actually show errors instead of silently doing nothing.
Fixed tool slots swizzling their colors when multiple windows were open.
Allow holding left-click on the timeline frames and scrubbing left and right for a quick preview.
Pick better layers when switching animation frames and tracks, so that you don't end up stuck on layers that aren't actually in your current frame.
Fixed a really stupid bug that caused sessions to seemingly revert to 2.1 mode.
You can now add keyboard shortcuts for a whole lot more stuff, such as swatch colors, dock visibility and pretty much all actions you can pick from the menu that inexplicably didn't let you assign shortcuts to them before.
Fixed the authentication dialog messages looking wonky.
Made the session password dialog look less squashed.
Made links in server messages clickable.
Brought back the version check in a way that should work also for beta versions, on all platforms and in other languages.
Allowed saving the log file on Android, since you can't view it directly.
Made alert chat message backgrounds less bright.
Updated Chinese, German and Portuguese translations.
2023-06-14 Version 2.2.0-beta.4
Android support
New paint engine again (Drawdance)
More themes, nicer default theme
Improved animation support, with a timeline, tracks and keyframes
Adjustible undo limit
Local canvas backgrounds
Better canvas shortcuts
Real stabilizer, based on Krita's
Indirect mode for MyPaint brushes
Full-fledged brush editor
Better MyPaint brush import
Saving and loading of application layouts
Changed default layout that works better on small screens
Tablet-friendly sliders, taken from Krita
Fill tool gap-filling, feathering and improved size limiting
Nearest-neighbor transform option
Compatibility with 2.1 sessions
Docks now have a menu instead of a close and undock button
Docks can now be made undockable, if you want to keep them floating
Top and bottom regions of the window are now dockable
Docks can now be nested
Vertical tabs option for side-mounted docks
Holding shift gives you rearrange mode by default
More and more useful brush presets by default
Chat now has multiline support
Preferences tidied up a bunch, internal settings system reworked
Tablet drivers on Windows can now be switched without restarting the program
Reset snapshot interval and amount can now be adjusted
Parental controls can be hidden when locked
forceNsfm option for the server
Messages from server GUI will now be alerts
Indirect drawing mode now works properly
Hiding docks no longer jiggers them around
Transforms now preview on the target layer
Session resets no longer cause the view to jerk around or a layer switch
Session resets now prompt for a save
Layer opacity and blend mode controls are back in the layer list dock
Recording and recording indexes now handle undos properly
Recordings can be played back at fast speeds again
(De-)selecting layer groups no longer makes a clicking noise
You now have to be operator to pin a chat message
Moving your own layer into your own group no longer requires omnipotence
Switching away from the annotation tool no longer conjures a blank annotation
Linux and macOS now properly focus the canvas when it's interacted with
Massively improved development and release infrastructure with CI and such
Weblate integration
Development tools, like tablet event logging, debug dumps etc.
2022-08-20 Version 2.2.0-beta.3
Added support for MyPaint brushes
MyPaint style 15 bit color channels
Removed popup notifications for join and leave events
Fixed skew when scaling a selection from the top-right handle
Fixed mouse droppings when for large brush outline widths
Fixed laser trail persistence selection
Split color wheel, sliders and palette into separate docks
Fixed "no guest logins" checkbox eanbled state
Fixed session snapshot missing the timeline
Enable timeline editor only when given permission
Active layer is now shown in the timeline editor
Next/previous frame action also autoselects layer
2022-08-11 Version 2.2.0-beta.2
Fixed smudge color sampling mask offset
Fixed annotation loading
Added support for /alert chat command in private chats
Fixed crash if a group layer was moved by layer deletion
Fixed layer lock status updating
Fixed preserved chat mode
Annotation creator name is now shown in the dock titlebar
Restored palette write-protect feature
Fixed brush slider limit preferences
Layers hidden in frame/onionskin mode are now grayed out in the layer box
Modifying the timeline now updates the view immediately
New identicon style
2022-08-03 Version 2.2.0-beta.1