- qt:
- hydrus now uses Qt for its client's user interface, migrating from wx. this is thanks to a huge effort by a user, who delivered converted code for hydrus dev to finish off
- a number of hacks and patches remain to compensate for old systems, which hydrus dev will slowly clean up in normal work. ui bug and layout issue reports would be greatly appreciated
- shortcut storage had to be converted from fixed wx enums to an independant system. there is a small chance that one of your shortcuts, particularly if it is on the numpad, may have been converted wrong (unusual Enter/Return buttons may be hit here). if one is not working, please check what hydrus thinks it is and try re-entering it
- added tentative support for 'Mode_switch' keyboard modifier, for X11 users (and perhaps some users' AltGr?)
- autocomplete results can now float in a popup window in dialogs like manage tags! they'll still embed by default, but there are now separate float/embed options for 'main gui' and 'other frame' a/cs
- autocomplete results can now float in linux and macOS ok!
- page drag and drop now navigates as you drag, so dropping into a page of pages works by you hovering over it and then dropping in the tabbar below, inserting exactly where you want the page to be
- a couple of text inputs in the program--the watcher and gallery search pages' text inputs, particularly--now use nicer 'placeholder' text, which isn't real and only shows as grey text when the input is empty
- for now, moved to icons for thumbnail 'has audio/duration' indicators, rather than the custom labels
- to run the hydrus client from source, qtpy is now needed. either pyside2 (default) or qtpy5 is needed. QtCharts is optional. wx and matplotlib are no longer needed
- .
- misc:
- 'archive/delete filter' now appears even when no file is focused. it also appears when no files are selected--and will apply to everything
- the system predicate edit panels now support static buttons for easy one-click select for common predicates. duration, has audio, limit, and num tags now have these
- system:duration and system:num tags now render a special label if they are >0 or =0
- system:untagged is now removed from the normal list
- fixed a critical cpu inefficiency in the file maintenance manager's new always-on maintenance, which was lagging several users' browsing sessions while it was working
- fixed ctrl+mousewheel tag autocomplete results navigation to skip over multirow parent results
- fixed an issue where resetting to default bandwidth rules for a network context would not update the ui properly
- fixed a bug when adding a parent/sibling from autocomplete results list
- the serialised png export folder now catches when a manually inputted export path's directory does not exist
- reduced metadata update lag of pages with very large media collection groups
- the inaccurate 'add tags based on filename' button is now called 'import with tags'
- fixed a database UNIQUE issue when two duplicate gui session save calls happen within one second
- the server's lock_off command now works with the Hydrus-Key header auth (rather than hanging indefinitely wew)
- the server now caches hashed access keys in the session manager, in memory, to avoid a db hit on access-key based reauthentication, and in instances where this authentication requires a db hit, now cleanly provides an appropriate 'serverbusy' error
- improved some media object memory management and speedy cleanup
- improved boot fail graceful exit
- removed a bunch of defunct flash (swf) hacks from media viewer code
- bunch of misc non-qt cleanup as I went through the code
- fixed a bug with rendering network credentials for human display
- cleared out the ancient tag archive sync advanced help and added a stub for the new tag migration window
- various help updates around wx->Qt