Merge branch 'replace' into 'master'

support for replacing an existing notification

See merge request GNOME/libnotify!10
This commit is contained in:
Peter Hoeg 2022-03-25 09:48:10 +00:00
commit 43c600d16f
1 changed files with 15 additions and 0 deletions

View File

@ -130,6 +130,8 @@ main (int argc, char *argv[])
static char *icon_str = NULL;
static char **n_text = NULL;
static char **hints = NULL;
static gboolean print_id = FALSE;
static gint replace_id = 0;
static gboolean do_version = FALSE;
static gboolean hint_error = FALSE, show_error = FALSE;
static glong expire_timeout = NOTIFY_EXPIRES_DEFAULT;
@ -159,6 +161,10 @@ main (int argc, char *argv[])
N_
("Specifies basic extra data to pass. Valid types are int, double, string and byte."),
N_("TYPE:NAME:VALUE")},
{"print-id", 'p', 0, G_OPTION_ARG_NONE, &print_id,
N_ ("Print the notification ID."), NULL},
{"replace-id", 'r', 0, G_OPTION_ARG_INT, &replace_id,
N_ ("The ID of the notification to replace."), N_("REPLACE_ID")},
{"version", 'v', 0, G_OPTION_ARG_NONE, &do_version,
N_("Version of the package."),
NULL},
@ -227,6 +233,9 @@ main (int argc, char *argv[])
g_free (body);
if (replace_id)
g_object_set (notify, "id", replace_id, NULL);
/* Set hints */
if (hints != NULL) {
gint i = 0;
@ -273,6 +282,12 @@ main (int argc, char *argv[])
}
}
if (print_id) {
gint id;
g_object_get (notify, "id", &id, NULL);
g_printf ("%d\n", id);
}
g_object_unref (G_OBJECT (notify));
notify_uninit ();