+ New feature
* Bugfix
~ Change
- Removal
! Security
. Comment
~ Site html changed, update the deviation link selector.
! Update dependencies.
* Fixed a small bug in the downloader when download token expired.
~ Change how key presses are handled, now works with other languages (e.g. if you switch to a different language, the browser receives a character different than the bound one. Now works based on key pressed, rather than character received). It does however assume QWERTY layout (sorry QWERTZ/AZERTY/DVORAK folks).
! Update jquery (and all other node packages) after github complained with a security advisory for jq<3.4.
* When download token was expired, page was reloading when it didn't need to.
* Fall back to old downloader as workaround for Tampermonkey 'not_whitelisted' error.
~ Unify name handling between named images (where the image URL contains a name) and unnamed images (i.e. where I have to generate a name from the page data). Previously it didn't follow the URL pattern, now it does(underscores everywhere). I left a minor difference: it preserves capitalization (URLs are all lowercase).
~ Update node modules and rebuild.
~ Add da's new CDN domain to the allowed origins. Requires rebuild/copy to tampermonkey.
~ Change file names to the new naming scheme (with _ instead of -).
* Fix some edge cases with file naming - downloads could end up with the wrong extension.
+ Now auto-reloads page if you try to download and the download token has expired. Won't reload if there is an unsubmitted comment. Timing based (10 minutes).
~ Handle filenames properly after dA's move to a new CDN
* Fix an osbcure race condition between script and dA when flipping through deviations too fast(by checking if the deviation on the element matches the current address).
* Fix a silly little bug that made gallery hotkeys trigger wrong.
~ Refactored downloader to do its job better(and only its job). Also promisify downloader.
+ Added the ability to download deviations directly from the gallery using alt+click. Can also use alt+shift+click to download multiple.
* Async the DL button note (it wasn't showing when deviations loaded via dA's SPA functionality too slowly)
+ Add a dev build script without watch.
+ Massive overhaul of the entire script, using modern JS, webpack as a build system, ES6, modules, etc. The whole shebang.
+ First public release. YAY! 🎉🎉🎉
+ Switch to local file format for easy editing in external editors. (Gotta enable access to file URLs for the extension)
+ Switch out the old download function for the MUCH faster native GM_download (old one is still there as fallback)
+ New feature: Shift-click on a deviation in galleries opens it and the next 4 deviations in new tabs.
* Minor code cleanup
~ Reformat code
* Fix some longstanding bugs on page navigation during notifications browsing and double download issues.
+ Allow backgorund colors in overlay message.
+ Allow filtering by artists, with custom message and per-artist removal.
~ Fix the address match to the new (IMO, less friendly) URLs
~ Ported processing to the new browse stream. As a result of changing the overlayMessage function, it no longer properly overlays on gallery pages.
+ Remove the ad notice banner. Done via .remove(); while a click dismisses it on successive pages as well(and we can simulate it), they probably gather data from that and I don't want them to.
+ Support for dA's own AJAX.
* Fix download for old deviations. Decided against putting hashes on old-style deviations.
~ On artist pages only filter the first deviation.
~ Minor changes to various functions.
* Download now timeouts based on image size.
* Disable hotkeys when writing comments.
+ Added keyboard shortcuts for saving images(and other things with a download button). Won't yet download text.
+ Both single and multi-bind possible.
. Right now it uses my own server for the external dependency. Which is as of now necessary for Chrome(may not be for other browsers or later versions of Chrome).
. There's a github of it, plus the minified version is pretty small itself and could be simply inlined in the script.
+ Also added shortcut for opening images(well, the download button link) in a new tab.
. The one problem is that closing that tab puts you on the next tab, not the previous tab.
. Though... perhaps it would be possible to refocus that tab: @grant window.focus and hooking GM_openInTab's onclose event.
* I am a moron. (i.e. fixed delayed load condition)
* Allow duplicates in the artist filter(by making sure the check happens only once).
* Various small fixes. Global variables up top for now.
+ Deviation pages display total pixel count on the download button.
+ Displays image dimensions where available(.gifs don't offer that)
+ Filter by artist
+ Filter by dimensions
+ Overlay or remove filtered content.