mirror of
https://github.com/ZoiteChat/zoitechat.git
synced 2026-04-01 10:10:18 +00:00
Compare commits
5 Commits
chore/upda
...
64bffd0dc8
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
64bffd0dc8 | ||
|
|
b451240dfd | ||
| 41cc1f617f | |||
| ed671eac25 | |||
| 9f2529adb6 |
@@ -4,7 +4,7 @@
|
|||||||
<extends>net.zoite.Zoitechat</extends>
|
<extends>net.zoite.Zoitechat</extends>
|
||||||
<name>@NAME@ Plugin</name>
|
<name>@NAME@ Plugin</name>
|
||||||
<summary>@SUMMARY@</summary>
|
<summary>@SUMMARY@</summary>
|
||||||
<url type="homepage">https://zoitechat.zoite.net/</url>
|
<url type="homepage">https://zoitechat.org/</url>
|
||||||
<project_license>@LICENSE@</project_license>
|
<project_license>@LICENSE@</project_license>
|
||||||
<metadata_license>CC0-1.0</metadata_license>
|
<metadata_license>CC0-1.0</metadata_license>
|
||||||
<update_contact>deepend_AT_zoite.net</update_contact>
|
<update_contact>deepend_AT_zoite.net</update_contact>
|
||||||
|
|||||||
@@ -16,12 +16,12 @@
|
|||||||
<p>ZoiteChat is an easy to use yet extensible IRC Client based on Hexchat. It allows you to securely join multiple networks and talk to users privately or in channels using a customizable interface. You can even transfer files.</p>
|
<p>ZoiteChat is an easy to use yet extensible IRC Client based on Hexchat. It allows you to securely join multiple networks and talk to users privately or in channels using a customizable interface. You can even transfer files.</p>
|
||||||
<p>ZoiteChat supports features such as: DCC, SASL, proxies, spellcheck, alerts, logging, custom themes, and Python/Perl scripts.</p>
|
<p>ZoiteChat supports features such as: DCC, SASL, proxies, spellcheck, alerts, logging, custom themes, and Python/Perl scripts.</p>
|
||||||
</description>
|
</description>
|
||||||
<url type="homepage">https://zoitechat.zoite.net</url>
|
<url type="homepage">https://zoitechat.org</url>
|
||||||
<url type="bugtracker">https://github.com/zoitechat/zoitechat</url>
|
<url type="bugtracker">https://github.com/zoitechat/zoitechat</url>
|
||||||
<url type="help">https://docs.zoitechat.zoite.net/en/latest/</url>
|
<url type="help">https://docs.zoitechat.org/en/latest/</url>
|
||||||
<screenshots>
|
<screenshots>
|
||||||
<screenshot type="default">
|
<screenshot type="default">
|
||||||
<image>https://zoitechat.zoite.net/assets/ZoiteChat.png</image>
|
<image>https://zoitechat.org/assets/ZoiteChat.png</image>
|
||||||
<caption>Main Chat Window</caption>
|
<caption>Main Chat Window</caption>
|
||||||
</screenshot>
|
</screenshot>
|
||||||
</screenshots>
|
</screenshots>
|
||||||
@@ -100,14 +100,6 @@
|
|||||||
</ul>
|
</ul>
|
||||||
</description>
|
</description>
|
||||||
</release>
|
</release>
|
||||||
<release date="2026-03-22" version="2.18.0~pre5">
|
|
||||||
<description>
|
|
||||||
<p>Version metadata update:</p>
|
|
||||||
<ul>
|
|
||||||
<li>Bumped release version references to <code>2.18.0~pre5</code> across build and packaging files.</li>
|
|
||||||
</ul>
|
|
||||||
</description>
|
|
||||||
</release>
|
|
||||||
<release date="2026-03-14" version="2.18.0~pre4">
|
<release date="2026-03-14" version="2.18.0~pre4">
|
||||||
<description>
|
<description>
|
||||||
<p>UI fixes, topic bar improvements, and selection styling updates:</p>
|
<p>UI fixes, topic bar improvements, and selection styling updates:</p>
|
||||||
|
|||||||
@@ -1457,14 +1457,14 @@ perl_load_file (char *filename)
|
|||||||
"You must have a Visual C++ build of Perl "
|
"You must have a Visual C++ build of Perl "
|
||||||
PERL_REQUIRED_VERSION " installed in order to\n"
|
PERL_REQUIRED_VERSION " installed in order to\n"
|
||||||
"run Perl scripts. A reboot may be required.\n\n"
|
"run Perl scripts. A reboot may be required.\n\n"
|
||||||
"http://zoitechat.zoite.net/downloads.html\n\n"
|
"http://zoitechat.org/downloads.html\n\n"
|
||||||
"I have found Perl 5.6, but that is too old.");
|
"I have found Perl 5.6, but that is too old.");
|
||||||
} else {
|
} else {
|
||||||
thread_mbox ("Cannot open " PERL_DLL "!\n\n"
|
thread_mbox ("Cannot open " PERL_DLL "!\n\n"
|
||||||
"You must have a Visual C++ build of Perl "
|
"You must have a Visual C++ build of Perl "
|
||||||
PERL_REQUIRED_VERSION " installed in order to\n"
|
PERL_REQUIRED_VERSION " installed in order to\n"
|
||||||
"run Perl scripts. A reboot may be required.\n\n"
|
"run Perl scripts. A reboot may be required.\n\n"
|
||||||
"http://zoitechat.zoite.net/downloads.html\n\n"
|
"http://zoitechat.org/downloads.html\n\n"
|
||||||
"Make sure Perl's bin directory is in your PATH.");
|
"Make sure Perl's bin directory is in your PATH.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,7 @@
|
|||||||
|
|
||||||
#include "zoitechat-plugin.h"
|
#include "zoitechat-plugin.h"
|
||||||
|
|
||||||
#define APPCAST_URL "https://zoitechat.zoite.net/appcast.xml"
|
#define APPCAST_URL "https://zoitechat.org/appcast.xml"
|
||||||
|
|
||||||
static zoitechat_plugin *ph;
|
static zoitechat_plugin *ph;
|
||||||
static char name[] = "Update Checker";
|
static char name[] = "Update Checker";
|
||||||
|
|||||||
@@ -33,8 +33,8 @@
|
|||||||
|
|
||||||
ZoiteChat is an HexChat based IRC client for Windows and UNIX-like operating systems.
|
ZoiteChat is an HexChat based IRC client for Windows and UNIX-like operating systems.
|
||||||
See [IRCHelp.org](http://irchelp.org) for information about IRC in general.
|
See [IRCHelp.org](http://irchelp.org) for information about IRC in general.
|
||||||
For more information on ZoiteChat please read our [documentation](https://docs.zoitechat.zoite.net/):
|
For more information on ZoiteChat please read our [documentation](https://docs.zoitechat.org/):
|
||||||
- [Downloads](https://zoitechat.zoite.net/download)
|
- [Downloads](https://zoitechat.org/download)
|
||||||
|
|
||||||
- [Troubleshooting](troubleshooting.md)
|
- [Troubleshooting](troubleshooting.md)
|
||||||
|
|
||||||
|
|||||||
@@ -445,6 +445,7 @@ const struct prefs vars[] =
|
|||||||
{"gui_dark_mode", P_OFFINT (hex_gui_dark_mode), TYPE_INT},
|
{"gui_dark_mode", P_OFFINT (hex_gui_dark_mode), TYPE_INT},
|
||||||
{"gui_gtk3_variant", P_OFFINT (hex_gui_gtk3_variant), TYPE_INT},
|
{"gui_gtk3_variant", P_OFFINT (hex_gui_gtk3_variant), TYPE_INT},
|
||||||
{"gui_tab_layout", P_OFFINT (hex_gui_tab_layout), TYPE_INT},
|
{"gui_tab_layout", P_OFFINT (hex_gui_tab_layout), TYPE_INT},
|
||||||
|
{"gui_tab_closebuttons", P_OFFINT (hex_gui_tab_closebuttons), TYPE_BOOL},
|
||||||
{"gui_tab_middleclose", P_OFFINT (hex_gui_tab_middleclose), TYPE_BOOL},
|
{"gui_tab_middleclose", P_OFFINT (hex_gui_tab_middleclose), TYPE_BOOL},
|
||||||
{"gui_tab_newtofront", P_OFFINT (hex_gui_tab_newtofront), TYPE_INT},
|
{"gui_tab_newtofront", P_OFFINT (hex_gui_tab_newtofront), TYPE_INT},
|
||||||
{"gui_tab_pos", P_OFFINT (hex_gui_tab_pos), TYPE_INT},
|
{"gui_tab_pos", P_OFFINT (hex_gui_tab_pos), TYPE_INT},
|
||||||
@@ -777,6 +778,7 @@ load_default_config(void)
|
|||||||
prefs.hex_gui_tab_chans = 1;
|
prefs.hex_gui_tab_chans = 1;
|
||||||
prefs.hex_gui_tab_dialogs = 1;
|
prefs.hex_gui_tab_dialogs = 1;
|
||||||
prefs.hex_gui_tab_icons = 1;
|
prefs.hex_gui_tab_icons = 1;
|
||||||
|
prefs.hex_gui_tab_closebuttons = 1;
|
||||||
prefs.hex_gui_tab_middleclose = 1;
|
prefs.hex_gui_tab_middleclose = 1;
|
||||||
prefs.hex_gui_tab_server = 1;
|
prefs.hex_gui_tab_server = 1;
|
||||||
prefs.hex_gui_tab_sort = 1;
|
prefs.hex_gui_tab_sort = 1;
|
||||||
|
|||||||
@@ -4070,7 +4070,7 @@ const struct commands xc_cmds[] = {
|
|||||||
{"ME", cmd_me, 0, 0, 1,
|
{"ME", cmd_me, 0, 0, 1,
|
||||||
N_("ME <action>, sends the action to the current channel (actions are written in the 3rd person, like /me jumps)")},
|
N_("ME <action>, sends the action to the current channel (actions are written in the 3rd person, like /me jumps)")},
|
||||||
{"MENU", cmd_menu, 0, 0, 1, "MENU [-eX] [-i<ICONFILE>] [-k<mod>,<key>] [-m] [-pX] [-r<X,group>] [-tX] {ADD|DEL} <path> [command] [unselect command]\n"
|
{"MENU", cmd_menu, 0, 0, 1, "MENU [-eX] [-i<ICONFILE>] [-k<mod>,<key>] [-m] [-pX] [-r<X,group>] [-tX] {ADD|DEL} <path> [command] [unselect command]\n"
|
||||||
" See https://docs.zoitechat.zoite.net/en/latest/en/latest/plugins.html#controlling-the-gui for more details."},
|
" See https://docs.zoitechat.org/en/latest/en/latest/plugins.html#controlling-the-gui for more details."},
|
||||||
{"MHOP", cmd_mhop, 1, 1, 1,
|
{"MHOP", cmd_mhop, 1, 1, 1,
|
||||||
N_("MHOP, Mass hop's all users in the current channel (needs chanop)")},
|
N_("MHOP, Mass hop's all users in the current channel (needs chanop)")},
|
||||||
{"MKICK", cmd_mkick, 1, 1, 1,
|
{"MKICK", cmd_mkick, 1, 1, 1,
|
||||||
|
|||||||
@@ -265,6 +265,7 @@ struct zoitechatprefs
|
|||||||
int hex_gui_search_pos;
|
int hex_gui_search_pos;
|
||||||
int hex_gui_slist_select;
|
int hex_gui_slist_select;
|
||||||
int hex_gui_tab_layout;
|
int hex_gui_tab_layout;
|
||||||
|
int hex_gui_tab_closebuttons;
|
||||||
int hex_gui_tab_middleclose;
|
int hex_gui_tab_middleclose;
|
||||||
int hex_gui_tab_newtofront;
|
int hex_gui_tab_newtofront;
|
||||||
int hex_gui_tab_pos;
|
int hex_gui_tab_pos;
|
||||||
|
|||||||
@@ -653,7 +653,7 @@ tab_click_cb (GtkWidget *wid, GdkEventButton *event, chan *ch)
|
|||||||
if (event->button == 1 && event->type == GDK_BUTTON_PRESS)
|
if (event->button == 1 && event->type == GDK_BUTTON_PRESS)
|
||||||
{
|
{
|
||||||
close_button = g_object_get_data (G_OBJECT (wid), "tab-close-button");
|
close_button = g_object_get_data (G_OBJECT (wid), "tab-close-button");
|
||||||
if (close_button &&
|
if (prefs.hex_gui_tab_closebuttons && close_button &&
|
||||||
gtk_widget_translate_coordinates (close_button, wid, 0, 0, &close_x, &close_y))
|
gtk_widget_translate_coordinates (close_button, wid, 0, 0, &close_x, &close_y))
|
||||||
{
|
{
|
||||||
gtk_widget_get_allocation (close_button, &close_alloc);
|
gtk_widget_get_allocation (close_button, &close_alloc);
|
||||||
@@ -679,7 +679,7 @@ tab_close_motion_cb (GtkWidget *wid, GdkEventMotion *event, chan *ch)
|
|||||||
gboolean hover = FALSE;
|
gboolean hover = FALSE;
|
||||||
|
|
||||||
close_button = g_object_get_data (G_OBJECT (wid), "tab-close-button");
|
close_button = g_object_get_data (G_OBJECT (wid), "tab-close-button");
|
||||||
if (close_button &&
|
if (prefs.hex_gui_tab_closebuttons && close_button &&
|
||||||
gtk_widget_translate_coordinates (close_button, wid, 0, 0, &close_x, &close_y))
|
gtk_widget_translate_coordinates (close_button, wid, 0, 0, &close_x, &close_y))
|
||||||
{
|
{
|
||||||
gtk_widget_get_allocation (close_button, &close_alloc);
|
gtk_widget_get_allocation (close_button, &close_alloc);
|
||||||
@@ -714,7 +714,7 @@ tab_close_leave_cb (GtkWidget *wid, GdkEventCrossing *event, chan *ch)
|
|||||||
GtkWidget *close_button;
|
GtkWidget *close_button;
|
||||||
|
|
||||||
close_button = g_object_get_data (G_OBJECT (wid), "tab-close-button");
|
close_button = g_object_get_data (G_OBJECT (wid), "tab-close-button");
|
||||||
if (close_button)
|
if (prefs.hex_gui_tab_closebuttons && close_button)
|
||||||
gtk_widget_unset_state_flags (close_button, GTK_STATE_FLAG_PRELIGHT);
|
gtk_widget_unset_state_flags (close_button, GTK_STATE_FLAG_PRELIGHT);
|
||||||
if (gtk_widget_get_window (wid))
|
if (gtk_widget_get_window (wid))
|
||||||
gdk_window_set_cursor (gtk_widget_get_window (wid), NULL);
|
gdk_window_set_cursor (gtk_widget_get_window (wid), NULL);
|
||||||
@@ -780,6 +780,8 @@ cv_tabs_add (chanview *cv, chan *ch, char *name, GtkTreeIter *parent)
|
|||||||
G_CALLBACK (tab_toggled_cb), ch);
|
G_CALLBACK (tab_toggled_cb), ch);
|
||||||
g_object_set_data (G_OBJECT (but), "u", ch->userdata);
|
g_object_set_data (G_OBJECT (but), "u", ch->userdata);
|
||||||
gtk_widget_show_all (hbox);
|
gtk_widget_show_all (hbox);
|
||||||
|
if (!prefs.hex_gui_tab_closebuttons)
|
||||||
|
gtk_widget_hide (close_button);
|
||||||
|
|
||||||
tab_add_real (cv, but, ch);
|
tab_add_real (cv, but, ch);
|
||||||
|
|
||||||
|
|||||||
@@ -1717,7 +1717,7 @@ menu_ctcpguiopen (void)
|
|||||||
static void
|
static void
|
||||||
menu_docs (GtkWidget *wid, gpointer none)
|
menu_docs (GtkWidget *wid, gpointer none)
|
||||||
{
|
{
|
||||||
fe_open_url ("https://docs.zoitechat.zoite.net/en/latest/");
|
fe_open_url ("https://docs.zoitechat.org/en/latest/");
|
||||||
}
|
}
|
||||||
|
|
||||||
/*static void
|
/*static void
|
||||||
@@ -1862,7 +1862,7 @@ about_dialog_response (GtkDialog *dialog, int response, gpointer data)
|
|||||||
{
|
{
|
||||||
if (response == GTK_RESPONSE_HELP)
|
if (response == GTK_RESPONSE_HELP)
|
||||||
{
|
{
|
||||||
fe_open_url ("http://zoitechat.zoite.net");
|
fe_open_url ("http://zoitechat.org");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (response == GTK_RESPONSE_APPLY)
|
if (response == GTK_RESPONSE_APPLY)
|
||||||
@@ -1888,8 +1888,7 @@ menu_about (GtkWidget *wid, gpointer sess)
|
|||||||
GtkWidget *license;
|
GtkWidget *license;
|
||||||
GtkWidget *close;
|
GtkWidget *close;
|
||||||
GtkWidget *actions;
|
GtkWidget *actions;
|
||||||
GList *children;
|
GtkWidget *default_close;
|
||||||
GList *child;
|
|
||||||
static const gchar *empty_people[] = { NULL };
|
static const gchar *empty_people[] = { NULL };
|
||||||
theme_manager_attach_window (GTK_WIDGET (dialog));
|
theme_manager_attach_window (GTK_WIDGET (dialog));
|
||||||
char comment[512];
|
char comment[512];
|
||||||
@@ -1918,14 +1917,13 @@ menu_about (GtkWidget *wid, gpointer sess)
|
|||||||
gtk_about_dialog_set_logo (dialog, pix_zoitechat);
|
gtk_about_dialog_set_logo (dialog, pix_zoitechat);
|
||||||
gtk_about_dialog_set_copyright (dialog, "\302\251 1998-2010 Peter \305\275elezn\303\275\n\302\251 2009-2014 Berke Viktor\n\302\251 2015-2025 Patrick Griffis\n\302\251 2026 deepend");
|
gtk_about_dialog_set_copyright (dialog, "\302\251 1998-2010 Peter \305\275elezn\303\275\n\302\251 2009-2014 Berke Viktor\n\302\251 2015-2025 Patrick Griffis\n\302\251 2026 deepend");
|
||||||
gtk_about_dialog_set_comments (dialog, comment);
|
gtk_about_dialog_set_comments (dialog, comment);
|
||||||
actions = gtk_dialog_get_action_area (GTK_DIALOG (dialog));
|
default_close = gtk_dialog_get_widget_for_response (GTK_DIALOG (dialog), GTK_RESPONSE_CANCEL);
|
||||||
children = gtk_container_get_children (GTK_CONTAINER (actions));
|
if (default_close)
|
||||||
for (child = children; child; child = child->next)
|
gtk_widget_destroy (default_close);
|
||||||
gtk_widget_destroy (GTK_WIDGET (child->data));
|
|
||||||
g_list_free (children);
|
|
||||||
website = gtk_dialog_add_button (GTK_DIALOG (dialog), "Website", GTK_RESPONSE_HELP);
|
website = gtk_dialog_add_button (GTK_DIALOG (dialog), "Website", GTK_RESPONSE_HELP);
|
||||||
license = gtk_dialog_add_button (GTK_DIALOG (dialog), "License", GTK_RESPONSE_APPLY);
|
license = gtk_dialog_add_button (GTK_DIALOG (dialog), "License", GTK_RESPONSE_APPLY);
|
||||||
close = gtk_dialog_add_button (GTK_DIALOG (dialog), _("_Close"), GTK_RESPONSE_CLOSE);
|
close = gtk_dialog_add_button (GTK_DIALOG (dialog), _("_Close"), GTK_RESPONSE_CLOSE);
|
||||||
|
actions = gtk_widget_get_parent (close);
|
||||||
gtk_button_box_set_child_secondary (GTK_BUTTON_BOX (actions), website, TRUE);
|
gtk_button_box_set_child_secondary (GTK_BUTTON_BOX (actions), website, TRUE);
|
||||||
gtk_button_box_set_child_secondary (GTK_BUTTON_BOX (actions), license, TRUE);
|
gtk_button_box_set_child_secondary (GTK_BUTTON_BOX (actions), license, TRUE);
|
||||||
gtk_button_box_set_child_secondary (GTK_BUTTON_BOX (actions), close, FALSE);
|
gtk_button_box_set_child_secondary (GTK_BUTTON_BOX (actions), close, FALSE);
|
||||||
|
|||||||
@@ -330,6 +330,7 @@ static const setting tabs_settings[] =
|
|||||||
{ST_TOGGLE, N_("Show icons in the channel tree"), P_OFFINTNL(hex_gui_tab_icons), 0, 0, 0},
|
{ST_TOGGLE, N_("Show icons in the channel tree"), P_OFFINTNL(hex_gui_tab_icons), 0, 0, 0},
|
||||||
{ST_TOGGLE, N_("Show dotted lines in the channel tree"), P_OFFINTNL(hex_gui_tab_dots), 0, 0, 0},
|
{ST_TOGGLE, N_("Show dotted lines in the channel tree"), P_OFFINTNL(hex_gui_tab_dots), 0, 0, 0},
|
||||||
{ST_TOGGLE, N_("Scroll mouse-wheel to change tabs"), P_OFFINTNL (hex_gui_tab_scrollchans), 0, 0, 0},
|
{ST_TOGGLE, N_("Scroll mouse-wheel to change tabs"), P_OFFINTNL (hex_gui_tab_scrollchans), 0, 0, 0},
|
||||||
|
{ST_TOGGLE, N_("Show close button on tabs"), P_OFFINTNL(hex_gui_tab_closebuttons), 0, 0, 0},
|
||||||
{ST_TOGGLE, N_("Middle click to close tab"), P_OFFINTNL(hex_gui_tab_middleclose), 0, 0, 0},
|
{ST_TOGGLE, N_("Middle click to close tab"), P_OFFINTNL(hex_gui_tab_middleclose), 0, 0, 0},
|
||||||
{ST_TOGGLE, N_("Smaller text"), P_OFFINTNL(hex_gui_tab_small), 0, 0, 0},
|
{ST_TOGGLE, N_("Smaller text"), P_OFFINTNL(hex_gui_tab_small), 0, 0, 0},
|
||||||
{ST_MENU, N_("Focus new tabs:"), P_OFFINTNL(hex_gui_tab_newtofront), 0, focusnewtabsmenu, 0},
|
{ST_MENU, N_("Focus new tabs:"), P_OFFINTNL(hex_gui_tab_newtofront), 0, focusnewtabsmenu, 0},
|
||||||
@@ -2186,6 +2187,8 @@ setup_apply (struct zoitechatprefs *pr)
|
|||||||
noapply = TRUE;
|
noapply = TRUE;
|
||||||
if (DIFF (hex_gui_tab_icons))
|
if (DIFF (hex_gui_tab_icons))
|
||||||
noapply = TRUE;
|
noapply = TRUE;
|
||||||
|
if (DIFF (hex_gui_tab_closebuttons))
|
||||||
|
noapply = TRUE;
|
||||||
if (DIFF (hex_gui_tab_server))
|
if (DIFF (hex_gui_tab_server))
|
||||||
noapply = TRUE;
|
noapply = TRUE;
|
||||||
if (DIFF (hex_gui_tab_small))
|
if (DIFF (hex_gui_tab_small))
|
||||||
|
|||||||
@@ -9,10 +9,10 @@ AppName=ZoiteChat
|
|||||||
AppVersion={#APPVER}
|
AppVersion={#APPVER}
|
||||||
AppVerName=ZoiteChat {#APPVER}
|
AppVerName=ZoiteChat {#APPVER}
|
||||||
AppPublisher=ZoiteChat
|
AppPublisher=ZoiteChat
|
||||||
AppPublisherURL=http://zoitechat.zoite.net
|
AppPublisherURL=http://zoitechat.org
|
||||||
AppCopyright=Copyright (C) 1998-2010 Peter Zelezny
|
AppCopyright=Copyright (C) 1998-2010 Peter Zelezny
|
||||||
AppSupportURL=https://github.com/zoitechat/zoitechat/issues
|
AppSupportURL=https://github.com/zoitechat/zoitechat/issues
|
||||||
AppUpdatesURL=http://zoitechat.zoite.net/downloads.html
|
AppUpdatesURL=http://zoitechat.org/downloads.html
|
||||||
LicenseFile=share\doc\zoitechat\COPYING
|
LicenseFile=share\doc\zoitechat\COPYING
|
||||||
UninstallDisplayIcon={app}\zoitechat.exe
|
UninstallDisplayIcon={app}\zoitechat.exe
|
||||||
UninstallDisplayName=ZoiteChat
|
UninstallDisplayName=ZoiteChat
|
||||||
@@ -61,6 +61,9 @@ Name: "langs"; Description: "Language Interfaces"; Types: custom; Flags: disable
|
|||||||
Name: "langs\lua"; Description: "Lua"; Types: normal custom; Flags: disablenouninstallwarning
|
Name: "langs\lua"; Description: "Lua"; Types: normal custom; Flags: disablenouninstallwarning
|
||||||
Name: "langs\perl"; Description: "Perl (requires Perl 5.42)"; Types: custom; Flags: disablenouninstallwarning
|
Name: "langs\perl"; Description: "Perl (requires Perl 5.42)"; Types: custom; Flags: disablenouninstallwarning
|
||||||
Name: "langs\python"; Description: "Python (requires Python 3.14.3)"; Types: custom; Flags: disablenouninstallwarning
|
Name: "langs\python"; Description: "Python (requires Python 3.14.3)"; Types: custom; Flags: disablenouninstallwarning
|
||||||
|
Name: "themes"; Description: "GTK3 Themes"; Types: normal minimal custom; Flags: disablenouninstallwarning
|
||||||
|
Name: "themes\windows10"; Description: "Windows 10"; Types: normal minimal custom; Flags: disablenouninstallwarning
|
||||||
|
Name: "themes\windows10dark"; Description: "Windows 10 Dark"; Types: normal minimal custom; Flags: disablenouninstallwarning
|
||||||
Name: "deps"; Description: "Dependencies"; Types: custom; Flags: disablenouninstallwarning
|
Name: "deps"; Description: "Dependencies"; Types: custom; Flags: disablenouninstallwarning
|
||||||
Name: "deps\vcredist2015"; Description: "Visual C++ Redistributable 2015"; Types: normal minimal custom; Flags: disablenouninstallwarning
|
Name: "deps\vcredist2015"; Description: "Visual C++ Redistributable 2015"; Types: normal minimal custom; Flags: disablenouninstallwarning
|
||||||
|
|
||||||
@@ -88,6 +91,11 @@ Filename: "{tmp}\perl.msi"; StatusMsg: "Installing Perl"; Components: langs\perl
|
|||||||
Filename: "{tmp}\python.msi"; StatusMsg: "Installing Python"; Components: langs\python; Flags: shellexec skipifdoesntexist; Tasks: not portable
|
Filename: "{tmp}\python.msi"; StatusMsg: "Installing Python"; Components: langs\python; Flags: shellexec skipifdoesntexist; Tasks: not portable
|
||||||
Filename: "{tmp}\python.exe"; Parameters: "InstallAllUsers=1 PrependPath=1"; StatusMsg: "Installing Python"; Components: langs\python; Flags: shellexec skipifdoesntexist; Tasks: not portable
|
Filename: "{tmp}\python.exe"; Parameters: "InstallAllUsers=1 PrependPath=1"; StatusMsg: "Installing Python"; Components: langs\python; Flags: shellexec skipifdoesntexist; Tasks: not portable
|
||||||
Filename: "{tmp}\spelling-dicts.exe"; Parameters: "/verysilent"; StatusMsg: "Installing Spelling Dictionaries"; Components: spell; Flags: skipifdoesntexist; Tasks: not portable
|
Filename: "{tmp}\spelling-dicts.exe"; Parameters: "/verysilent"; StatusMsg: "Installing Spelling Dictionaries"; Components: spell; Flags: skipifdoesntexist; Tasks: not portable
|
||||||
|
Filename: "{sys}\WindowsPowerShell\v1.0\powershell.exe"; Parameters: "-NoProfile -ExecutionPolicy Bypass -Command ""Expand-Archive -LiteralPath '{tmp}\Windows-10-3.2.1.zip' -DestinationPath '{userappdata}\ZoiteChat\gtk3-themes' -Force"""; StatusMsg: "Installing GTK3 Theme: Windows 10"; Components: themes\windows10; Flags: runhidden waituntilterminated skipifdoesntexist
|
||||||
|
Filename: "{sys}\WindowsPowerShell\v1.0\powershell.exe"; Parameters: "-NoProfile -ExecutionPolicy Bypass -Command ""Expand-Archive -LiteralPath '{tmp}\Windows-10-Dark-3.2.1-dark.zip' -DestinationPath '{userappdata}\ZoiteChat\gtk3-themes' -Force"""; StatusMsg: "Installing GTK3 Theme: Windows 10 Dark"; Components: themes\windows10dark; Flags: runhidden waituntilterminated skipifdoesntexist
|
||||||
|
|
||||||
|
[Dirs]
|
||||||
|
Name: "{userappdata}\ZoiteChat\gtk3-themes"; Components: themes
|
||||||
|
|
||||||
[Files]
|
[Files]
|
||||||
Source: "portable-mode"; DestDir: "{app}"; Tasks: portable
|
Source: "portable-mode"; DestDir: "{app}"; Tasks: portable
|
||||||
@@ -196,6 +204,10 @@ Name: "{commonappdata}\Microsoft\Internet Explorer\Quick Launch\ZoiteChat"; File
|
|||||||
[Messages]
|
[Messages]
|
||||||
BeveledLabel= {#APPNAM}
|
BeveledLabel= {#APPNAM}
|
||||||
|
|
||||||
|
[UninstallDelete]
|
||||||
|
Type: filesandordirs; Name: "{userappdata}\ZoiteChat\gtk3-themes\Windows-10-3.2.1"; Components: themes\windows10
|
||||||
|
Type: filesandordirs; Name: "{userappdata}\ZoiteChat\gtk3-themes\Windows-10-Dark-3.2.1-dark"; Components: themes\windows10dark
|
||||||
|
|
||||||
[Code]
|
[Code]
|
||||||
#ifndef USE_INNO_DOWNLOAD_PLUGIN
|
#ifndef USE_INNO_DOWNLOAD_PLUGIN
|
||||||
var
|
var
|
||||||
@@ -336,6 +348,12 @@ begin
|
|||||||
begin
|
begin
|
||||||
idpClearFiles;
|
idpClearFiles;
|
||||||
|
|
||||||
|
if IsComponentSelected('themes\windows10') then
|
||||||
|
idpAddFile('https://dl.zoitechat.zoite.net/themes/GTK3Themes/Windows-10-3.2.1.zip', ExpandConstant('{tmp}\Windows-10-3.2.1.zip'));
|
||||||
|
|
||||||
|
if IsComponentSelected('themes\windows10dark') then
|
||||||
|
idpAddFile('https://dl.zoitechat.zoite.net/themes/GTK3Themes/Windows-10-Dark-3.2.1-dark.zip', ExpandConstant('{tmp}\Windows-10-Dark-3.2.1-dark.zip'));
|
||||||
|
|
||||||
if not IsTaskSelected('portable') then
|
if not IsTaskSelected('portable') then
|
||||||
begin
|
begin
|
||||||
|
|
||||||
@@ -389,6 +407,21 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
if CurPageID = wpReady then
|
if CurPageID = wpReady then
|
||||||
|
begin
|
||||||
|
if IsComponentSelected('themes\windows10') and not FileExists(ExpandConstant('{tmp}\Windows-10-3.2.1.zip')) then
|
||||||
|
begin
|
||||||
|
MsgBox('Windows 10 GTK3 theme could not be downloaded. Please retry setup and rerun setup.', mbError, MB_OK);
|
||||||
|
Result := False;
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if IsComponentSelected('themes\windows10dark') and not FileExists(ExpandConstant('{tmp}\Windows-10-Dark-3.2.1-dark.zip')) then
|
||||||
|
begin
|
||||||
|
MsgBox('Windows 10 Dark GTK3 theme could not be downloaded. Please retry setup and rerun setup.', mbError, MB_OK);
|
||||||
|
Result := False;
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
|
||||||
if IsComponentSelected('deps\vcredist2015') and not CheckVCInstall() and not FileExists(ExpandConstant('{tmp}\vcredist.exe')) then
|
if IsComponentSelected('deps\vcredist2015') and not CheckVCInstall() and not FileExists(ExpandConstant('{tmp}\vcredist.exe')) then
|
||||||
begin
|
begin
|
||||||
MsgBox('Visual C++ Redistributable could not be downloaded. Please retry setup or install it manually and rerun setup.', mbError, MB_OK);
|
MsgBox('Visual C++ Redistributable could not be downloaded. Please retry setup or install it manually and rerun setup.', mbError, MB_OK);
|
||||||
@@ -396,6 +429,7 @@ begin
|
|||||||
Exit;
|
Exit;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////
|
||||||
// these are required for x86->x64 or reverse upgrades
|
// these are required for x86->x64 or reverse upgrades
|
||||||
|
|||||||
Reference in New Issue
Block a user