- in prep for a network https upgrade, the client can now detect and escalate to https when making connections to hydrus services
- import/export to png and clipboard now supports multiple objects at once!
- rewrote the manage subscriptions dialog to work on the new panel system
- the new manage subscriptions dialog has a listctrl and a sub edit dialog
- the new manage subscriptions dialog has the same add/export/import/dupe/edit/delete buttons as the manage scripts dialog
- subscriptions are now importable/exportable, including en masse with the new multiple object import/export support!
- the new manage subscriptions dialog has retry failed/pause-resume/check now/reset buttons for easy mass subs management
- the edit subscription panel has a bit of a layout makeover
- the edit subscription panel now updates itself as its buttons are hit
- the edit subscription panel disables buttons that are not applicable
- subscriptions can now be renamed!
- cleaned some misc subscription code
- relabelled initial and periodic file limit in the subscription edit panel
- middle-clicking on the main gui's greyspace (e.g. to the right of the notebook tabs) will spawn the new page chooser!
- created a simple HydrusRatingArchive class--will do more with it in future
- added ffmpeg, python, and sqlite versions to the help->about window
- harmonised daemon code
- added a new class of daemon that will not fire while a session load is occuring
- subscriptions, import and export folders, and file repo downloads now use this new daemon
- cleaned the way background daemons check for idle
- expand/collapse panels now notify the new kind of toplevelwindow that a resize may be needed when they switch state
- time deltas (like on subs edit panel or a thread watcher) now render more concisely ('7 days' instead of '7 days 0 hours')
- serialisable object png export panel now has a width parameter
- fixed a bug where tags that begin with unicode digits were accidentally identifying as numbers for the purposes of sorting and throwing errors on convert fail
- the media viewer can handle some more unusual content update combinations--for instance, if it cannot figure out which media to show next, it will revert back to the first image rather than displaying an undefined null mess
- updated and cleaned a bunch of my old misc encryption code
- misc cleanup