Commit Graph

  • 6f493ed47e Update zoitechat.props with new property definitions deepend-tildeclub 2026-02-14 01:47:51 -07:00
  • 2028a21d14 Update Visual Studio path in Windows build workflow deepend-tildeclub 2026-02-14 01:41:21 -07:00
  • 08d0b25619 Update Windows build runner to use 2022 version deepend-tildeclub 2026-02-14 01:36:46 -07:00
  • eba4edf7a7 Merge branch 'master' into gtk3-prep deepend-tildeclub 2026-02-14 01:35:34 -07:00
  • f8e1536336 Change toolset to v142 and update dependencies deepend-tildeclub 2026-02-14 01:32:39 -07:00
  • 8b90555511 Change PlatformToolset from v143 to v142 deepend-tildeclub 2026-02-14 01:32:00 -07:00
  • f32b8534a4 Change PlatformToolset from v143 to v142 deepend-tildeclub 2026-02-14 01:31:14 -07:00
  • 26453a8ad4 Update print statement from 'Hello' to 'Goodbye' deepend-tildeclub 2026-02-14 01:30:39 -07:00
  • 98f1e8af57 Update print statement from 'Hello' to 'Goodbye' deepend-tildeclub 2026-02-14 01:29:09 -07:00
  • ce597da1a3 Upgrade PlatformToolset from v142 to v143 deepend-tildeclub 2026-02-14 01:28:39 -07:00
  • dba80a5a9e Upgrade PlatformToolset from v142 to v143 deepend-tildeclub 2026-02-14 01:28:08 -07:00
  • 3c94112aeb Upgrade project to use v143 toolset deepend-tildeclub 2026-02-14 01:27:37 -07:00
  • 855b892b1e Update fmt.Println message from 'Hello' to 'Goodbye' deepend-tildeclub 2026-02-14 01:25:25 -07:00
  • 22b74dc70b Upgrade PlatformToolset from v142 to v143 deepend-tildeclub 2026-02-14 01:24:53 -07:00
  • 014ba9e868 Upgrade PlatformToolset from v142 to v143 deepend-tildeclub 2026-02-14 01:24:25 -07:00
  • 11f3beae8b Upgrade project to use v143 toolset deepend-tildeclub 2026-02-14 01:23:43 -07:00
  • ac1065bfa6 Change Windows build runner from 2022 to 2019 deepend-tildeclub 2026-02-14 01:17:43 -07:00
  • 84501d087c Simplify Visual Studio setup in Windows build workflow deepend-tildeclub 2026-02-14 01:14:30 -07:00
  • 60f2b53866 Enhance Visual Studio setup in Windows build workflow deepend-tildeclub 2026-02-14 01:10:05 -07:00
  • c9e8d24e06 Change build environment to Windows 2022 deepend-tildeclub 2026-02-14 01:01:25 -07:00
  • 2436c3bad1 Update installer.vcxproj XML structure deepend-tildeclub 2026-02-14 00:53:47 -07:00
  • 32358a876b Update zoitechat.props for dependency paths deepend-tildeclub 2026-02-14 00:49:32 -07:00
  • a05c596e48 Update print statement from 'Hello' to 'Goodbye' deepend-tildeclub 2026-02-13 22:08:09 -07:00
  • b2d8336dd0 changes to innosetup version / path. changed to precompiled gtk3 binaries. deepend 2026-02-13 21:49:58 -07:00
  • cfdc275a88 Updated the Windows GitHub Actions workflow to stop cloning/installing gvsbuild and running gvsbuild build for GTK dependencies, and instead download/extract the precompiled GTK archive you specified (gtk-x64-2026.7z). Preserved the existing Win32 alias junction logic, but now gate it on both the win32 matrix target and the presence of C:\gtk-build\gtk\x86 from the extracted archive. deepend 2026-02-13 21:40:35 -07:00
  • 2dd2d18ade removed extra character deepend 2026-02-13 20:47:03 -07:00
  • 3d9a92787b Fixed IsccPath values in win32/zoitechat.props by removing embedded quotes from the default Program Files paths, so the path is stored raw and can be quoted exactly once at invocation time. This addresses the “cannot find iscc.exe” behavior caused by double/nested quoting. deepend 2026-02-13 20:44:39 -07:00
  • 9acec081a4 Fixed installer detection to evaluate IsccPath safely when the path contains spaces by changing the existence check to Exists('$(IsccPath)'). Fixed ISCC path normalization by trimming surrounding quotes from ZOITECHAT_ISCC_PATH and storing discovered default paths unquoted (so they can be checked reliably with Exists(...)). Fixed installer invocation by quoting $(IsccPath) at execution time in the pre-build command, which supports paths like C:\Program Files (x86)\Inno Setup 6\ISCC.exe deepend 2026-02-13 20:40:48 -07:00
  • 6d101c4e10 Updated Windows build props so IsccPath can be set explicitly with ZOITECHAT_ISCC_PATH, then auto-detected across common install locations (ProgramFiles, ProgramFiles(x86), ProgramW6432) before falling back to the default path. This reduces false “iscc.exe not found” skips when Inno Setup is installed in a non-default location. deepend 2026-02-13 20:26:36 -07:00
  • 09e9e7314b Update dependency paths and Inno Setup version deepend-tildeclub 2026-02-13 20:19:47 -07:00
  • a86dc5ae85 Added build capability switches in the shared Windows props file so optional components are only enabled when their prerequisites exist: Python3Enabled (python executable + import lib + cffi) PerlEnabled (perl executable + perl runtime DLL + gendef.exe) InstallerEnabled (Inno Setup iscc.exe). Updated the Python plugin project to compile only when Python3Enabled is true, and otherwise emit a clear skip message instead of failing prebuild/import steps. Updated the Perl plugin project similarly to gate build steps on PerlEnabled and print a skip message when prerequisites are missing. Updated the installer project so it only uses C++ targets when InstallerEnabled is true, with a fallback skip message when Inno Setup is unavailable. deepend 2026-02-13 20:14:39 -07:00
  • bb70bcb4e3 Updated the Windows installer pre-build script to create $(ZoiteChatBin) if it doesn’t exist before generating zoitechat.iss, which addresses the “The system cannot find the path specified” failure path during installer project builds. deepend 2026-02-13 20:04:12 -07:00
  • c86701ee3c fix extra character on line 47 deepend 2026-02-13 19:59:25 -07:00
  • 01ec120536 Updated Windows build property resolution so GlibGenMarshal runs through Python when only $(DepsRoot)\bin\glib-genmarshal (no .exe) exists. This prevents MSBuild from trying to execute a script as a native executable on Windows. Kept existing behavior intact for glib-genmarshal.exe and glib-genmarshal.py paths; only the script-without-extension case changed. deepend 2026-02-13 19:56:49 -07:00
  • f734f230fd fix path for girepository dll deepend 2026-02-13 19:47:45 -07:00
  • 5c7697a765 Reworked win32/zoitechat.props to follow the original GTK2-style dependency layout for GTK3 by setting DepsRoot back to $(YourDepsPath)\$(PlatformName)\release (removing the GtkPlatform indirection and direct-root auto-detection added previously). deepend 2026-02-13 19:41:13 -07:00
  • ca7340530d Updated Win32 path macro handling in win32/zoitechat.props so local Your*Path values can now be sourced from environment variables (ZOITECHAT_DEPS_PATH, ZOITECHAT_GENDEF_PATH, ZOITECHAT_PERL_PATH, ZOITECHAT_PYTHON3_PATH, ZOITECHAT_WINSPARKLE_PATH) before falling back to the existing c:\gtk-build\... defaults. This makes CI/dev-shell overrides much easier without manually editing the props file each time. Added a new MSBuild target (ValidateWindowsBuildEnvironment) that runs before build prep and fails fast with explicit errors when GTK/GLib/OpenSSL headers or Python are missing, instead of allowing a long cascade of downstream compile/link/copy failures. deepend 2026-02-13 19:28:34 -07:00
  • 9aceea0134 Fixed the preferences layout packing so the main content region can expand vertically and use the full window height in GTK3 builds by packing the notebook with expand/fill enabled (TRUE, TRUE). Fixed the top-level preferences window layout so the central horizontal content area expands within the main vertical container, instead of staying at natural height. deepend 2026-02-13 18:45:13 -07:00
  • 7df778fc71 Merge pull request #45 from ZoiteChat/c17 deepend-tildeclub 2026-02-12 22:24:04 -07:00
  • e855b9f160 Added Ctrl+Alt+S (<Primary><Alt>s) to the default keyboard shortcut list in fkeys.c and mapped it to Insert in Buffer with D1:\036 (strikethrough control code), so strikethrough is available by default via that shortcut. deepend 2026-02-12 15:19:22 -07:00
  • 54428e9e40 Added a shared escape decoder for keybinding Data fields so key actions can interpret \n, \r, \t, \\, and hex-byte escapes like \x1e (raw byte insertion), with graceful fallback for invalid/unknown escapes. This is what enables entering strikethrough control byte 0x1E via keybindings (e.g., Data 1: \x1e). Updated Run Command to use the shared decoder instead of its previous newline-only parser, so it now supports the same escape set consistently. Updated Insert in Buffer to decode escapes before insertion, so \xNN inserts raw bytes rather than literal text. Updated key action help text to document the supported escape syntax for both Run Command and Insert in Buffer. deepend 2026-02-12 14:34:38 -07:00
  • a975ddc80a Merge pull request #57 from ZoiteChat/master deepend-tildeclub 2026-02-12 14:27:21 -07:00
  • b128a7ca59 Merge pull request #56 from ZoiteChat/master deepend-tildeclub 2026-02-12 14:26:11 -07:00
  • 3dd54d5fea Added additional Windows GTK glib-genmarshal discovery fallbacks for Python-based script locations to handle missing executables in common layouts. Broadened ATK import library detection to include libatk-1.0-0.lib for Win32 builds. deepend 2026-02-07 08:45:47 -07:00
  • 45ef2da0ac Added Windows dependency detection to enable/disable the Lua plugin build based on available headers and skip builds when missing. Updated the Windows build to prefer glib-genmarshal executables with a Python fallback for marshal generation. Made GTK link dependencies more robust by selecting available ATK library names before assembling GTK libs. deepend 2026-02-06 00:24:24 -07:00
  • 6491dc1bde Added JPEG runtime DLL patterns to the Windows release copy step so the build artifacts include JPEG dependencies required by GTK stack DLLs. Included JPEG runtime DLLs in the Windows installer payload to ensure they are shipped with both x86 and x64 packages. deepend 2026-02-06 00:03:08 -07:00
  • 1eee70ff9b Updated the Windows installer to package Lua lgi DLLs and scripts from the Lua 2.1 paths produced by the build, instead of the older paths, so the files are found during packaging. deepend 2026-02-05 23:16:12 -07:00
  • e77aca2037 Fix hicolor icon theme package name in build script deepend-tildeclub 2026-02-05 22:31:36 -07:00
  • 981cf94719 Add luajit and gstreamer to build process deepend-tildeclub 2026-02-05 22:14:47 -07:00
  • 0550fb90c5 Documented that the GTK 3 immodules are input method (IME) modules and printbackends are GTK 3 printing backends, noting they are still GTK-related but may be absent in some CI dependency bundles. deepend 2026-02-05 21:33:17 -07:00
  • 8cf9f8ba9d Change SourceDir from '..\release' to '..\rel' deepend-tildeclub 2026-02-05 16:51:43 -07:00
  • 1eb61cfd24 Update dependencies in openbsd-build.yml deepend-tildeclub 2026-02-05 15:38:02 -07:00
  • 75d54e25e9 Made tray_menu_destroy available in GTK3 builds to avoid implicit declaration errors during tray menu cleanup callbacks. deepend 2026-02-05 15:33:59 -07:00
  • 930e91834f Updated the tray menu callback compilation guard so the GtkStatusIcon popup handler is built for non-AppIndicator backends, fixing the missing symbol during linking. deepend 2026-02-05 15:24:17 -07:00
  • 8ad1394f1a Expanded the GTK3 deprecated-status-icon prototype guard so non-AppIndicator builds can compile without implicit function errors. deepend 2026-02-05 15:12:30 -07:00
  • a53ac4479b Modify GTK3 status icon definitions for Windows deepend-tildeclub 2026-02-05 14:55:37 -07:00
  • bd707e7514 Yes — it should fall back to the X11/StatusIcon backend, but the GTK3 code path was unconditionally including the appindicator header and selecting the appindicator backend. I updated the tray backend selection to only use appindicator when the library is available and otherwise fall back to GtkStatusIcon, which avoids the missing header error and restores the intended X11 fallback. deepend 2026-02-05 14:17:46 -07:00
  • eafc9ec997 Update gio-2.0 and GLIB version requirements deepend-tildeclub 2026-02-05 12:01:49 -07:00
  • 9a8b3fc232 Update gio-2.0 dependency version requirement deepend-tildeclub 2026-02-05 11:56:31 -07:00
  • fda50f0ff3 Update Meson version requirements and dependencies deepend-tildeclub 2026-02-05 11:54:10 -07:00
  • 65411b8ccb Update gio-2.0 and GLib version requirements deepend-tildeclub 2026-02-05 11:53:17 -07:00
  • 5c7991e873 Update gio-2.0 and GLib version requirements deepend-tildeclub 2026-02-05 11:51:03 -07:00
  • f42157fdd7 Made GTK3 AppIndicator dependencies optional and only define AppIndicator macros when the dependency is found. Added compile-time selection to use AppIndicator when available and fall back to GtkStatusIcon otherwise, keeping the status-icon backend available for non-AppIndicator builds (including GTK3 fallback). deepend 2026-02-05 11:25:07 -07:00
  • f80c3adfe0 Update SourceDir from 'rel' to 'release' deepend-tildeclub 2026-02-05 11:20:29 -07:00
  • 1c8db65b20 Change SourceDir path in installer script deepend-tildeclub 2026-02-05 11:20:06 -07:00
  • 1e21f2b148 Update SourceDir from 'rel' to 'release' deepend-tildeclub 2026-02-05 11:19:02 -07:00
  • 629f0d6502 Add libappindicator to OpenBSD build dependencies deepend-tildeclub 2026-02-05 10:24:04 -07:00
  • b69edb7936 Update GTK version in OpenBSD build workflow deepend-tildeclub 2026-02-05 10:04:20 -07:00
  • c49d8e4d44 Updated the Windows installer file list to accept both legacy libxml2-*.dll and new xml2-*.dll names, avoiding missing-file failures in builds. deepend 2026-02-05 09:57:26 -07:00
  • 045134fcff Updated the Windows installer file list to include libcrypto/libssl DLLs via wildcard matches, covering OpenSSL 3 artifacts and avoiding missing-file errors in builds. deepend 2026-02-05 09:03:50 -07:00
  • 9e9a0be80d Ensure gtkutil.h derives HAVE_GTK3 from GTK_MAJOR_VERSION when missing so GTK3/GTK4 builds select the correct typedefs and declarations in Windows builds that include gtkutil.h directly. Link libX11 on non-Windows builds regardless of GTK2/GTK3 to satisfy the X11 symbols used in gtkutil.c, fixing the GTK2 linker failure. deepend 2026-02-05 08:14:59 -07:00
  • 0dd25cb631 Set the GTK program name/class to the desktop ID before initialization to ensure window-to-desktop-entry mapping uses the correct identifier. Updated the desktop file’s StartupWMClass to match the desktop ID for consistent icon matching. deepend 2026-02-05 02:05:48 -07:00
  • eb46631a7d Added GTK utility helpers for box/grid creation and attachment that map GTK3 layout settings while preserving GTK2 fallbacks. Updated multiple GTK UI layout paths (setup, server list, notify, ban list, join dialog, and menu) to use the new helpers for GTK3-safe box/grid creation and attachment behavior. Added GTK3-safe attach option definitions and updated helper signatures to avoid GTK2-only types/macros in public headers. Updated gtkutil grid-attachment helpers to use the new attach option type in alignment/expansion logic. Switched banlist grid attachments to the new helper option flags for GTK3 builds. deepend 2026-02-05 01:59:15 -07:00
  • 0074a8ba1e Updated the Windows installer script to skip missing MS-Windows theme sources so builds don’t fail when that directory is absent. deepend 2026-02-05 01:31:03 -07:00
  • e187252afd Scoped GTK2 action-area layout to #if !HAVE_GTK3 in the quit dialog while keeping GTK3 action widget usage unchanged. Switched the join dialog OK button to gtk_dialog_add_action_widget() for GTK3 while preserving GTK2 action-area packing and layout. deepend 2026-02-05 00:04:07 -07:00
  • 0349e44856 Guarded the GTK3/Wayland redraw path in gtk_xtext_render_page with #if HAVE_GTK3 so GTK2 builds render immediately instead of waiting for expose events. deepend 2026-02-05 00:03:35 -07:00
  • d8985e9f91 Refactor copy.vcxproj for improved XML structure deepend-tildeclub 2026-02-04 23:38:03 -07:00
  • 4a70ae125d Update DLL source patterns in installer script deepend-tildeclub 2026-02-04 23:36:29 -07:00
  • 0b785c8e59 Add enchant library to Windows build process deepend-tildeclub 2026-02-04 23:29:05 -07:00
  • ae303db62b Added a fallback for gdk-3.lib detection in the Windows dependency library list to cover builds where the import library is named without the .0/-0 suffix. deepend 2026-02-04 22:28:04 -07:00
  • 45300a233b Fixed GTK2 build guard in gtkutil_tray_icon_supported by using #if HAVE_GTK3 so GTK2 builds skip the GTK3-only GDK_IS_X11_DISPLAY check. deepend 2026-02-04 21:07:49 -07:00
  • 65f417cf7d Added a GTK3 version fallback in sexy-spell-entry.c so Windows builds use the GTK3 code paths even when HAVE_GTK3 isn’t defined by config headers. Avoided MSVC unused-variable warnings in setup.c by scoping GTK2-only locals to GTK2 code paths. deepend 2026-02-04 21:03:04 -07:00
  • 07322293f3 Update zoitechat.props with new configuration deepend-tildeclub 2026-02-04 18:16:59 -07:00
  • 3efd975d2f Update DLL sources for GTK 3 in installer script deepend-tildeclub 2026-02-04 18:08:52 -07:00
  • c9ddfc086c Migrate project from GTK 2 to GTK 3 deepend-tildeclub 2026-02-04 17:45:39 -07:00
  • fb952dd209 Add GTK version check in fe-gtk.h deepend-tildeclub 2026-02-04 15:34:24 -07:00
  • 572e2173c3 Merge pull request #54 from ZoiteChat/master deepend-tildeclub 2026-02-04 14:46:48 -07:00
  • 752b10273b Updated the gtkobject.h include guard to rely on GTK_MAJOR_VERSION, preventing GTK3 Windows build failures when HAVE_GTK3 isn’t defined. deepend 2026-02-04 14:42:34 -07:00
  • 9aba312c8e Resolved the merge conflict in STS capability handling by keeping the clearer warning message for missing values. deepend 2026-02-04 13:13:51 -07:00
  • 983ae5337b Added a diagnostic message when an STS capability token is missing its value, while keeping the ignore behavior intact. deepend 2026-02-04 12:57:07 -07:00
  • 0fd51e5c8a Modify zoitechat.props for Gtk3 support and dependencies deepend-tildeclub 2026-02-04 12:46:32 -07:00
  • f58785c2e0 Added an explicit diagnostic when an STS capability token lacks a value while keeping the ignore policy unchanged. deepend 2026-02-04 12:42:22 -07:00
  • 3d030a96b7 Updated sts_handle_capability to return FALSE after logging the no‑TLS warning, so the insecure upgrade path doesn’t stop capability negotiation; it still returns TRUE only when an STS upgrade/reconnect is initiated or already in progress. Confirmed inbound_cap_ls only returns early when sts_upgrade_triggered is set by sts_handle_capability, which now only happens for real upgrade/reconnect initiation or in‑progress upgrades. deepend 2026-02-04 12:42:04 -07:00
  • 2ecf1c18fb Added STS value parsing in CAP ACK handling so sts= capability values are applied immediately before toggling capabilities. deepend 2026-02-04 12:41:32 -07:00
  • eae5a209d3 Updated STS parsing to ignore preload tokens that include a value while preserving duplicate-preload rejection for valid tokens. deepend 2026-02-04 11:58:13 -07:00
  • 78a00b5b88 Updated STS policy handling to preserve any existing stored port on secure updates rather than overwriting it from the current TLS port, keeping secure-path updates focused on duration/preload. deepend 2026-02-04 11:57:54 -07:00
  • 1ac688ec19 Update zoitechat.props with new dependencies and settings deepend-tildeclub 2026-02-04 11:41:47 -07:00
  • b9bc65e3c2 Updated STS parsing to only accept preload when it appears without a value, ignoring tokens like preload=0. deepend 2026-02-04 11:39:20 -07:00
  • 3d8d3958ea Updated STS parsing to treat duplicate port, duration, or preload keys as invalid by returning FALSE immediately when repeats are encountered. deepend 2026-02-04 11:35:40 -07:00
  • 1567062636 Update zoitechat.props with new project settings deepend-tildeclub 2026-02-04 10:53:20 -07:00