v4.0.0
Update 2021-04-12: Windows binaries have been updated to include following critical fixes:
Features
-
Synchronization plugin newly keeps order of new items consistent between
multiple application instances (#1558). Newly added items in one instance
will appear at the top of other instances. -
Search now finds separate words if regular expressions are disabled (#1569).
Searching for "foo bar" will find items containing both "foo" and "bar" and
the relative position of words no longer matter. -
System notification popups are now used instead of own implementation.
-
Item rows in main window and tray menu are now indexed from one instead of
zero by default (#1085). This can be reverted to the old behavior using
commandcopyq config row_index_from_one false
. -
A tag can be marked as "locked" in configuration. Items with such tags cannot
be removed until the tag is removed or "unlocked". -
Command line completion for bash (#1460). Thanks, Jordan!
-
History combo box is focused when Action dialog opens to easily recall recent
commands. Note: Focusing combo boxes is not supported on macOS. -
Web plugin has been completely dropped (unmaintained with performance and
possible security problems). Simple HTTP rendering is still supported by Text
plugin. -
Advanced option
window_paste_with_ctrl_v_regex
to change default paste
shortcut Shift+Insert to Ctrl+V for specific windows (only on Windows and
Linux/X11). This is regular expression matching window titles. -
New advanced options allow to set intervals and wait times for copying,
pasting and window focus:script_paste_delay_ms
- delay afterpaste()
, default is 250ms (#1577)window_wait_before_raise_ms
window_wait_raised_ms
window_wait_after_raised_ms
window_key_press_time_ms
window_wait_for_modifiers_released_ms
-
Format "text/plain;charset=utf-8" is now preferred to "text/plain".
-
FakeVim: Auto-indents when adding new lines.
Scripting
-
New scripting engine. This adds some new functionality, better ECMAScript
support, improved performance and would allow Qt 6 support in the future. -
Argument
--start-server
to both starts the app if not yet running and runs
a command (#1590). For example,copyq --start-server show
would show main
window even if the app was not started yet. -
Accessing a missing plugin from script throws an human-readable error and
show an popup if uncaught (for example, "plugins.itemtags" could throw
"Plugin itemtags is not installed"). -
Script function
setPointerPosition()
throws an error if it fails to set the
mouse pointer position. -
Fixes for
NetworkReply
objects to properly fetch data when needed (#1603).
Script functionsnetworkGet()
andnetworkPost()
now wait for data to be
fetched. New script functionsnetworkGetAsync()
andnetworkPostAsync()
can be used to make asynchronous network request. Property
NetworkReply.finished
can be used to retrieved completion status of a
request. -
New script function
styles()
to list possible application styles and option
style
to override the default or current style.
Platforms
-
Wayland support, notably clipboard access and window size restoring.
-
Windows: Builds are now 64bit (built by Visual Studio tools).
-
Linux: Selecting the app icon in the desktop environment using the installed
entry in the application menu or launcher, shows main window immediately.
Previously, the app started silently in tray or minimized state. -
Linux/X11: Fixes copying from VirtualBox (#1565).
-
macOS: Fix version information (#1552).
User Interface
-
The default theme is kept consistent with system theme (#1613). This also
allows to use new special placeholders likedefault_bg
anddefault_text
in custom style sheet files. -
Command dialog always shows the command type at top.
-
Updated icons (Font Awesome 5.15.3).
-
FakeVim: Command line not supports better text interaction (select, copy,
cut, paste).
Fixes
-
Fix crashed with some custom system themes (#1521).
-
Fix importing old saved tabs/configuration (#1501).
-
Fix trailing spaces in copied commands.
-
Fix filtering shortcuts in preferences.
-
Fixes for window geometry restoring.
-
Tray menu items are updated only just before the menu is shown.
-
Avoid storing "text/richtext" by default since displaying of this format is
not supported. -
Better performance when updating synchronized items.
-
Various appearance and theme fixes (#1559).
Various
-
Code base now follows C++17 standard.
-
GitHub Actions now continuously build and test for Linux and macOS, and
provide development builds for macOS.