Commit Graph

3900 Commits

Author SHA1 Message Date
5f8dcd286e Added the xtext_adjustment_apply helper to consolidate GTK2/GTK3 adjustment updates and direct field assignments.
Updated adjustment setup and GTK3 buffer refresh logic to use the new helper and keep page increment/signaling handling consistent.
2026-01-30 07:26:54 -07:00
4cfe5274b5 Updated GtkAdjustment helper guards to use explicit !HAVE_GTK3 branches for direct field access while keeping GTK3 accessors in the HAVE_GTK3 path. 2026-01-30 07:20:43 -07:00
f6613cbad1 Added GtkAdjustment helper accessors for value/upper/lower/page size/page increment to encapsulate GTK3 accessors and GTK2 struct fields.
Updated xtext adjustment logic to use the helpers in adjustment updates and rendering paths, eliminating direct field access in scroll/render flows.
2026-01-30 07:15:06 -07:00
3806b33aab Split GTK3 vs GTK2 setup in gtk_xtext_realize so GTK2-only parent window/colormap access is guarded under #if !HAVE_GTK3. 2026-01-30 06:57:14 -07:00
fa3c7c9059 Consolidated GTK3 realization setup to use parent window/visual and keep GTK2-only colormap/parent window under the GTK2 branch in gtk_xtext_realize. 2026-01-30 06:20:21 -07:00
c0c0b2ec4c Moved GTK2-only parent window and colormap handling into the GTK2 code path while keeping GTK3 setup relying on gtk_widget_get_parent_window and visual-only attributes in gtk_xtext_realize. 2026-01-29 23:06:21 -07:00
d553862e52 Guarded the GtkXText double-buffering toggle behind a GTK3 compile check and added a GTK3 render pipeline note in gtk_xtext_new 2026-01-29 23:01:02 -07:00
7cbd905fae Guarded GTK2-only GtkObjectClass declaration/assignment with explicit #if !HAVE_GTK3 checks in gtk_xtext_class_init. 2026-01-29 22:57:13 -07:00
49e23b7df5 Added a GTK3 finalize handler for GtkXText that chains to the parent class alongside the existing dispose cleanup path.
Registered the GTK3 finalize handler in gtk_xtext_class_init while keeping GTK2 destroy registration intact.
2026-01-29 22:49:13 -07:00
bf529ba1ff Guarded GTK2-only GtkObject includes in the xtext header for GTK2 builds only.
Added a shared cleanup helper plus GTK2 destroy/GTK3 dispose handlers with correct parent chaining for cleanup parity across GTK versions.
Updated class initialization to register GTK3 dispose or GTK2 destroy handlers with appropriate object class setup.
2026-01-29 22:44:54 -07:00
aa0b271aa9 Made GTK2 window access explicitly guarded in scroll/selection update code paths to keep GTK3 using gtk_widget_get_window.
Applied the same explicit GTK3/GTK2 window guards in render paths to keep direct GTK2 field access isolated.
2026-01-29 22:07:58 -07:00
1584764809 Consolidated gtk_xtext_size_allocate to use a guarded window pointer before resizing, preserving GTK3 gtk_widget_get_window and GTK2 direct access paths.
Aligned GTK3/GTK2 window selection blocks in scrolling/selection and render routines (including gtk_xtext_render_page) to use #else guards for GTK2 direct access.
2026-01-29 21:57:50 -07:00
31130197eb Routed window access in scroll/selection helpers through guarded GTK3 window lookups while retaining GTK2 field access under #if !HAVE_GTK3.
Consolidated window handling in layout, render, visibility, and buffer display paths to avoid direct GTK2 window fields in GTK3 builds.
2026-01-29 21:45:57 -07:00
723d8759ff Wrapped size allocation and window resize handling with explicit GTK3/GTK2 guards for allocation/window access while preserving GTK2 field usage under !HAVE_GTK3.
Applied explicit GTK3/GTK2 window access guards across render/scroll/buffer sizing paths, including gtk_xtext_render_page and gdk_window_get_width/height callsites.
2026-01-29 21:35:06 -07:00
667a56ca6c Added GTK3 window guard handling for scrolling/selection height calculations while keeping GTK2 direct window access for those paths.
Switched sizing/visibility calculations and buffer show sizing to use GTK3 window retrieval with GTK2 fallbacks in layout/rendering paths.
2026-01-29 21:21:40 -07:00
c009c30211 Updated size allocation and draw/paint paths to use GTK3 allocation accessors while preserving GTK2 direct field access under guards.
Switched render-page and input/cursor handling to use gtk_widget_get_window on GTK3 with guarded window usage, keeping GTK2 behavior intact.
2026-01-29 21:14:09 -07:00
deepend-tildeclub
b6094244ac Merge pull request #47 from ZoiteChat/c17
C17
2026-01-29 21:01:45 -07:00
deepend-tildeclub
2741c40580 Merge pull request #46 from ZoiteChat/master
sync to master
2026-01-29 21:00:38 -07:00
deepend-tildeclub
c90f3c659a Fix include directive for glib.h 2026-01-27 12:13:47 -07:00
e78251ee29 fix(win32): replace netdb.h with ws2tcpip.h for addrinfo APIs 2026-01-26 18:19:14 -07:00
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
6e5149fbe6 add C17 to meson.build 2026-01-26 16:01:47 -07:00
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
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
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
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
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
6c85c796d3 Merge branch 'master' of https://github.com/ZoiteChat/zoitechat
sync with master
2026-01-25 19:09:54 -07:00
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
1226224858 Merge branch 'zoite-sts' into gtk3-prep
IRCv3 STS Support
2026-01-25 18:31:03 -07:00
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
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
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
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
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
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
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
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
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
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