24 October 2016

Directory Opus 12.2.4 (Beta)

Directory Opus 12.2.4 (beta) is now available for all Opus 12 users.

This is a preliminary, beta release. Translations may not be fully up-to-date and some English text may appear in non-English versions.

This is an Opus 12 update. If you are using Opus 11 or earlier then you should not install this beta unless you want to upgrade to Opus 12.



  • Added an option to Preferences / File Operations / Progress Indicators to disable the progress indicator speed graph.
  • When copying two or more files the progress dialog now shows the total bytes copied / remaining as well as the values for the current file.
  • @if, @disableif and @hideif can now test if a command would be enabled rather than toggled. E.g. @if:enabled Go GROUPEXPAND=*.
  • It's now possible to assign the "stop on match" label to a file by itself, to prevent wildcard/label filters from applying to it without actually specifying a label explicitly.
  • Added workaround for Google Drive opening its folder using the \\?\ prefix even when it is unnecessary. (Things worked, but it was unsightly.) The prefix is now removed if it isn't needed.
  • The folder tree and file display should now update immediately in response to assigning labels to drive roots under the This PC (My Computer) folder.
  • The Prefs STYLESAVE dialog now asks if you want to replace an existing style instead of failing.
  • The Go DRIVEBUTTONS command would incorrectly omit MTP devices if any arguments were used (unless "mtp" was specified as well).
  • If the viewer custom title contained %L (for file label), the viewer would not correctly update file labels / status icons when advancing to the next image.
  • The TGA plugin's minimum size limit has been reduced from 45 bytes to 19 bytes, to allow extremely small TGA files to be viewed.
  • The Preferences / Favorites and Recent / Jump List page now supports Layouts that have been organised into folders. Note that on the jumplist itself they will appear as a flattened list.
  • Fixed problem that could cause problems with FTP in certain specific situations (e.g. with two single Listers, clicking the Up button in the FTP Lister while copying a file to it would cause the transfer to be aborted).
  • Music Comment in the file display and the scripting mp3comment field will now return comments up to 1000 characters long before truncation, instead of the old limit of 100.
  • If Rename is used in simple mode (Rename SIMPLE) and a wildcard pattern isn't entered, the rename dialog will now re-open automatically allowing the next selected file to be renamed (compatibility with Opus 11).
  • The rename script editor now works correctly in the Light edition.
  • Moving the mouse over the text viewer no longer causes the cursor to flicker between pointer and caret.
  • Fixed some problems with image marking in MTP folders.
  • Scripting:
    • Added OnFlatViewChange script event, to allow a script add-in to detect changes to the flat view mode in a tab.
    • Script dialogs now generate resize events when the window is resized. Must be enabled by setting Dialog.want_resize to True. Msg.cx and Msg.cy provide size information.
    • Added DialogListColumns.GetColumnAt method.
    • Added DialogListColumn.resize property - set to True to specify a column that auto-resizes with the listview.
    • Added NOSCRIPT argument to the Close command to stop the command triggering the OnCloseLister event.
    • The StringTools.Decode script method now skips over the UTF-8 BOM when decoding a Blob containing UTF-8 encoded data.
    • Fixed problem with Rename script custom fields where default field values would not be valid the first time the rename preview was refreshed.
    • The script Command object now correctly runs functions asynchronously if SetModifier("async") has been called.
    • Fixed bug which could cause the program to crash if a script dialog encountered a script error while processing the dialog message loop.
    • Fixed problem with OnCloseLister script event causing infinite loop/stack overflow if the event handler invoked the Close command to close the same Lister.