mirror of
https://git.jabber.space/devs/cproof.git
synced 2026-07-22 16:06:21 +00:00
Make tray icon configurable using /tray cmd
This commit is contained in:
@@ -1253,6 +1253,21 @@ static struct cmd_t command_defs[] =
|
||||
CMD_NOEXAMPLES
|
||||
},
|
||||
|
||||
#ifdef HAVE_GTK
|
||||
{ "/tray",
|
||||
cmd_tray, parse_args, 1, 1, &cons_tray_setting,
|
||||
CMD_TAGS(
|
||||
CMD_TAG_UI)
|
||||
CMD_SYN(
|
||||
"/tray on|off")
|
||||
CMD_DESC(
|
||||
"Display an icon in the tray that will indicate new messages.")
|
||||
CMD_ARGS(
|
||||
{ "on|off", "Enable or disable tray icon." })
|
||||
CMD_NOEXAMPLES
|
||||
},
|
||||
#endif
|
||||
|
||||
{ "/intype",
|
||||
cmd_intype, parse_args, 1, 1, &cons_intype_setting,
|
||||
CMD_TAGS(
|
||||
|
||||
@@ -77,6 +77,9 @@
|
||||
#include "ui/ui.h"
|
||||
#include "window_list.h"
|
||||
#include "event/client_events.h"
|
||||
#ifdef HAVE_GTK
|
||||
#include "tray.h"
|
||||
#endif
|
||||
|
||||
static void _update_presence(const resource_presence_t presence,
|
||||
const char *const show, gchar **args);
|
||||
@@ -5525,6 +5528,24 @@ cmd_flash(ProfWin *window, const char *const command, gchar **args)
|
||||
return _cmd_set_boolean_preference(args[0], command, "Screen flash", PREF_FLASH);
|
||||
}
|
||||
|
||||
#ifdef HAVE_GTK
|
||||
gboolean
|
||||
cmd_tray(ProfWin *window, const char *const command, gchar **args)
|
||||
{
|
||||
gboolean old = prefs_get_boolean(PREF_TRAY);
|
||||
gboolean ret = _cmd_set_boolean_preference(args[0], command, "Tray icon", PREF_TRAY);
|
||||
gboolean new = prefs_get_boolean(PREF_TRAY);
|
||||
if (old != new) {
|
||||
if (new) {
|
||||
create_tray();
|
||||
} else {
|
||||
destroy_tray();
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
|
||||
gboolean
|
||||
cmd_intype(ProfWin *window, const char *const command, gchar **args)
|
||||
{
|
||||
|
||||
@@ -89,6 +89,9 @@ gboolean cmd_lastactivity(ProfWin *window, const char *const command, gchar **ar
|
||||
gboolean cmd_disconnect(ProfWin *window, const char *const command, gchar **args);
|
||||
gboolean cmd_dnd(ProfWin *window, const char *const command, gchar **args);
|
||||
gboolean cmd_flash(ProfWin *window, const char *const command, gchar **args);
|
||||
#ifdef HAVE_GTK
|
||||
gboolean cmd_tray(ProfWin *window, const char *const command, gchar **args);
|
||||
#endif
|
||||
gboolean cmd_gone(ProfWin *window, const char *const command, gchar **args);
|
||||
gboolean cmd_grlog(ProfWin *window, const char *const command, gchar **args);
|
||||
gboolean cmd_group(ProfWin *window, const char *const command, gchar **args);
|
||||
|
||||
Reference in New Issue
Block a user