A new UI skin is available, under Extras > Themes > Winter, featuring winter and holiday icons, festive fonts, and a palette with seasonal colors and peppermint patterns.
Merry Christmas and happy Hanukkah!
Better History
New: Jump to any point in the document's history, forwards or backwards, with Edit > History or Ctrl+Shift+Y.
Click on Text in the history view to go back to text editing.
You can return to when a selection existed.
Note: these states are skipped over with normal Undo and Redo, so you need to use the History window.
Branching history: if you undo, and then make changes, you can get back to everything.
Future states are preserved.
Warning: History is not saved with the autosave. Document history will be lost if you refresh the page, or close the tab, or if the tab crashes, or if you close or restart your browser, or likely if you're just on a phone and the mobile browser loses focus.
Improved Mobile Support
New: Use two fingers to pan the view.
I recently made it easier to grab handles for resizing things.
With that, combined with multitouch panning,
JS Paint is much more useable on a phone.
Caveat: It's slow on some devices, and parts of the interface are still too small for touch.
Polygon, Text, and Select
Handles are now way easier to drag, with extended click targets, similar to Paint from Windows 7.
It's not unreasonable to use with a touch screen now!
This applies to selections, textboxes, and the main canvas handles.
The Text tool now perfectly previews the pixels that will be placed on the canvas.
What you see is what you get!
Also it retains all browser editing behavior, like spellcheck,
using a convoluted, yet elegant overlaying strategy.
(I prototyped this here
and here if you're interested.)
With the fill-only option selected, the Polygon tool now previews with inverted lines, like MS Paint does.
(When you finish the polygon, the boundary of the shape matches the preview exactly,
because it actually does draw a stroke, just the same color as the fill.)
Zoom To Mouse
New: The Magnifier now lets you zoom to a specific location,
showing a preview of the new viewport.
Also, when zooming out with the Magnifier,
or changing the zoom from the toolbar or menus,
the top left corner of the viewport is now kept anchored.
Also, pasting a selection will now go to the top left of the viewport,
instead of the entire document.
The Grid, Custom Zoom, and Dynamic Cursors
New: The Grid. Zoom to 4x+ and use View > Zoom > Show Grid or Ctrl+G to enable.
This works with browser zoom as well to provide crisp gridlines even if you zoom in with your browser.
New:View > Zoom > Custom Zoom,
including an actually-custom numerical zoom option, unlike MS Paint.
New: Dynamic cursors for brush and eraser,
so you now have a preview of exactly where the tool will draw.
Also, in the event that your browser clears canvases to free up memory,
you should be more likely to be able to undo to get back to a useful state.
Full Clipboard Support
JS Paint now lets you copy real image data to the Clipboard, both with keyboard shortcuts and from the Edit menu.
This feature is available in Chrome 76+. Other browsers don't support it yet, as of Sep 2019.
Also: paste a URL of an image, and JS Paint will load it.
(This is an alternative to File > Load from URL.)