Commit Graph
4081 Commits
Author SHA1 Message Date
deepend e78251ee29 fix(win32): replace netdb.h with ws2tcpip.h for addrinfo APIs 2026-01-26 18:19:14 -07:00
deepend b960f62d2a fix(fe-text): replace strdup with g_strdup for C17 builds 2026-01-26 18:12:49 -07:00
deepend-tildeclub dc76c2ea37 Change C standard from C17 to c17 2026-01-26 18:08:01 -07:00
deepend 6e5149fbe6 add C17 to meson.build 2026-01-26 16:01:47 -07:00
deepend 4008d94571 fix(portability): replace POSIX-only string funcs and legacy hostent fields 2026-01-26 15:56:52 -07:00
deepend-tildeclub 4ad5df0370 Update documentation links in README 2026-01-26 14:15:31 -07:00
deepend-tildeclub 887d891541 Merge pull request #44 from ZoiteChat/glib-dependency-cleanup
Glib dependency cleanup + Makefile
2026-01-26 01:36:54 -07:00
deepend 041288cdad Removed the GLib dependency from the Windows 8 spellcheck provider by swapping in Windows/stdlib UTF-8/UTF-16 conversions and standard allocation/free routines. 2026-01-25 23:52:52 -07:00
deepend c8ee118f00 Replaced GLib allocation helpers in history management with standard free/strdup to reduce unnecessary GLib coupling.
Updated the network helper API to use uint32_t and standard allocation/duplication routines, dropping the GLib include from the implementation and adding <stdint.h> to the header.
2026-01-25 23:37:09 -07:00
deepend d4134c94b3 Swapped glib integer types in the sysinfo interface for standard stdint types to remove glib coupling in the header.
Replaced glib string/util usage in the win32 sysinfo backend with local helpers, a small string builder, and Windows UTF-8 conversion, removing the glib dependency there.
2026-01-25 23:32:33 -07:00
deepend 5ca3e835a7 Replaced GLib allocation helpers in history management with standard free/strdup to reduce unnecessary GLib coupling.
Updated the network helper API to use uint32_t and standard allocation/duplication routines, dropping the GLib include from the implementation and adding <stdint.h> to the header.
2026-01-25 23:00:20 -07:00
deepend 6c85c796d3 Merge branch 'master' of https://github.com/ZoiteChat/zoitechat
sync with master
2026-01-25 19:09:54 -07:00
deepend 992215ee91 Fix invalid call to g_io_channel_set_buffered 2026-01-25 19:09:17 -07:00
deepend-tildeclub 1729cfcb3f Merge pull request #43 from ZoiteChat/master
Merge pull request #42 from ZoiteChat/zoite-sts
2026-01-25 18:49:25 -07:00
deepend-tildeclub 4cf1b52982 Merge pull request #42 from ZoiteChat/zoite-sts
IRCv3 STS Specification Support.
2026-01-25 18:48:26 -07:00
deepend 1226224858 Merge branch 'zoite-sts' into gtk3-prep
IRCv3 STS Support
2026-01-25 18:31:03 -07:00
deepend bc1d2e5f7a Updated STS upgrade handling to fall back to the current connection port when servers omit a port in the STS capability, enabling TLS upgrades for non-TLS connections in that case. 2026-01-25 18:26:20 -07:00
deepend a0f0c48bc5 Added STS profile persistence and policy parsing/enforcement (including load/save, upgrades, and expiry rescheduling) to the STS module.
Integrated STS capability handling and connection lifecycle hooks (ignore CAP DEL, trigger upgrades, reschedule on disconnect, new server fields).
Initialized and cleaned up STS state during startup/shutdown to persist policies across sessions.
2026-01-25 17:20:53 -07:00
deepend 4d6c77704c Added STS profile data structures plus serialize/deserialize helpers for storing profile state in a compact string form.
Registered the new STS source file in the Meson and Visual Studio build definitions.
2026-01-25 16:51:43 -07:00
deepend-tildeclub f3855583dd Merge pull request #41 from ZoiteChat/master
HEXCHAT -> ZOITECHAT
2026-01-25 16:15:37 -07:00
deepend 2b98ebc544 HEXCHAT -> ZOITECHAT 2026-01-25 16:13:47 -07:00
deepend-tildeclub 8b5358fbcc Merge pull request #40 from ZoiteChat/master
sync with master.
2026-01-25 16:09:41 -07:00
deepend-tildeclub 4ed7032fd5 Update lua.c
Allowed Lua scripts to be located by basename (script name only) when resolving /lua unload and related operations, while keeping path-based matching for explicit paths.
Ensured /lua load reports failures when script creation fails and added explicit failure feedback to the user.
Added unload feedback that distinguishes immediate unloads from deferred unloads, so users see confirmation right away.
2026-01-25 16:02:58 -07:00
deepend d4d2483161 Updated the GTK3 adjustment update path in gtk_xtext_buffer_show to explicitly set adjustment bounds/page sizing and emit value-changed, while keeping GTK2 behavior unchanged. 2026-01-25 15:16:37 -07:00
deepend-tildeclub 4e01192979 Add badge references to README
Added badge references for GitHub version, downloads, size, last commit, and contributors.
2026-01-25 14:52:49 -07:00
deepend-tildeclub 2127820ae0 Enhance README with build badges and links
Updated README to include build badges and documentation link.
2026-01-25 14:47:08 -07:00
deepend 361308962e Routed GTK3 render-time adjustment updates through gtk_xtext_adjustment_set to apply setter updates and emit value-changed, while keeping the GTK2 path on gtk_adjustment_changed 2026-01-25 13:58:11 -07:00
deepend e0c8409971 Updated GTK3 adjustment updates in gtk_xtext_adjustment_set to use GtkAdjustment setters and gtk_adjustment_value_changed, preserving the GTK2 path with gtk_adjustment_changed.
Adjusted GTK3 buffer-show scroll value updates and change signaling to rely on adjustment accessors while keeping the GTK2 flow intact.
2026-01-25 13:07:55 -07:00
deepend 6f31e33094 Refactored gtkutil_icon_name_from_stock() to use a lookup table with explicit GTK stock icon aliases (including GTK3 mappings) while keeping the stock-name fallback intact.
Spot-checked GTK stock icon usage in chanlist.c, menu.c, and sexy-spell-entry.c to confirm expected GTK3 icon mapping coverage at the call sites you flagged.
2026-01-25 12:53:15 -07:00
deepend bad5eab21c Expanded the GTK3 stock-to-themed icon mapping to cover additional stock IDs (add, yes/no, navigation, dialog error, media play, network, spell check) while keeping the stock fallback unchanged.
Spot-checked GTK3 callers in chanlist, menu, and spell-entry code paths that rely on stock icon mappings for menu items and spelling UI icons.
2026-01-25 12:29:00 -07:00
deepend c9ec0527dd Avoided re-adding the same GTK3 palette CSS provider by tracking when the provider is first created before attaching it to the style context. 2026-01-25 12:19:44 -07:00
deepend ac3ce1ceac Updated gtkutil_apply_palette declarations to use GTK-specific Gdk color types for GTK3 vs GTK2 builds.
Adjusted the gtkutil_apply_palette definition to match GTK3/GTK2 Gdk color signatures while preserving existing behavior.
2026-01-25 11:37:04 -07:00
deepend 6fffdba876 Merge branch 'gtk3-prep' of https://github.com/ZoiteChat/zoitechat into gtk3-prep 2026-01-25 11:32:06 -07:00
deepend 94789a9100 Added gtkutil_apply_palette declaration and implementation to apply palette colors/fonts via GTK3 CSS providers with GTK2 fallbacks preserved.
Switched channel tree and theme application logic to use the new palette helper.
Updated entry and user list styling to route palette/font application through the helper.
2026-01-25 11:30:21 -07:00
deepend-tildeclub 1475d02be0 Merge pull request #39 from ZoiteChat/master
Add 'standard-replies' to inbound.c
2026-01-25 11:16:51 -07:00
deepend-tildeclub a40f53a1f3 Add 'standard-replies' to inbound.c
Add support for the standard-replies capability.
2026-01-25 11:09:31 -07:00
deepend 08d357dc98 Added explicit GTK3-only branches in gtk_xtext_unrealize() so gtk_widget_get_window() is used without GTK2 struct access leaking into the GTK3 path.
Split the GTK3 and GTK2 initialization paths in gtk_xtext_realize() so the GTK3 branch uses gtk_widget_get_allocation()/gtk_widget_get_parent_window() and the GTK2 branch keeps the direct struct access under #if !HAVE_GTK3.
2026-01-23 22:08:17 -07:00
deepend 0df299acf5 Updated gtk_xtext_unrealize() to use GTK3 accessors (gtk_widget_get_window(), gtk_widget_set_window(), and gtk_widget_set_realized()) while keeping the GTK2 struct access in the #if !HAVE_GTK3 branch.
Consolidated the GTK3 vs GTK2 branching in gtk_xtext_realize() so GTK3 uses gtk_widget_get_allocation(), gtk_widget_get_parent_window(), and gtk_widget_set_window(), with the existing GTK2 direct struct access preserved under #if !HAVE_GTK3.
2026-01-23 22:00:36 -07:00
deepend 00eb2de4c8 Split the GTK3 and GTK2 branches in gtk_xtext_unrealize() so GTK3 uses gtk_widget_get_window() while the GTK2 path remains under #if !HAVE_GTK3 with direct struct access.
Split the GTK3 and GTK2 branches in gtk_xtext_realize() so GTK3 uses gtk_widget_get_allocation(), gtk_widget_get_parent_window(), and gtk_widget_set_window(), while keeping the existing GTK2 struct access under #if !HAVE_GTK3.
2026-01-23 21:55:46 -07:00
deepend f65f350965 Moved gtk_widget_set_realized() into the GTK3 branch and used GTK_WIDGET_SET_FLAGS(widget, GTK_REALIZED) for GTK2, keeping allocation/parent-window access split by #if HAVE_GTK3 2026-01-23 21:52:40 -07:00
deepend 1d32aed8dc Added a GTK3-specific branch in gtk_xtext_unrealize() that clears user data via gtk_widget_get_window() while preserving the GTK2 struct access under #if !HAVE_GTK3.
Updated gtk_xtext_realize() to use gtk_widget_get_allocation(), gtk_widget_get_parent_window(), and gtk_widget_set_window() on GTK3, and routed all subsequent window usage through the local window variable instead of direct struct access; the GTK2 path remains intact under #if !HAVE_GTK3.
Adjusted gtk_xtext_clear_background() to use gtk_widget_get_window() on GTK3 rather than widget->window.
2026-01-23 21:40:22 -07:00
deepend ab3bdf219f Added #if HAVE_GTK3 / #elif !HAVE_GTK3 branches around gtk_hbox_new / gtk_vbox_new call sites in the GTK front-end, using gtk_box_new(GTK_ORIENTATION_*, spacing) for GTK3 while keeping the GTK2 constructors explicitly gated under !HAVE_GTK3.
Applied gtk_box_set_homogeneous() in GTK3 branches where the GTK2 code requested homogeneous layout (e.g., dialog hboxes).
Updated remaining helpers and setup/preferences UI box constructors (including the shared mg_box_new helper) to follow the same GTK3/GTK2 branching approach consistently across src/fe-gtk/
2026-01-23 21:28:32 -07:00
deepend 5b1a58195e Verified the requested #if HAVE_GTK3 / #if !HAVE_GTK3 alignment branches are already present across the noted src/fe-gtk/ files, then refined the GTK3 join dialog icon alignment by adding a small top margin to better approximate the legacy y = 0.06 alignment behavior.
Removed a lingering commented-out gtk_misc_set_alignment call in servlistgui.c so the remaining legacy alignment calls surfaced by search are all active and guarded.
2026-01-23 21:16:43 -07:00
deepend 7f5d92addb Searched the requested GTK alignment usages across src/fe-gtk/ and found the #if HAVE_GTK3 branches were already in place for the gtk_misc_set_alignment() call sites; the remaining gap was an implicit #else around gtk_alignment_new() in setup_create_spin, which I made explicit as #elif !HAVE_GTK3 while keeping the GTK3 halign/valign branch intact. 2026-01-23 21:09:21 -07:00
deepend 7a37918ec7 Replaced #else with #elif !HAVE_GTK3 anywhere the legacy alignment calls appear, so the GTK2/legacy path is now explicitly scoped to non-GTK3 builds while preserving the existing GTK3 halign/valign behavior across the requested files (maingui.c, chanlist.c, dccgui.c, joind.c, servlistgui.c).
Applied the same explicit !HAVE_GTK3 guard style in setup.c, including the gtk_alignment_* block and the padding/margin section you called out.
2026-01-23 20:34:48 -07:00
deepend 31e198f772 Added GTK3 halign/valign handling (and GTK3 label margins) across setup UI elements, including spin widgets, color buttons, sound labels, and page headers while keeping GTK2 fallbacks intact.
Applied GTK3 alignment updates to DCC detail labels in the DCC GUI.
Updated join dialog widgets to use GTK3 alignment calls for the image and labels, retaining legacy alignment for GTK2.
Added GTK3 alignment handling for server list dialogs and labels in the server list UI.
2026-01-23 20:18:49 -07:00
deepend 366039eb2b Adjusted GTK3 menu item icon-name fallbacks for quick items and stock icon menus in the menu helpers.
Updated channel list icon menu items to convert stock icon IDs to GTK3 icon names with a fallback path.
Added a GTK3 icon-name fallback for spell entry menu items when building the icon/label box layout.
2026-01-23 18:08:39 -07:00
deepend fd83f3636d Consolidated the GTK3/GTK2 branching for icon menu items in menu_quick_item and create_icon_menu to use the GtkMenuItem + GtkBox path under GTK3 and GtkImageMenuItem under GTK2.
Unified the GTK3/GTK2 icon menu item construction branches in the channel list menu helper to match the GtkBox + GtkImage + GtkLabel pattern for GTK3 while preserving GTK2 behavior.
Aligned the spelling menu icon item helper with the same GTK3/GTK2 branching structure, keeping GTK2 GtkImageMenuItem intact.
2026-01-23 18:01:07 -07:00
deepend c2e8507402 Guarded GTK3 chanlist menu item image creation on a non-null icon name before packing into the menu item box.
Updated GTK3 create_icon_menu to build menu items with explicit image/label composition using icon names or pixbufs before packing into the box.
Adjusted GTK3 spell entry icon menu item to create the image only when an icon name is available.
2026-01-23 17:35:01 -07:00
deepend 3923bd915c Updated GTK3 menu quick items to build a GtkMenuItem with a box, icon-name image, and mnemonic label before packing into the menu item.
Ensured chanlist GTK3 icon menu items always create images from icon names before packing with the mnemonic label.
Adjusted spell entry GTK3 icon menu items to create icon-name images for the boxed menu item layout.
2026-01-23 17:26:59 -07:00