windows
zip: https://github.com/hydrusnetwork/hydrus/releases/download/v252/Hydrus.Network.252.-.Windows.-.Extract.only.zip
exe: https://github.com/hydrusnetwork/hydrus/releases/download/v252/Hydrus.Network.252.-.Windows.-.Installer.exe
os x
app: https://github.com/hydrusnetwork/hydrus/releases/download/v252/Hydrus.Network.252.-.OS.X.-.App.dmg
tar.gz: https://github.com/hydrusnetwork/hydrus/releases/download/v252/Hydrus.Network.252.-.OS.X.-.Extract.only.tar.gz
linux
tar.gz: https://github.com/hydrusnetwork/hydrus/releases/download/v252/Hydrus.Network.252.-.Linux.-.Executable.tar.gz
source
tar.gz: https://github.com/hydrusnetwork/hydrus/archive/v252a.tar.gz
I had a busy but great week. I fixed some things, moved some long-term jobs forward, and made an important improvement to the shortcut engine.
duplicate filter
Skip this if you aren't interested in testing the dupe filter in an unfinished and currently frustrating state!
I did not have time to add the content merge options, but I have added the batch processing workflow, which I am generally pretty pleased with. I have simplified last week's complicated shortcuts and set middle-click now to 'go back one', just like the archive/delete filter. If you are enthusiastic about testing this, please try the duplicate filter out again and let me know if it makes sense.
Unfortunately, while I was testing this more this afternoon, I discovered the neat new algorithm I have for presenting more useful pairs in order is running super slow on real world clients with tens of thousands of potential dupe pairs. It takes my client 1-20s to launch the dupe filter now, which is obviously something I need to fix for next week.
But if you are prepared to sit at 100% CPU for a little bit, please try the dupe filter for a little bit. If you like, you can report how many 'potential matches' you have and how long it took to launch.
I am confident I can get the merge and delete content options ready for next week, at which point this should be a functional prototype!
shortcuts overhaul ongoing
In doing some duplicate filter stuff, I first needed to do a bit more on the new shortcut engine I have been cooking up. This job started being simple and then spiralled out into a significant rewrite/update of the core shortcut processing systems across the program.
The upshot here is that I have converted the old shortcuts in the file->options dialog to a new and better engine and I have completely replaced 'custom filters' with a single button that just turns a media viewer's shortcut sets on and off dynamically.
The 'shortcuts' page of file->options is gone, and now there is a dedicated and centralised file->shortcuts. The old 'options' shortcuts have been split into multiple smaller 'reserved' sets that are only active in certain contexts. For instance, the 'media_viewer' shortcuts are active on any media viewer canvas, including the preview window. Sometimes multiple shortcut sets can be active at the same time.
The change was so significant that I have reset all these main shortcuts back to default. There are some new defaults, as well–ctrl+r now does 'remove_file_from_view'.
In the same manage shortcuts dialog you can create new 'custom shortcuts' sets that you can turn on and off using the new keyboard button icon on any media viewer's top hover window. These custom shortcuts support content 'commands', so you can make 'ctrl+t' mean 'give the file "tag later" on "local tags"' or '1' mean 'give the file "1/5" on rating service "my rating"'.
If you used the old 'custom filter' system, you should be familiar with this stuff. Your old custom filter sets are now 'custom shortcuts'. Since custom shortcuts sit on top of the existing shortcuts, you should go into your custom sets and clear out old and invalid 'regular' actions (like 'archive' and 'frame_back') that custom filters inherited from the old 'default' set.
There is more I want to do with this system. Not everything is working yet, but I expect to finish off this update step over the next few weeks. I would appreciate feedback. If you want to recreate your preferred 'reserved' shortcuts, you can, but I will likely be resetting the whole system again in the near future, so you may wish to wait.
arch linux gif crash
Users on the Arch Linux package (or who otherwise run from source) may have encountered a crash when viewing any gif. This was due to an imperfect opencv/ffmpeg release. The problem is now apparently fixed and a new version of opencv is out, so if you have had this, please update your libraries again!
full list
- the duplicate filter now processes pairs in batches and hence supports 'back' actions to revisit decisions. you will be prompted every fifty or so pairs to commit and checkpoint your progress
- the duplicate filter now presents related pairs together, rather than picking at random
- fixed a bug in duplicate filter shortcuts initialisation
- simplified duplicate filter default shortcuts (these will be overwritten on update) to only use simple left- and right-click for 'this is better' and 'alternates', since those are by far the most common actions. middle-click now goes back, like the archive/delete filter
- converted old 'main shortcuts' system to the new shortcuts system, also splitting it up into 'media', 'main_gui', 'media_viewer', and 'media_viewer_browser' constituent parts that will be applied in different contexts
- because the change is so significant, all clients will have their old 'options' shortcuts reset to the new default–I expect to expand shortcuts further in the next few weeks, so this default-overwriting will likely happen again, so you will likely wish to wait before recustomising your basic shortcuts
- completely eliminated the old main shortcuts system–all references now bodge with the new system to varying neatness
- as the old main shortcuts system no longer exists, the 'shortcuts' page on file->options is gone–all shortcuts are now managed through file->shortcuts, which is a completely revamped version of the custom filter shortcuts editing dialog
- selecting shortcut commands is significantly simpler for the reserved shortcut sets
- all media viewers with hover windows now have a 'keyboard' shortcuts icon button on their top hover window–it links to the manage shortcuts dialog as well as the current active custom shortcut sets and default custom shortcut sets
- as the above system supercedes the old custom filter system, custom filters are completely removed from the program! your existing custom shortcut sets will survive, but you probably want to purge them of all the redundant junk they still have
- all the media canvases use the new shortcuts system
- the canvas frame uses the new shortcuts system
- the thumbnails canvas uses the new shortcuts system
- the main gui uses the new shortcuts system
- some other misc places use the new shortcuts system
- most simple shortcut command actions have been renamed to be more readable
- some shortcut actions, like zoom stuff, is no longer hardcoded!
- mouse shortcuts are still not widely supported!
- the shortcut command edit dialog now throws a veto-driven error message if you try to ok on an invalid command (a blank services choice or action string, that sort of thing)
- ctrl+r is now 'remove_files_from_view' by default. the old 'show_hide_splitters' is now ctrl+shift+r by default
- the preview canvas, if focused, now responds to many normal media viewer shortcuts (content stuff like archive/manage tags, and canvas-specific like frame back/forth, zooming and panning)
- the new shortcut system now interprets double-clicks of any mouse button to be a second single click
- the new shortcut system correctly 'flips' ratings on and off, rather than always 'setting' to the chosen value. optional 'set only' support will come in the near future
- more shortcuts will correctly and reliably propagate to canvases when any part of a hover frame has focus
- fixed a conflict between the new shortcut system and taglists, which were no longer accepting otherwise interesting keys, like enter
- created a shortcuts manager cache that deals with a bunch of the shortcut workflow centrally
- completely eliminated the old accelerator table/menu command system for the main gui window
- lots of misc shortcut-related work
- fixed wildcard file search predicates that are on a specific file service and have no namespace (like 'mar*')
- certain routines that can cause mass refreshing of the menubar (like import folders) will now not spam (and often queue this spam up and hang the gui) the menu so much. the menubar will now always collapse multple overlapping refresh calls to reduce cpu load
- fixed a focus-None issue in the new hover window focus detection code
- improved some more focus detection and comparison logic–quick rating-scrolling in the media viewer should be less janked
- improved 'touch' drag event detection and improved media canvas cursor hide/show logic in general
- fixed '&' display in notebook page names
- fixed '&' display in some common dialogs' text
- wrote a new statictext class that deals with '&' better and in future will autowrap and maybe some other stuff and then switched most of the simple instances of wx.statictext over
- updated some out-of-date server help r.e. admin service initialisation
- converted a little of the help on custom filter->custom shortcuts. I'll do more in future
- wrote a simple checkboxlist dialog
- misc cleanup
next week
I want to get the duplicate filter ready for proper use and wider testing.