summary refs log tree commit diff stats
path: root/src/fe-gtk
AgeCommit message (Collapse)Author
2022-12-18Merge remote-tracking branch 'upstream/master' into defaultSoniEx2
2022-09-20Support whitespace between language codesAndreas Schärtl
So far, when configuring multiple spell check languages, Hexchat requires the user to separate multiple entries with commas and only commas. This patch allows users to also enter whitespace, e.g. de_DE, en_US as is common in many applications.
2022-08-29Fix various compiler warnings.Sadie Powell
fish.c: -Wincompatible-pointer-types fkeys.c: -Wmisleading-indentation proto-irc.c: -Wincompatible-pointer-types util.c: -Wdeprecated-declarations xtext.c: -Wmaybe-uninitialized
2022-08-26notification_plugin_deinit: Set function signature to int(void *)Adrian
Previously the function signature was inconsistent throughout src/fe-gtk/plugin-notification.{h,c}: One file had the signature int(void), while the other had int(void *). Since this type mismatch might lead to problems (especially with LTO) and the (possibly provided) function argument isn't used in the function's definition, this commit sets int(void *) as function signature for both the declaration and definition of the function. Fixes: https://github.com/hexchat/hexchat/issues/2726
2022-04-21Do not allow plugins to eat Close ContextSoniEx2
These are used for clean-up and letting them be eaten may lead to plugins getting confused about which data belong to which contexts.
2022-04-16Change preferences sub-dialogs to be modalPatrick Griffis
This solves the issue where the parent dialog is closed and then the child dialog is used. This is however only a partial fix: - Many other dialogs throughout the codebase do not currently have parent windows and need to be refactored. - Not all window managers respect modal so users can still trigger bugs. We can be more defensive against this but it requires more refactoring. Closes #2686
2022-03-26notification: Don't print failure to load backend in UIPatrick
This isn't actually helpful information to users generally Closes #2152 Closes #2684
2022-01-06Add missing headerPatrick
https://github.com/hexchat/hexchat/issues/2652#issuecomment-1007015314
2021-12-22Update commentPatrick Griffis
2021-12-22Be smarter about conditionally escaping URIs that are openedPatrick Griffis
Fixes #2659
2021-10-14Add -NOOVERRIDE flag to GUI COLOR. (#2644)Nolan Lum
2021-10-01Explicitly set app icon in notificationsPatrick Griffis
2021-07-13Fix whitespace issuesPatrick Griffis
2021-07-13Remove libnotify dependencyPatrick Griffis
Instead just talk directly to the service. This fixes *sending* a notification being blocking IO.
2021-07-13build: Misc cleanup of optionsPatrick Griffis
Cleanup of option names, use features where applicable, and printing of summary.
2021-07-12Avoid direct use of libproxyMichael Catanzaro
Since hexchat already depends on GLib, it's better to use GProxyResolver instead. This might use libproxy, or not, as appropriate. P.S. This removes a memory safety issue because proxy_list is allocated using malloc(), not g_malloc(), and therefore using g_strfreev() is incorrect. The proper way to free the proxy list returned by libproxy is to use px_proxy_factory_free_proxies() (but nobody does that because it was added in libproxy 0.4.16, which is somewhat recent).
2021-07-10Fix allowed characters when escaping URIsPatrick Griffis
Closes #2608
2021-06-20Implement support for strikethrough text.Sadie Powell
https://defs.ircdocs.horse/info/formatting.html
2021-06-17Switch back to using newserver as the default server name.Sadie Powell
2021-06-17Default new servers to use TLS if built with OpenSSL.Sadie Powell
2021-06-17Always pass a valid URI to gtk_show_uri()Patrick Griffis
This can fix issues like a crash when invalid characters get passed through.
2021-05-23notification: Implement notification option for channelsBakasuraRCE
2021-05-23Change default network to Libera.ChatPatrick Griffis
2021-05-23Fixed notifications-winrt compilation errorDjLegolas
Both platform.winmd and windows.winmd were unable to find so added the location of each to the compiler.
2021-05-23Updated Toolset to v142DjLegolas
2021-05-23Add a workaround for icons not scaling right on HiDPI screens. (#2573)Sadie Powell
2020-09-07Use pango_font_metrics_get_height() to calculate font height (#2500)John Levon
2020-08-05Hide Focus Channel when the selected channel is already focussedPaul Wise
When the channel is focussed, the menu item does nothing so it isn't useful to have it in the menu. Fixes: commit c361bdca6afdc933eeac35732334464990295cd4 See-also: https://github.com/hexchat/hexchat/pull/2255#issuecomment-475841824
2020-04-19win32: Fix building executables with invalid entrypointsdelthas
Windows builds of the GTK frontend use the pie flag to compile hexchat.exe. Windows needs an explicit entrypoint when compiling with --pie, otherwise an invalid executable is created. This sets the entrypoint of the executable on Windows (as it is currently set in the Visual Studio project files). This fixes a critical build issue which prevents all Windows builds using Meson from working.
2020-04-19win32: Replace include of winuser.h with windows.hdelthas
winuser.h should never be included directly. windows.h should be included instead. This fixes a critical build issue added in c5d47fc which makes all MinGW builds fail. See #2403.
2019-12-30Add a channel context menu item to focus channelsPaul Wise
2019-12-20build: Fix some meson warningsPatrick Griffis
2019-12-16Add missing winuser.h include for mingw (#2403)Zach Bacon
Without the include gcc will complain about WM_TIMECHANGE as undeclared.
2019-02-25Extend input box GTK theme workaround to include Yarucajuncooks
Fixes #2305
2018-03-31Fix plugins on macOSRainer Müller
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: https://github.com/mesonbuild/meson/issues/1160
2018-03-20Deiconify window on tray click. Closes #2136Manuel Schneider
2018-03-16Remove shift+click to close tab bindingPatrick Griffis
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 #918
2018-03-13Revert "xtext: Always use Pango to get correct glyph width on Unix"Patrick Griffis
This reverts commit d3f1ab78138a1f9256ec02842799ed6cd1e3ec1e. The performance even on Linux is just too poor in many cases.
2018-03-09win32: Update to build against gvsbuildPatrick Griffis
2018-03-09Various fixes for mingwPatrick Griffis
2018-03-09win32: Respond to WM_TIMECHANGE by updating the CRT timezone infoMark Jansen
Closes #2090 Fixes #1851
2018-02-11xtext: Fix accidental truncationPatrick Griffis
Fixes #2121
2018-02-06xtext: Always use Pango to get correct glyph width on UnixPeng Wu
This should be slower but pango seems to be reasonably fast on Unix though extremely slow on Windows. https://bugzilla.redhat.com/show_bug.cgi?id=1536298
2018-02-06xtext: Fix invalid utf-8 from truncationPatrick Griffis
2018-02-06xtext: Remove unused codePatrick Griffis
2018-02-06Fix Enchant 2.1.3+ supportPatrick Griffis
They changed the lib name yet again... Closes #2117
2018-01-18This patch hopefully solves a bug that causes that when a tab (channel or ↵Rodri
private) is left with the scrollbar at the bottom, and some new text arrives, and then we select again that tab, sometimes the scrollbar is not completely down and there is hidden text and we have to scroll manually to the bottom to show all text. This was previously submitted as an issue in: https://github.com/hexchat/hexchat/issues/1948 Maybe it isn't the ideal way to solve it, but at least I tested it and it seems to work.
2018-01-18Prevent undefined behaviour on memcpyFrancisco Couzo
2017-12-24Rename app-id to io.github.HexchatPatrick Griffis
RDNS syntax is recommended for applications and this matches the existing flatpak. Note that the dbus service and icons still need renaming though the former is an API breakage. Closes #2104 Closes #2103
2017-11-24spell-entry: Improve robustness of enchant loading and fix 2.0 supportPatrick Griffis
- Add logging and error handling to loading symbols - Don't load unversioned symbol - Handle new function names in Enchant 2.0 Closes #2095