Commit Graph

  • 92a35ea3e9 Remove libayatana-appindicator from build dependencies deepend-tildeclub 2026-02-03 11:38:49 -07:00
  • c22d141237 Updated the Windows GitHub Actions workflow to build GTK3 from the ZoiteChat gvsbuild repo (and map Win32 output paths) instead of using the older prebuilt GTK archive, aligning with the required GTK3 build flow for Windows CI. deepend 2026-02-03 11:34:18 -07:00
  • 415066345a Fixed the GTK3 input-style toggle to remove the CSS provider and reset cached theme/color state when the preference is disabled, preventing stale styling from persisting or blocking a clean re-apply later. deepend 2026-02-03 11:15:52 -07:00
  • 81a669a199 Merge pull request #49 from ZoiteChat/master deepend-tildeclub 2026-02-03 11:09:39 -07:00
  • ffa7afd09c adjustment for windows builds deepend 2026-02-02 15:53:38 -07:00
  • dab682f90d Refactor Windows build workflow for GTK dependencies deepend-tildeclub 2026-02-02 12:30:44 -07:00
  • 35740637df Update Windows build workflow for branch restrictions deepend-tildeclub 2026-02-02 00:23:49 -07:00
  • 57fb1eb27b Update Windows build workflow for branch handling deepend-tildeclub 2026-02-02 00:15:47 -07:00
  • 069c6a3f81 Implement alias handling for DLLs and headers deepend-tildeclub 2026-02-02 00:06:24 -07:00
  • 61da248c41 Add Ensure-LibJpeg function to manage JPEG library deepend-tildeclub 2026-02-01 23:54:45 -07:00
  • 0f36b273f1 Add Ensure-LibXml2 function for libxml2 management deepend-tildeclub 2026-02-01 23:46:04 -07:00
  • 770922cdda Implement Ensure-Zlib function for zlib handling deepend-tildeclub 2026-02-01 23:36:15 -07:00
  • 343ad0ffd5 Replace Ensure-LuaHeaders with Ensure-LuaJit function deepend-tildeclub 2026-02-01 23:27:51 -07:00
  • e134a99e12 Update MSYS2 setup and enhance comments deepend-tildeclub 2026-02-01 23:04:16 -07:00
  • f8139d094a Change Lua dependency to Lua 5.1.5 in build script deepend-tildeclub 2026-02-01 22:49:30 -07:00
  • 1e8efcdc5a Refactor comments and add zlib legacy support deepend-tildeclub 2026-02-01 22:39:34 -07:00
  • 81abfe3175 Refactor Windows build workflow and clean up comments deepend-tildeclub 2026-02-01 22:25:35 -07:00
  • cf2e44f3d5 Refactor Windows build workflow by removing MSYS2 setup deepend-tildeclub 2026-02-01 22:25:20 -07:00
  • 049d3c19af Add MSYS2 setup and improve dependency installation deepend-tildeclub 2026-02-01 22:24:25 -07:00
  • ffe8a9f7a6 Setup MSYS2 for GTK build fallback deepend-tildeclub 2026-02-01 22:00:38 -07:00
  • 2da635c048 Refactor GTK3 bundle extraction and handling deepend-tildeclub 2026-02-01 21:29:24 -07:00
  • 83ed374b99 Enhance GTK3 bundle handling in Windows build workflow deepend-tildeclub 2026-02-01 20:39:34 -07:00
  • 9837ef901b Add libayatana-appindicator to MSYS build dependencies deepend-tildeclub 2026-02-01 19:46:04 -07:00
  • 01e48bc074 Update Zoitechat JSON configuration deepend-tildeclub 2026-02-01 19:33:16 -07:00
  • 49c0299d68 Add environment variable for GDK backend options deepend-tildeclub 2026-02-01 19:22:44 -07:00
  • 4a8e17e80e Change Python dependency to false in Zoitechat config deepend-tildeclub 2026-02-01 19:08:50 -07:00
  • 8c8912c651 Change Python build option to specify interpreter deepend-tildeclub 2026-02-01 18:59:57 -07:00
  • 8be35d2a30 Refactor Windows build workflow for improved clarity deepend-tildeclub 2026-02-01 18:51:09 -07:00
  • 2a4612672a Refactor Windows build workflow and update steps deepend-tildeclub 2026-02-01 18:35:44 -07:00
  • a98cb3606f Update zoitechat.props with Gtk3 support deepend-tildeclub 2026-02-01 18:30:12 -07:00
  • 20056cb9c4 Disable Perl support in Zoitechat build options deepend-tildeclub 2026-02-01 18:12:03 -07:00
  • 1e36865bb3 Refactor Windows build workflow for better dependency handling deepend-tildeclub 2026-02-01 18:05:38 -07:00
  • 306aef3ef9 Refactor glib-genmarshal handling and compatibility aliases deepend-tildeclub 2026-02-01 17:47:56 -07:00
  • f5ebe3efc8 Enhance libxml2 compatibility handling in build script deepend-tildeclub 2026-02-01 17:34:46 -07:00
  • 2bbe9dccc6 Refactor Python wrapper creation in build script deepend-tildeclub 2026-02-01 17:19:34 -07:00
  • 2723d49b3a Refactor Python script execution in Windows build deepend-tildeclub 2026-02-01 17:13:29 -07:00
  • 87b9e52719 Improve GTK3 stack layout detection in workflow deepend-tildeclub 2026-02-01 17:12:24 -07:00
  • bfe13386c5 Enhance Windows build workflow and error handling deepend-tildeclub 2026-02-01 17:06:40 -07:00
  • 766299a15c Add Wayland dependencies to appimage build deepend-tildeclub 2026-02-01 17:04:32 -07:00
  • fe30e00bc1 Add libayatana-appindicator module to Zoitechat deepend-tildeclub 2026-02-01 16:58:38 -07:00
  • 0dcc35df8f Update appimage-build.yml for SSL and Wayland support deepend-tildeclub 2026-02-01 16:41:10 -07:00
  • 7be145b94a Clarify OpenSSL trust store override and clean up code deepend-tildeclub 2026-02-01 16:39:38 -07:00
  • e365266b4a Update OpenSSL trust store and GDK_BACKEND settings deepend-tildeclub 2026-02-01 16:37:34 -07:00
  • e8f9ea0784 Enable GTK3 support in OpenBSD build workflow deepend-tildeclub 2026-02-01 16:17:54 -07:00
  • 76fdce8576 Remove gtk3 option from msys-build.yml deepend-tildeclub 2026-02-01 16:17:23 -07:00
  • 72dfc10b1b Update Debian build dependencies in workflow deepend-tildeclub 2026-02-01 16:16:48 -07:00
  • c472a4ccd6 Update dependencies in appimage-build.yml deepend-tildeclub 2026-02-01 16:16:23 -07:00
  • 74c09bdebc Enable Perl and Python support in Zoitechat build deepend-tildeclub 2026-02-01 16:10:02 -07:00
  • 56e1c402f6 gtk3 github actions fix deepend 2026-02-01 16:04:16 -07:00
  • b1e7155c6d gtk3 github actions fixes deepend 2026-02-01 16:01:48 -07:00
  • 7dd47dbd2e Adjust for GTK3 github actions compile testing. fixed gtk2 compiling. deepend 2026-02-01 15:23:36 -07:00
  • e5673e9a7b fix compile errors with GTK3 and Wayland. Now compiles/Runs using GTK3+Wayland. deepend 2026-02-01 14:04:56 -07:00
  • 8abc95205a Replaced GTK3 palette font styling with CSS-compliant properties derived from PangoFontDescription, avoiding the deprecated Pango font: syntax in generated CSS. Added a GTK3-only helper to translate Pango font fields into font-family, font-size, font-style, font-weight, font-variant, and font-stretch CSS declarations while preserving GTK2 behavior under #if !HAVE_GTK3. Reused the GTK3 font CSS helper in the main UI font styling path to eliminate remaining Pango font: shorthand usage that triggers GTK3 theme parsing warnings. Exposed the GTK3 font CSS helper in gtkutil so callers can emit CSS-compliant font properties consistently. deepend 2026-01-31 16:37:15 -07:00
  • d8a8e6ce73 dded GTK3 draw handling while keeping GTK2 expose handling wrapped under #if !HAVE_GTK3 for the spell entry widget. Updated gtk_entry_find_position to use GTK3-safe layout offsets and cursor position APIs while preserving GTK2-only field access behind #if !HAVE_GTK3. deepend 2026-01-31 16:22:35 -07:00
  • e44e801e3a Replaced the GTK3 G_DECLARE_DERIVABLE_TYPE usage in sexy-spell-entry.h with explicit typedefs/macros so the SexySpellEntry instance struct (and priv) remains visible in GTK3 builds. Replaced the GTK3 G_DECLARE_DERIVABLE_TYPE usage with explicit GtkXText typedefs/macros to keep the instance struct visible in GTK3 builds and avoid missing member errors. deepend 2026-01-31 16:00:49 -07:00
  • 5170e037b5 Guarded the GTK2-only set_scroll_adjustments_signal assignment in GtkXText class initialization to avoid GTK3 build errors while preserving GTK2 behavior. deepend 2026-01-31 15:47:49 -07:00
  • b121fa7287 Ensured GTK3 buttons created via gtkutil_button always display their images by enabling gtk_button_set_always_show_image when an icon is set. deepend 2026-01-31 15:35:43 -07:00
  • 29ac0f9ee6 Added a GTK3 CSS font provider helper and updated emoji font application to avoid deprecated override APIs in GTK3 builds. Switched GTK3 setup color previews, entry styling, and user list palette updates to use gtkutil_apply_palette instead of deprecated GTK3 overrides. deepend 2026-01-31 13:49:06 -07:00
  • 1fb1865aca Switched palette type selection and color conversion helpers to use the HAVE_GTK3 guard consistently in palette definitions and helpers. Updated GTK3-specific palette color storage handling in DCC, notify, and user list views to align with HAVE_GTK3 guards. Standardized setup color application and dialog logic to use HAVE_GTK3 branches for GTK3/GTK2 separation. deepend 2026-01-31 13:38:05 -07:00
  • d314856f82 Updated the GTK3 rawlog scrolled window to set expansion and pack it explicitly while leaving GTK2 behavior unchanged, keeping the button box packed at the bottom. deepend 2026-01-31 13:27:21 -07:00
  • 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. deepend 2026-01-31 13:24:04 -07:00
  • 3ef9540a57 Updated the About dialog to use the GTK3 license enum and kept the manual license text for non-GTK3 builds, removing the outdated comment. deepend 2026-01-31 13:13:31 -07:00
  • 84647201b1 Added GTK3 input style state tracking (theme, dark mode, colors, and preference) so the CSS provider reloads when those values change, while preserving GTK2 one-time RC parsing deepend 2026-01-31 13:07:54 -07:00
  • f31ef7cfe2 Added GTK3-only CSS styling for alternating rows in the fkeys treeview and set a widget name to target the rules. Wrapped gtk_tree_view_set_rules_hint so it only applies to non-GTK3 builds. deepend 2026-01-31 13:03:14 -07:00
  • 9af54f5ed7 Added a shared size-request helper plus GTK3 preferred-size vfuncs to reuse the existing sizing logic while keeping GTK2’s size_request path intact. Guarded the GTK2 size_request assignment and wired the new GTK3 preferred-size handlers in class init. deepend 2026-01-31 12:59:58 -07:00
  • 5788bd90e2 Updated the tab context menu popup to use GTK3 gtk_menu_popup_at_pointer with GTK2 fallback in maingui.c. Updated the emoji menu popup to use GTK3 gtk_menu_popup_at_widget with GTK2 fallback in maingui.c. deepend 2026-01-31 12:57:05 -07:00
  • 729b1eb8de Explicitly show GTK3 menu item widgets (image, label, box) after building the menu item to ensure labels/icons display reliably. deepend 2026-01-31 12:42:35 -07:00
  • 9a92fa33a8 Made the cursor/adwaita RC strings available for GTK3 and derive the caret color from the cursor RC string when building CSS equivalents. Updated the GTK3 input CSS generation to include base/foreground colors, caret color, and the Adwaita/Yaru background-image override while applying the provider to the screen. deepend 2026-01-31 12:25:56 -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. deepend 2026-01-31 12:12:55 -07:00
  • 56845a64d9 Added a shared render helper and GTK3 draw handler with clip handling while keeping GTK2 expose wiring behind build guards in xtext.c. Added a stored GTK3 draw cairo context to the widget struct and initialized it during setup. deepend 2026-01-31 12:09:02 -07:00
  • 36a369fac8 Ensured GTK3 icon menu items show their child widgets by calling gtk_widget_show_all(item) after assembling the box in create_icon_menu. deepend 2026-01-31 12:02:20 -07:00
  • a5d1dfe81f Added a GTK3 CSS provider path in create_input_style to mirror GTK2 input base/foreground colors, caret color, and Adwaita/Yaru background-image workaround, while preserving GTK2 RC parsing behavior. deepend 2026-01-31 11:56:37 -07:00
  • 946a39c361 Updated the disabled drag-motion block to traverse parents with gtk_widget_get_parent() and use GTK3-safe paned child accessors while retaining legacy fields for non-GTK3 builds. deepend 2026-01-31 11:36:47 -07:00
  • 3710da43c9 Updated GTK3 menu item label/state handling and join dialog accessors while preserving GTK2 field access under !HAVE_GTK3 guards. Switched GTK3 menu child list usage and menu reordering calculations to container-based APIs with list cleanup in GTK3 paths. deepend 2026-01-31 11:31:35 -07:00
  • a9f8e1e897 Replaced legacy GTK type macro blocks with G_DECLARE_* declarations for GtkXText, CustomList, and SexySpellEntry, and aligned the GtkXText parent field naming across GTK2/GTK3 guards. Updated RemoteObject to use G_DECLARE_FINAL_TYPE and the parent_instance field naming convention deepend 2026-01-31 11:15:42 -07:00
  • 9e46407e89 Replaced manual type macros with G_DECLARE_DERIVABLE_TYPE in GtkXText, CustomList, SexySpellEntry, and RemoteObject declarations while aligning parent instance naming. Switched GtkXText and CustomList implementations to G_DEFINE_TYPE/G_DEFINE_TYPE_WITH_CODE and preserved parent chaining behavior Added GTK3/GTK2 conditional type declarations for GtkXText while restoring the legacy macro block for GTK2 builds. Restored GTK2-friendly typedefs/macros and parent field naming for CustomList alongside GTK3 G_DECLARE_DERIVABLE_TYPE usage. Restored GTK2-friendly typedefs/macros and parent field naming for SexySpellEntry while keeping GTK3 declarations intact. Restored legacy RemoteObject typedefs and GType macros in the D-Bus plugin to keep GTK2 builds from seeing incomplete types or missing fields/macros. deepend 2026-01-31 10:45:22 -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. deepend 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. deepend 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. deepend 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. deepend 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. deepend 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. deepend 2026-01-30 19:26:34 -07:00
  • 328c85e6b3 Added a GTK2/GTK3-aware helper to compute tab viewport size based on orientation and reused it in sizing/scroll handlers to centralize logic. deepend 2026-01-30 19:23:34 -07:00
  • c7b5ce0346 Wrapped horizontal paned creation in GTK3/GTK2 conditionals and use gtk_paned_new(GTK_ORIENTATION_HORIZONTAL) for GTK3 while preserving existing layout logic. deepend 2026-01-30 19:02:51 -07:00
  • ca92d14db6 Updated make_sbutton() to use GTK3 symbolic pan icons (up/down/start/end) while retaining GTK2 arrow widgets and ensuring the created widget is added and shown on the button. deepend 2026-01-30 19:00:01 -07:00
  • e0bae25136 Added a GTK3-specific vertical separator in the channel list while keeping the GTK2 separator for non-GTK3 builds, preserving packing and visibility behavior. Updated the horizontal tab separator creation to use GTK3’s vertical separator API with a GTK2 fallback, keeping the same packing and show logic. deepend 2026-01-30 18:56:29 -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. deepend 2026-01-30 18:47:23 -07:00
  • 9bdbeffeb0 Updated the chanview API to use GTK3-safe font descriptions while keeping GTK2 style handling conditional in the header and implementation. Guarded tree view palette application to use GTK3 font descriptions or GTK2 styles appropriately. Adjusted the chanview creation call site to pass GTK3 font descriptions or GTK2 styles based on the build. deepend 2026-01-30 18:39:49 -07:00
  • 6c17f4bc16 Added the GTK3 InputStyle abstraction and updated input style/chanview declarations to avoid direct GtkStyle usage in GTK3 builds. Updated input style initialization and kept GTK2-only RC parsing while applying GTK3 palette styling for the channel tree via CSS-aware paths. deepend 2026-01-30 18:19:01 -07:00
  • d0d6a573a7 Added a GTK3-only icon loader that maps stock names to non-stock icon theme names and uses the icon theme to populate cached DCC pixbufs. Guarded the GTK2 gtk_widget_render_icon() usage with #if !HAVE_GTK3 while keeping cached pix_up/pix_dn logic intact. deepend 2026-01-30 18:09:31 -07:00
  • 8c9f193114 Added GTK2/GTK3-conditional declarations and definitions for sexy_spell_entry_editable_init to match the appropriate editable interface type. deepend 2026-01-30 18:06:11 -07:00
  • 5bac77f6bb Wrapped the GTK2-only font selection helper functions in #if !HAVE_GTK3 guards while keeping the GTK3 font chooser response handler and GTK3 browse font path intact. deepend 2026-01-30 18:03:29 -07:00
  • e815b1d6ae Updated the hscale callback to use GtkRange and simplified range value access to avoid GtkHScale usage. Switched GTK3 hscale creation to gtk_scale_new_with_range while keeping GTK2 gtk_hscale_new_with_range under the non-GTK3 branch. deepend 2026-01-30 17:52:14 -07:00
  • 1406eec197 Updated server list UI to use GTK3 vertical button boxes and horizontal separators behind GTK3 guards while keeping GTK2 constructors under #if !HAVE_GTK3. Swapped the vertical tab separator to GTK3’s horizontal separator under #if HAVE_GTK3, preserving the GTK2 constructor for non-GTK3 builds. deepend 2026-01-30 17:48:25 -07:00
  • 5e73127f9a Updated the main GUI scrollbar creation to use the GTK3 vertical scrollbar constructor while keeping the GTK2 call behind #if !HAVE_GTK3. deepend 2026-01-30 17:44:30 -07:00
  • 541ee90d27 Updated mg_progressbar_update() to toggle GTK3 progress bar direction via gtk_progress_bar_set_inverted() while keeping GTK2 orientation enums behind #if !HAVE_GTK3, preserving the flip behavior each cycle for both builds. deepend 2026-01-30 17:40:44 -07:00
  • d330d6d537 Updated emoji font fallback/primary application to use GTK3 style context fonts with gtk_widget_override_font, while keeping GTK2 style/modify calls behind #if !HAVE_GTK3. Applied GTK3 font overrides for the user list font setting in setup_apply_to_sess, with GTK2 fallback preserved under #if !HAVE_GTK3 deepend 2026-01-30 17:28:09 -07:00
  • 5b28ae17cf Added a GTK3 font chooser dialog flow that preloads the current font and handles responses via the dialog response signal. Kept the GTK2 font selection dialog implementation under the non-GTK3 branch for existing behavior. deepend 2026-01-30 17:21:49 -07:00
  • af2678a3a0 Updated the DCC transfer view and notify dialog to use GtkGrid with GTK3 spacing and attachment equivalents while keeping GTK2 table behavior intact. Switched GTK3 layout helpers and table sections in the server list and setup UI to grid-based attachments and spacing for consistent GTK3 behavior. deepend 2026-01-30 17:13:44 -07:00
  • 3a8a9332d6 Added GTK3 button box creation branches with explicit layout settings across the fe-gtk dialogs while keeping GTK2-only gtk_hbutton_box_new() paths gated under !HAVE_GTK3. deepend 2026-01-30 17:03:27 -07:00