Commit Graph

85 Commits

Author SHA1 Message Date
0a0dbd384c Added GTK3 icon theme change handling to refresh themed icons and reapply the current tray icon state after theme updates.
Disconnects the GTK3 icon theme signal during backend cleanup to avoid stale handlers.
2026-01-31 13:24:04 -07:00
5c8f50a9f5 Added GTK3 tray icon fallback caching to concrete file paths using bundled pixmaps for missing themed icons and wired the check into themed icon resolution for app indicator usage. 2026-01-31 12:12:55 -07:00
e1b4e18153 Updated the GTK3 tray icon types to use GIcon values, added themed/file icon creation helpers, and converted icons to names for AppIndicator usage while preserving GTK2 behavior unchanged.
Added GTK3 icon cache initialization/cleanup in the tray backend lifecycle to manage icon lifetimes safely.
2026-01-30 20:47:26 -07:00
01104844e8 Added a GTK3 AppIndicator tray backend with a unified tray interface while keeping the GtkStatusIcon backend for GTK2 builds.
Reworked tray menu population and tray initialization to use the backend abstraction and GTK3 menu refresh behavior.
Linked AppIndicator dependencies conditionally for GTK3 builds in Meson.
2026-01-30 20:07:36 -07:00
d1e1ef3a82 Documented the GTK3 tray backend choice and added GTK3-safe tooltip property handling with a title fallback while keeping GTK2 APIs gated behind build flags.
Guarded embedded notification handling by GTK version to avoid GTK2-only APIs on GTK3 builds.
2026-01-30 19:37:29 -07:00
907211a733 Unified tray tooltip handling so GTK3 uses the tooltip-text property while GTK2 keeps the legacy API behind guards, and wired fe_tray_set_tooltip to the shared helper.
Centralized embedded-state checks through a GTK3-safe helper in the tray notification callback, avoiding GTK2-only calls under GTK3.
2026-01-30 19:33:56 -07:00
dec2aff37d Added GTK3-specific helpers for tray tooltip updates and embedded checks with a safe fallback when the embedded property is unavailable.
Updated tooltip handling and tray restore detection to use GTK3 helpers while keeping GTK2-only APIs behind GTK2 guards.
2026-01-30 19:30:02 -07:00
4bd67e4933 Updated tray tooltip handling to use GTK3 tooltip-text property while keeping GTK2-only tooltip API calls behind #if !HAVE_GTK3.
Switched GTK3 embedded checks to use the embedded property instead of GTK2-only API calls, preserving the restore timer behavior.
2026-01-30 19:26:34 -07:00
1b23b5b7a6 Added GTK3-friendly tray icon name definitions plus explicit tray icon state tracking and helpers for GTK2/GTK3 paths.
Reworked tray flashing/custom icon logic to use the new state instead of pixbuf pointer comparisons while preserving behavior across GTK versions.
Updated tray initialization and notification callbacks to use the GTK3 icon-name API with state-aware flashing for message/highlight events.
2026-01-30 18:47:23 -07:00
b48376c370 Added per-file ICON_* macros with GTK3 icon-name mappings and GTK2 stock fallbacks across GTK UI modules like banlist, DCC, editlist, ignore, URL grabber, notify, text events, tray menu, chanview tabs, and join dialog UI.
Updated GTK helper usages to reference the new ICON_* (and label) macros so GTK3 builds no longer pass stock IDs to button/icon helpers or dialogs, including banlist buttons, DCC windows, rawlog actions, notify dialog/buttons, pevent dialog buttons, tray menu items, and join dialog image helper usage.
2026-01-30 09:23:52 -07:00
2b98ebc544 HEXCHAT -> ZOITECHAT 2026-01-25 16:13:47 -07:00
4683ef705b new name after fork 2026-01-05 23:12:38 -07:00
Manuel Schneider
ee85129a9b Deiconify window on tray click. Closes #2136 2018-03-20 11:32:02 +00:00
Patrick Griffis
e9b9ff9f38 Various fixes for mingw 2018-03-09 18:23:25 +00:00
Chase Patterson
18b741804c Use localized "HexChat" in window titles
Also allow rearranging of "HexChat" in window titles
2017-09-15 19:18:29 -04:00
Chase Patterson
d935197895 Change windows from starting with "Hexchat: " to ending with " - Hexchat" 2017-09-15 19:18:29 -04:00
Patrick Griffis
d99cd18fb9 Improve detection of system tray support
Closes #2045
2017-08-31 10:16:03 -04:00
Bilal Elmoussaoui
2965fbcc87 Support changing tray icon only with tray_normal image
Previously making a hexchat icon would override all hexchat icons
not just the tray.

