summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md5
-rw-r--r--mktrayicon.c2
2 files changed, 4 insertions, 3 deletions
diff --git a/README.md b/README.md
index 84697fd..4af3a7c 100644
--- a/README.md
+++ b/README.md
@@ -50,7 +50,8 @@ The m(enu) command uses `,` as a delimiter between label and command and
`|` as a delimiter between entries (label+command). If you want to use
these two characters in a label or command, you have to escape them with
`\`. You can make a blank label or a label without an action by leaving
-out the `label` or `cmd` respectively. For example:
+out the `label` or `cmd` respectively. Use `-----` or an empty label to
+insert a menu separator. For example:
```console
$ echo "m Browser,firefox|Terminal,xterm|Label-only||,chromium" > /tmp/test
@@ -62,7 +63,7 @@ Would give you a menu with five entries:
- "Browser", which launches `firefox` when clicked
- "Terminal", which launches `xterm` when clicked
- "Label-only", which does nothing if clicked
- - An unlabeled, inactive entry (useful as a separator)
+ - A separator
- An unlabeled entry which launches `chromium` when clicked
## Why?
diff --git a/mktrayicon.c b/mktrayicon.c
index 518eccf..626b299 100644
--- a/mktrayicon.c
+++ b/mktrayicon.c
@@ -397,7 +397,7 @@ outer:
// Now create the menu item widgets and attach them on the menu
for (int i = 0; i < menusize; i++) {
GtkWidget *w;
- if (strncmp(onmenu[i].name, "-----", 5) == 0) {
+ if (0 == strlen(onmenu[i].name) || (!strncmp(onmenu[i].name, "-----", 5))) {
w = gtk_separator_menu_item_new() ;
} else {
w = gtk_menu_item_new_with_label(onmenu[i].name);
bgstack15