Remove shift+click to close tab binding
It is an odd binding that conflicts with typical behavior
where shift click selects multiple items and there is
already the middle click shortcut to close tabs quickly.
Closes #918build: Re-add support for the legacy perl api
This was accidentally left behind, expose it beind an option as with the old build system but default to false now. Enough time has passed and only distros that care about it can enable it.
build: perl as a dependency in meson.build
With the switch to meson, the problem previously fixed in #1822 came back. The build system might pick up the installed hexchat-config.h instead of using the header in the source directory, as the compiler arguments would be in the order of "-I${prefix}/include -I..". It seems that the c_args in meson are always put to the front of the compiler arguments, in order to be able to override any include paths from dependencies. However, this was not the intention here, so perl should also be modeled as a dependency. This ensures that the arguments with local include directories come first.
The switch to the meson build system broke plugins on macOS. GNU libtool builds shared libraries with ".dylib" and shared modules (plugins) with the extension ".so", but meson is using ".dylib" for both. Although overriding the name_suffix for shared_module() in meson is possible, this would be messy for other platforms as there is no way to query the default. Therefore it seems like we have to go with ".dylib" for now on macOS. However, G_MODULE_SUFFIX is defined to ".so", because glib follows what GNU libtool does. Therefore define a separate preprocessor macro that has the correct extension. See: mesonbuild/meson#1160
Fix sending PASS with spaces or starting with :
Closes #2186 Closes #1550
build: Add with-appdata option
This is mostly useful to avoid a newer gettext dependency
for translating the appdata file but it is also just useless
data for some distros without any app store.
Closes #2219