diff options
author | Robert Manea <gotmor@gmail.com> | 2009-10-18 23:17:41 +0200 |
---|---|---|
committer | Robert Manea <gotmor@gmail.com> | 2009-10-18 23:17:41 +0200 |
commit | 5578476f343cd4323f42ca24813ad307aae1f817 (patch) | |
tree | 2aed5e0ca5093fdb72136a92eb8a5e1ea1170bf1 /uzbl-core.c | |
parent | 32c6afd652de21046e3b31aa4854e123345b60ea (diff) |
changed menu_add syntay to: menu_add <label> = <command>
Diffstat (limited to 'uzbl-core.c')
-rw-r--r-- | uzbl-core.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/uzbl-core.c b/uzbl-core.c index 8f59847..2640f0e 100644 --- a/uzbl-core.c +++ b/uzbl-core.c @@ -623,9 +623,9 @@ struct {const char *key; CommandInfo value;} cmdlist[] = */ { "request", {event, TRUE} }, { "update_gui", {update_gui, TRUE} }, - { "menu_add", {menu_add, 0} }, + { "menu_add", {menu_add, TRUE} }, { "menu_add_separator", {menu_add_separator, TRUE} }, - { "menu_remove", {menu_remove, TRUE} } + { "menu_remove", {menu_remove, TRUE} } }; void @@ -692,16 +692,17 @@ menu_add(WebKitWebView *page, GArray *argv, GString *result) { (void) result; MenuItem *m; gchar *item_cmd = NULL; + gchar **split = g_strsplit(argv_idx(argv, 0), "=", 2); if(!uzbl.gui.menu_items) uzbl.gui.menu_items = g_ptr_array_new(); - if(argv_idx(argv, 1)) - item_cmd = g_strdup(argv_idx(argv, 1)); + if(split[1]) + item_cmd = g_strdup(split[1]); - if(argv_idx(argv, 0)) { + if(split[0]) { m = malloc(sizeof(MenuItem)); - m->name = g_strdup(argv_idx(argv, 0)); + m->name = g_strdup(split[0]); m->cmd = g_strdup(item_cmd?item_cmd:""); m->issep = FALSE; g_ptr_array_add(uzbl.gui.menu_items, m); @@ -709,6 +710,8 @@ menu_add(WebKitWebView *page, GArray *argv, GString *result) { else g_free(item_cmd); + g_strfreev(split); + } void |