From 49c97108e593fdf86b0b901cdd1eec2c8cd590f8 Mon Sep 17 00:00:00 2001 From: deepend-tildeclub <58404188+deepend-tildeclub@users.noreply.github.com> Date: Sat, 14 Feb 2026 22:26:00 -0700 Subject: [PATCH 1/8] Update zoitechat.props for dependency paths and flags --- win32/zoitechat.props | 73 ++++++++++++++++++++++++++++++++++++++----- 1 file changed, 66 insertions(+), 7 deletions(-) diff --git a/win32/zoitechat.props b/win32/zoitechat.props index 3ae6f0b0..473063ba 100644 --- a/win32/zoitechat.props +++ b/win32/zoitechat.props @@ -14,7 +14,7 @@ - GTK_DISABLE_DEPRECATED;GDK_PIXBUF_DISABLE_DEPRECATED;G_DISABLE_SINGLE_INCLUDES;GDK_PIXBUF_DISABLE_SINGLE_INCLUDES;GTK_DISABLE_SINGLE_INCLUDES;HAVE_X509_GET_SIGNATURE_NID;HAVE_SSL_CTX_GET_SSL_METHOD;DEFAULT_CERT_FILE="cert.pem";HAVE_STRTOULL;strtoull=_strtoui64;strcasecmp=stricmp;strncasecmp=strnicmp;__inline__=__inline + GTK_DISABLE_DEPRECATED;GDK_PIXBUF_DISABLE_DEPRECATED;G_DISABLE_SINGLE_INCLUDES;GDK_PIXBUF_DISABLE_SINGLE_INCLUDES;GTK_DISABLE_SINGLE_INCLUDES;HAVE_X509_GET_SIGNATURE_NID;HAVE_SSL_CTX_GET_SSL_METHOD;DEFAULT_CERT_FILE="cert.pem";HAVE_STRTOULL;strtoull=_strtoui64;strcasecmp=stricmp;strncasecmp=strnicmp;__inline__=__inline;$(GtkDefines) $(YourDepsPath)\$(PlatformName)\release $(YourGendefPath) @@ -24,12 +24,70 @@ $(YourPython3Path)\$(PlatformName) python314 hcpython3 - $(DepsRoot)\include\luajit-2.1 - hclua - lua51 + true + false + true + false + true + false + $(DepsRoot)\include\luajit-2.1 + $(DepsRoot)\include\luajit + $(DepsRoot)\include\lua5.1 + $(DepsRoot)\include\lua51 + hclua + lua51 + luajit-5.1 + luajit + true + lua51.dll + luajit-5.1.dll + luajit.dll + $(DepsRoot)\share\lua\2.1 + $(DepsRoot)\share\lua\5.1 + $(DepsRoot)\lib\lua\2.1 + $(DepsRoot)\lib\lua\5.1 + false + "$(DepsRoot)\bin\glib-genmarshal.exe" + "$(Python3Path)\python.exe" "$(DepsRoot)\bin\glib-genmarshal" $(DepsRoot)\include\glib-2.0;$(DepsRoot)\lib\glib-2.0\include;$(DepsRoot)\include\libxml2 - $(DepsRoot)\include\gtk-2.0;$(DepsRoot)\lib\gtk-2.0\include;$(DepsRoot)\include\atk-1.0;$(DepsRoot)\include\cairo;$(DepsRoot)\include\pango-1.0;$(DepsRoot)\include\gdk-pixbuf-2.0 - gtk-win32-2.0.lib;gdk-win32-2.0.lib;atk-1.0.lib;gio-2.0.lib;gdk_pixbuf-2.0.lib;pangowin32-1.0.lib;pangocairo-1.0.lib;pango-1.0.lib;cairo.lib;gobject-2.0.lib;gmodule-2.0.lib;glib-2.0.lib;intl.lib;libxml2.lib;libcrypto.lib;libssl.lib;ssleay32.lib;wininet.lib;winmm.lib;ws2_32.lib + true + HAVE_GTK3 + $(DepsRoot)\include\gtk-3.0;$(DepsRoot)\lib\gtk-3.0\include + $(DepsRoot)\include\atk-1.0;$(DepsRoot)\include\cairo;$(DepsRoot)\include\pango-1.0;$(DepsRoot)\include\gdk-pixbuf-2.0;$(DepsRoot)\include\harfbuzz + $(Gtk3);$(GtkCommon) + ssleay32.lib + libeay32.lib + libssl.lib + libcrypto.lib + $(SslModernLib);$(CryptoModernLib) + $(SslLegacyLib);$(CryptoLegacyLib) + $(DepsRoot)\include + + gtk-3.lib + gtk-3.0.lib + libgtk-3.lib + libgtk-3.0.lib + gdk-3.lib + gdk-3.0.lib + libgdk-3.lib + libgdk-3.0.lib + intl.lib + libintl.lib + iconv.lib + libiconv.lib + zlib1.lib + zlib.lib + libxml2.lib + xml2.lib + libxml2-2.lib + jpeg.lib + libjpeg.lib + libjpeg-8.lib + libjpeg-9.lib + libpng16.lib + libpng16_static.lib + libpng.lib + $(Gtk3Lib);$(Gdk3Lib);wininet.lib;winmm.lib;ws2_32.lib;atk-1.0.lib;gio-2.0.lib;gdk_pixbuf-2.0.lib;pangowin32-1.0.lib;pangocairo-1.0.lib;pango-1.0.lib;cairo.lib;gobject-2.0.lib;gmodule-2.0.lib;glib-2.0.lib;$(IntlLib);$(IconvLib);$(ZlibLib);$(Xml2Lib);$(JpegLib);$(PngLib);$(OpenSslLibs) $(SolutionDir)..\data\\ $(SolutionDir)..\..\zoitechat-build $(ZoiteChatBuild)\$(PlatformName)\bin\ @@ -37,7 +95,7 @@ $(ZoiteChatBuild)\$(PlatformName)\lib\ $(ZoiteChatBuild)\$(PlatformName)\pdb\ $(ZoiteChatBuild)\$(PlatformName)\rel\ - "$(ProgramFiles)\Inno Setup 5\iscc.exe" + "$(ProgramFiles (x86))\Inno Setup 5\iscc.exe" @@ -81,3 +139,4 @@ + From b77690d046f08b6e3d094348270ae76c0a2abed6 Mon Sep 17 00:00:00 2001 From: deepend-tildeclub <58404188+deepend-tildeclub@users.noreply.github.com> Date: Sat, 14 Feb 2026 22:27:00 -0700 Subject: [PATCH 2/8] Refactor zoitechat.props configuration for clarity --- win32/zoitechat.props | 73 +++++-------------------------------------- 1 file changed, 7 insertions(+), 66 deletions(-) diff --git a/win32/zoitechat.props b/win32/zoitechat.props index 473063ba..3ae6f0b0 100644 --- a/win32/zoitechat.props +++ b/win32/zoitechat.props @@ -14,7 +14,7 @@ - GTK_DISABLE_DEPRECATED;GDK_PIXBUF_DISABLE_DEPRECATED;G_DISABLE_SINGLE_INCLUDES;GDK_PIXBUF_DISABLE_SINGLE_INCLUDES;GTK_DISABLE_SINGLE_INCLUDES;HAVE_X509_GET_SIGNATURE_NID;HAVE_SSL_CTX_GET_SSL_METHOD;DEFAULT_CERT_FILE="cert.pem";HAVE_STRTOULL;strtoull=_strtoui64;strcasecmp=stricmp;strncasecmp=strnicmp;__inline__=__inline;$(GtkDefines) + GTK_DISABLE_DEPRECATED;GDK_PIXBUF_DISABLE_DEPRECATED;G_DISABLE_SINGLE_INCLUDES;GDK_PIXBUF_DISABLE_SINGLE_INCLUDES;GTK_DISABLE_SINGLE_INCLUDES;HAVE_X509_GET_SIGNATURE_NID;HAVE_SSL_CTX_GET_SSL_METHOD;DEFAULT_CERT_FILE="cert.pem";HAVE_STRTOULL;strtoull=_strtoui64;strcasecmp=stricmp;strncasecmp=strnicmp;__inline__=__inline $(YourDepsPath)\$(PlatformName)\release $(YourGendefPath) @@ -24,70 +24,12 @@ $(YourPython3Path)\$(PlatformName) python314 hcpython3 - true - false - true - false - true - false - $(DepsRoot)\include\luajit-2.1 - $(DepsRoot)\include\luajit - $(DepsRoot)\include\lua5.1 - $(DepsRoot)\include\lua51 - hclua - lua51 - luajit-5.1 - luajit - true - lua51.dll - luajit-5.1.dll - luajit.dll - $(DepsRoot)\share\lua\2.1 - $(DepsRoot)\share\lua\5.1 - $(DepsRoot)\lib\lua\2.1 - $(DepsRoot)\lib\lua\5.1 - false - "$(DepsRoot)\bin\glib-genmarshal.exe" - "$(Python3Path)\python.exe" "$(DepsRoot)\bin\glib-genmarshal" + $(DepsRoot)\include\luajit-2.1 + hclua + lua51 $(DepsRoot)\include\glib-2.0;$(DepsRoot)\lib\glib-2.0\include;$(DepsRoot)\include\libxml2 - true - HAVE_GTK3 - $(DepsRoot)\include\gtk-3.0;$(DepsRoot)\lib\gtk-3.0\include - $(DepsRoot)\include\atk-1.0;$(DepsRoot)\include\cairo;$(DepsRoot)\include\pango-1.0;$(DepsRoot)\include\gdk-pixbuf-2.0;$(DepsRoot)\include\harfbuzz - $(Gtk3);$(GtkCommon) - ssleay32.lib - libeay32.lib - libssl.lib - libcrypto.lib - $(SslModernLib);$(CryptoModernLib) - $(SslLegacyLib);$(CryptoLegacyLib) - $(DepsRoot)\include - - gtk-3.lib - gtk-3.0.lib - libgtk-3.lib - libgtk-3.0.lib - gdk-3.lib - gdk-3.0.lib - libgdk-3.lib - libgdk-3.0.lib - intl.lib - libintl.lib - iconv.lib - libiconv.lib - zlib1.lib - zlib.lib - libxml2.lib - xml2.lib - libxml2-2.lib - jpeg.lib - libjpeg.lib - libjpeg-8.lib - libjpeg-9.lib - libpng16.lib - libpng16_static.lib - libpng.lib - $(Gtk3Lib);$(Gdk3Lib);wininet.lib;winmm.lib;ws2_32.lib;atk-1.0.lib;gio-2.0.lib;gdk_pixbuf-2.0.lib;pangowin32-1.0.lib;pangocairo-1.0.lib;pango-1.0.lib;cairo.lib;gobject-2.0.lib;gmodule-2.0.lib;glib-2.0.lib;$(IntlLib);$(IconvLib);$(ZlibLib);$(Xml2Lib);$(JpegLib);$(PngLib);$(OpenSslLibs) + $(DepsRoot)\include\gtk-2.0;$(DepsRoot)\lib\gtk-2.0\include;$(DepsRoot)\include\atk-1.0;$(DepsRoot)\include\cairo;$(DepsRoot)\include\pango-1.0;$(DepsRoot)\include\gdk-pixbuf-2.0 + gtk-win32-2.0.lib;gdk-win32-2.0.lib;atk-1.0.lib;gio-2.0.lib;gdk_pixbuf-2.0.lib;pangowin32-1.0.lib;pangocairo-1.0.lib;pango-1.0.lib;cairo.lib;gobject-2.0.lib;gmodule-2.0.lib;glib-2.0.lib;intl.lib;libxml2.lib;libcrypto.lib;libssl.lib;ssleay32.lib;wininet.lib;winmm.lib;ws2_32.lib $(SolutionDir)..\data\\ $(SolutionDir)..\..\zoitechat-build $(ZoiteChatBuild)\$(PlatformName)\bin\ @@ -95,7 +37,7 @@ $(ZoiteChatBuild)\$(PlatformName)\lib\ $(ZoiteChatBuild)\$(PlatformName)\pdb\ $(ZoiteChatBuild)\$(PlatformName)\rel\ - "$(ProgramFiles (x86))\Inno Setup 5\iscc.exe" + "$(ProgramFiles)\Inno Setup 5\iscc.exe" @@ -139,4 +81,3 @@ - From a384b8e29545484658deb151e4cd58cbfba12ae4 Mon Sep 17 00:00:00 2001 From: deepend-tildeclub <58404188+deepend-tildeclub@users.noreply.github.com> Date: Sun, 15 Feb 2026 09:32:34 -0700 Subject: [PATCH 3/8] Implement fallback procedures for Inno Download Plugin Added no-op fallback procedures for Inno Download Plugin. --- win32/installer/zoitechat.iss.tt | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/win32/installer/zoitechat.iss.tt b/win32/installer/zoitechat.iss.tt index 14de669c..c9b73c98 100644 --- a/win32/installer/zoitechat.iss.tt +++ b/win32/installer/zoitechat.iss.tt @@ -5,7 +5,10 @@ ;#define PROJECTDIR "C:\...\zoitechat\win32\installer\" ;http://mitrich.net23.net/?/inno-download-plugin.html +#ifexist "idp.iss" +#define USE_INNO_DOWNLOAD_PLUGIN #include +#endif [Setup] AppName=ZoiteChat @@ -203,6 +206,22 @@ Name: "{commonappdata}\Microsoft\Internet Explorer\Quick Launch\ZoiteChat"; File BeveledLabel= {#APPNAM} [Code] +#ifndef USE_INNO_DOWNLOAD_PLUGIN +// The Inno Download Plugin isn't always installed in CI environments. +// Provide no-op fallback procedures so installer compilation still succeeds. +procedure idpDownloadAfter(PageID: Integer); +begin +end; + +procedure idpClearFiles; +begin +end; + +procedure idpAddFile(URL: String; Filename: String); +begin +end; +#endif + ///////////////////////////////////////////////////////////////////// procedure InitializeWizard; begin From 8338e701b4fa7152c5ea9f4ba3b8ea25848af234 Mon Sep 17 00:00:00 2001 From: deepend-tildeclub <58404188+deepend-tildeclub@users.noreply.github.com> Date: Sun, 15 Feb 2026 09:33:46 -0700 Subject: [PATCH 4/8] Clean up installer script by removing unused code Removed Inno Download Plugin fallback procedures. --- win32/installer/zoitechat.iss.tt | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/win32/installer/zoitechat.iss.tt b/win32/installer/zoitechat.iss.tt index c9b73c98..14de669c 100644 --- a/win32/installer/zoitechat.iss.tt +++ b/win32/installer/zoitechat.iss.tt @@ -5,10 +5,7 @@ ;#define PROJECTDIR "C:\...\zoitechat\win32\installer\" ;http://mitrich.net23.net/?/inno-download-plugin.html -#ifexist "idp.iss" -#define USE_INNO_DOWNLOAD_PLUGIN #include -#endif [Setup] AppName=ZoiteChat @@ -206,22 +203,6 @@ Name: "{commonappdata}\Microsoft\Internet Explorer\Quick Launch\ZoiteChat"; File BeveledLabel= {#APPNAM} [Code] -#ifndef USE_INNO_DOWNLOAD_PLUGIN -// The Inno Download Plugin isn't always installed in CI environments. -// Provide no-op fallback procedures so installer compilation still succeeds. -procedure idpDownloadAfter(PageID: Integer); -begin -end; - -procedure idpClearFiles; -begin -end; - -procedure idpAddFile(URL: String; Filename: String); -begin -end; -#endif - ///////////////////////////////////////////////////////////////////// procedure InitializeWizard; begin From f945e3c2929f1c21dcb8e465ae9e5d0c65e55bc7 Mon Sep 17 00:00:00 2001 From: deepend-tildeclub <58404188+deepend-tildeclub@users.noreply.github.com> Date: Sun, 15 Feb 2026 09:48:15 -0700 Subject: [PATCH 5/8] Update fontconfig.dll to fontconfig-1.dll --- win32/installer/zoitechat.iss.tt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/win32/installer/zoitechat.iss.tt b/win32/installer/zoitechat.iss.tt index 14de669c..ed2e961b 100644 --- a/win32/installer/zoitechat.iss.tt +++ b/win32/installer/zoitechat.iss.tt @@ -118,7 +118,7 @@ Source: "atk-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: lib Source: "cairo.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs Source: "freetype.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs Source: "fribidi-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "fontconfig.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "fontconfig-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs Source: "gdk_pixbuf-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs Source: "gdk-win32-2.0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs Source: "gio-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs From 4fc859d9ef68a55d355ad257f49ecbb50e9ed51f Mon Sep 17 00:00:00 2001 From: deepend-tildeclub <58404188+deepend-tildeclub@users.noreply.github.com> Date: Sun, 15 Feb 2026 09:48:38 -0700 Subject: [PATCH 6/8] Fix fontconfig DLL source name in installer script --- win32/installer/zoitechat.iss.tt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/win32/installer/zoitechat.iss.tt b/win32/installer/zoitechat.iss.tt index ed2e961b..14de669c 100644 --- a/win32/installer/zoitechat.iss.tt +++ b/win32/installer/zoitechat.iss.tt @@ -118,7 +118,7 @@ Source: "atk-1.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: lib Source: "cairo.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs Source: "freetype.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs Source: "fribidi-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs -Source: "fontconfig-1.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs +Source: "fontconfig.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs Source: "gdk_pixbuf-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs Source: "gdk-win32-2.0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs Source: "gio-2.0-0.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: libs From 0e48187238479c0672b29c5be40e3d6166efe4d6 Mon Sep 17 00:00:00 2001 From: deepend-tildeclub <58404188+deepend-tildeclub@users.noreply.github.com> Date: Mon, 16 Feb 2026 01:59:53 -0700 Subject: [PATCH 7/8] Fix packing order for GUI panes based on preferences --- src/fe-gtk/maingui.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/fe-gtk/maingui.c b/src/fe-gtk/maingui.c index 310623ad..da998951 100644 --- a/src/fe-gtk/maingui.c +++ b/src/fe-gtk/maingui.c @@ -2721,11 +2721,13 @@ mg_create_center (session *sess, session_gui *gui, GtkWidget *box) if (prefs.hex_gui_win_swap) { gtk_paned_pack2 (GTK_PANED (gui->hpane_left), gui->vpane_left, FALSE, TRUE); + gtk_paned_pack2 (GTK_PANED (gui->hpane_left), gui->vpane_left, TRUE, TRUE); gtk_paned_pack1 (GTK_PANED (gui->hpane_left), gui->hpane_right, TRUE, TRUE); } else { gtk_paned_pack1 (GTK_PANED (gui->hpane_left), gui->vpane_left, FALSE, TRUE); + gtk_paned_pack1 (GTK_PANED (gui->hpane_left), gui->vpane_left, TRUE, TRUE); gtk_paned_pack2 (GTK_PANED (gui->hpane_left), gui->hpane_right, TRUE, TRUE); } gtk_paned_pack2 (GTK_PANED (gui->hpane_right), gui->vpane_right, FALSE, TRUE); From 07571330ba09232c02a8cefa0f088c4753a60648 Mon Sep 17 00:00:00 2001 From: deepend-tildeclub <58404188+deepend-tildeclub@users.noreply.github.com> Date: Mon, 16 Feb 2026 02:00:45 -0700 Subject: [PATCH 8/8] Remove redundant gtk_paned_pack calls in maingui.c --- src/fe-gtk/maingui.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/fe-gtk/maingui.c b/src/fe-gtk/maingui.c index da998951..310623ad 100644 --- a/src/fe-gtk/maingui.c +++ b/src/fe-gtk/maingui.c @@ -2721,13 +2721,11 @@ mg_create_center (session *sess, session_gui *gui, GtkWidget *box) if (prefs.hex_gui_win_swap) { gtk_paned_pack2 (GTK_PANED (gui->hpane_left), gui->vpane_left, FALSE, TRUE); - gtk_paned_pack2 (GTK_PANED (gui->hpane_left), gui->vpane_left, TRUE, TRUE); gtk_paned_pack1 (GTK_PANED (gui->hpane_left), gui->hpane_right, TRUE, TRUE); } else { gtk_paned_pack1 (GTK_PANED (gui->hpane_left), gui->vpane_left, FALSE, TRUE); - gtk_paned_pack1 (GTK_PANED (gui->hpane_left), gui->vpane_left, TRUE, TRUE); gtk_paned_pack2 (GTK_PANED (gui->hpane_left), gui->hpane_right, TRUE, TRUE); } gtk_paned_pack2 (GTK_PANED (gui->hpane_right), gui->vpane_right, FALSE, TRUE);