Fixes #2017
Closes #2018
2017-07-01 16:26:00 -04:00
Patrick Griffis
aab881fda2 Fix strict prototype warnings 2016-02-18 08:57:22 -05:00
Arnavion
97bf0de016 Make Preferences option in plugin tray menu available on all platforms. 2015-02-27 17:33:33 -08:00
Arnavion
b6c4cfa2a3 Fixed undefined behavior causing hover highlights on the plugin tray menu not working.
Fixes #602
2015-02-27 17:24:57 -08:00
TingPing
f4f27e438b Implement windows 8.1+ notifications
This splits notifications up into multiple backends
currently only libnotify on unix and win8 toasts.

The win8 backend was originally written by @leeter
though heavily modified.
2015-02-04 20:24:53 -05:00
Campbell Barton
f83d78dd28 Warning cleanup
- ignoring const
- declarations after statements
- some C files didnt include own headers (risking them getting out of sync)

Closes #1064
2014-11-02 14:41:20 -05:00
TingPing
904493b24f Show notifications for private actions
Fixes #990
2014-05-20 22:03:45 -04:00
TingPing
b1b6255f38 Revert e64aa93f8 2014-02-05 01:27:36 -05:00
TingPing
e64aa93f85 Use persitance with libnotify
This will keep notifications in gnomes tray
similar to a tray icon.
2014-02-05 01:00:06 -05:00
TingPing
ce09cb4a91 Update most deprecated gtk functions 2014-01-18 14:47:17 -05:00
Arnavion
2bd1c3f99d Fixed whitespace. 2013-12-27 19:50:50 -08:00
Arnavion
c531db4714 fe-gtk: Fixed notification balloons for PMs not getting displayed if blinking tray icons for PMs is unchecked. 2013-12-27 19:41:18 -08:00
TingPing
ae04663aa9 First round of using GTK accessor functions
This is the first step to build with GSEAL_ENABLE
setup.c uses a deprecated fontchooser,
chanview-tabs.c didn't like the conversion, and
I am waiting to do some work on xtext.c before
converting it.
2013-09-20 17:24:39 -04:00
TingPing
f6ba274134 Add fullscreen to to view menu 2013-09-19 17:52:17 -04:00
Arnav Singh
ac5771377e fe-gtk: Only escape notification bodies for notification servers that support "body-markup". 2013-06-28 00:14:54 -07:00
Berke Viktor
712eb5428e GtkComboBoxText requires GTK+ 2.24, dump code for older versions 2013-05-11 13:06:25 +02:00
TingPing
bd73c80152 Clean up balloon formatting 2013-04-22 20:13:34 -03:00
TingPing
e67371d269 Add option for omitting alerts while focused 2013-04-13 23:03:54 -04:00
TingPing
5326f76a40 Fix tray not respecting away_omit_alerts 2013-04-12 19:59:46 -03:00
Berke Viktor
9c49254abd Only include top level includes from GTK+, GLib and GDK-PixBuf 2013-04-02 20:39:37 -07:00
Berke Viktor
5e59578e28 Remove most of HexTray and one instance
You can still build HexTray manually if you want to try fixing it
2013-04-02 11:56:08 -07:00
Berke Viktor
3c1bd3cff0 Supposed fix for license issues
I have no clue what to put here so I'll just use what the About dialog
provides (unless specified otherwise in the file)
2013-03-31 21:45:05 +02:00
TingPing
e9a3528bbd Disable tray when using Unity 2013-03-25 02:41:13 -04:00
TingPing
e5a6913f83 add notification hints for gnome 2013-02-18 00:32:59 -05:00
TingPing
3915abc91e fix path to icon for notifications 2013-02-18 00:15:47 -05:00
TingPing
3f60c59908 fix tray menu placement issues
notably top taskbar issues on windows
2013-02-06 12:58:14 -05:00
RichardHitt
0ecbeb7152 Merge pull request #337 from TingPing/tray
add even more tray icon changes
2013-01-04 17:43:35 -08:00
TingPing
af92429ea0 use notify::embedded 2013-01-04 20:30:30 -05:00
TingPing
00bd8d42c3 use tabs 2013-01-03 18:18:04 -05:00
TingPing
9aa33ad1d3 add glebihans disappearing tray patch 2012-12-21 15:09:00 -05:00
TingPing
b259595c9d allow tray blinks to be static icons 2012-12-20 19:53:58 -05:00
TingPing
4524367cc0 Add auto-away to plugin-tray 2012-12-20 19:39:52 -05:00
TingPing
52ffb02685 Update src/fe-gtk/plugin-tray.c 2012-12-20 13:30:48 -05:00