diff --git a/app/menus/file-menu.c b/app/menus/file-menu.c
index ac08be93cd..70597f2eee 100644
--- a/app/menus/file-menu.c
+++ b/app/menus/file-menu.c
@@ -54,8 +54,8 @@ file_menu_setup (GimpUIManager *manager,
action_name = g_strdup_printf ("file-open-recent-%02d", i + 1);
- gimp_ui_manager_add_ui (manager, "/File/Open Recent",
- action_name, "Files", TRUE);
+ gimp_ui_manager_add_ui (manager, "/File/Open Recent/[Files]",
+ action_name, FALSE);
g_free (action_name);
}
diff --git a/app/menus/filters-menu.c b/app/menus/filters-menu.c
index 5464845ded..b84968929b 100644
--- a/app/menus/filters-menu.c
+++ b/app/menus/filters-menu.c
@@ -54,8 +54,8 @@ filters_menu_setup (GimpUIManager *manager,
action_name = g_strdup_printf ("filters-recent-%02d", i + 1);
- gimp_ui_manager_add_ui (manager, "/Filters/Recently Used",
- action_name, "Filters", TRUE);
+ gimp_ui_manager_add_ui (manager, "/Filters/Recently Used/[Filters]",
+ action_name, FALSE);
g_free (action_name);
}
@@ -112,7 +112,7 @@ filters_menu_setup (GimpUIManager *manager,
*root = '/';
for (GList *m = managers; m; m = m->next)
- gimp_ui_manager_add_ui (m->data, root, gegl_actions[i], NULL, FALSE);
+ gimp_ui_manager_add_ui (m->data, root, gegl_actions[i], FALSE);
}
}
g_free (path);
diff --git a/app/menus/plug-in-menus.c b/app/menus/plug-in-menus.c
index 0abca54c9f..3b9d05248d 100644
--- a/app/menus/plug-in-menus.c
+++ b/app/menus/plug-in-menus.c
@@ -302,7 +302,7 @@ plug_in_menus_add_proc (GimpUIManager *manager,
gimp_ui_manager_add_ui (manager, menu_path,
gimp_object_get_name (proc),
- NULL, FALSE);
+ FALSE);
}
static void
diff --git a/app/menus/tool-options-menu.c b/app/menus/tool-options-menu.c
index 0227ae7b60..2b957c1aaf 100644
--- a/app/menus/tool-options-menu.c
+++ b/app/menus/tool-options-menu.c
@@ -123,7 +123,7 @@ tool_options_menu_update_presets (GimpUIManager *manager,
action_name = g_strdup_printf ("%s%03d", action_prefix, i);
path = g_strdup_printf ("/Tool Options Menu/%s", menu_path);
- gimp_ui_manager_add_ui (manager, path, action_name, NULL, FALSE);
+ gimp_ui_manager_add_ui (manager, path, action_name, FALSE);
g_free (action_name);
g_free (path);
diff --git a/app/menus/window-menu.c b/app/menus/window-menu.c
index 5ad6eaa092..127c34baa0 100644
--- a/app/menus/window-menu.c
+++ b/app/menus/window-menu.c
@@ -110,8 +110,7 @@ window_menu_display_opened (GdkDisplayManager *disp_manager,
* "/dockable-popup/Move to Screen".
*/
if (g_str_has_prefix (ui_path, "/image-menubar/"))
- gimp_ui_manager_add_ui (manager, "/View/Move to Screen",
- action_name, NULL, FALSE);
+ gimp_ui_manager_add_ui (manager, "/View/Move to Screen", action_name, FALSE);
g_free (action_name);
diff --git a/app/menus/windows-menu.c b/app/menus/windows-menu.c
index 4925cf2fa2..a22815db1f 100644
--- a/app/menus/windows-menu.c
+++ b/app/menus/windows-menu.c
@@ -209,7 +209,7 @@ windows_menu_image_notify (GimpDisplay *display,
action_name = gimp_display_get_action_name (display);
- gimp_ui_manager_add_ui (manager, "/Windows", action_name, "Images", TRUE);
+ gimp_ui_manager_add_ui (manager, "/Windows/[Images]", action_name, FALSE);
g_free (action_name);
}
@@ -225,7 +225,7 @@ windows_menu_dock_window_added (GimpDialogFactory *factory,
action_name = windows_actions_dock_window_to_action_name (dock_window);
/* TODO GMenu: doesn't look like it's working, neither will old or new API. */
- gimp_ui_manager_add_ui (manager, "/Windows", action_name, "Docks", FALSE);
+ gimp_ui_manager_add_ui (manager, "/Windows/[Docks]", action_name, FALSE);
g_free (action_name);
}
@@ -255,8 +255,7 @@ windows_menu_recent_add (GimpContainer *container,
action_name = g_strdup_printf ("windows-recent-%04d", info_id);
- gimp_ui_manager_add_ui (manager, "/Windows/Recently Closed Docks",
- action_name, NULL, TRUE);
+ gimp_ui_manager_add_ui (manager, "/Windows/Recently Closed Docks", action_name, TRUE);
g_free (action_name);
}
diff --git a/app/widgets/gimpdashboard.c b/app/widgets/gimpdashboard.c
index 581e84f645..b0a9f94d95 100644
--- a/app/widgets/gimpdashboard.c
+++ b/app/widgets/gimpdashboard.c
@@ -5014,8 +5014,8 @@ gimp_dashboard_menu_setup (GimpUIManager *manager,
action_name = g_strdup_printf ("dashboard-group-%s", group_info->name);
- gimp_ui_manager_add_ui (manager, "/Dashboard Menu/Groups",
- action_name, "Groups", FALSE);
+ gimp_ui_manager_add_ui (manager, "/Dashboard Menu/Groups/[Groups]",
+ action_name, FALSE);
g_free (action_name);
}
diff --git a/app/widgets/gimpmenu.c b/app/widgets/gimpmenu.c
index 18ce2b33be..bb628cee3e 100644
--- a/app/widgets/gimpmenu.c
+++ b/app/widgets/gimpmenu.c
@@ -62,7 +62,6 @@
struct _GimpMenuPrivate
{
GTree *submenus;
- GTree *placeholders;
GHashTable *sections;
};
@@ -77,15 +76,12 @@ static void gimp_menu_append (GimpMenuShell *shel
static void gimp_menu_add_ui (GimpMenuShell *shell,
const gchar **paths,
const gchar *action_name,
- const gchar *placeholder_key,
gboolean top);
static void gimp_menu_remove_ui (GimpMenuShell *shell,
const gchar **paths,
const gchar *action_name);
static void gimp_menu_model_deleted (GimpMenuShell *shell);
-static void gimp_menu_add_placeholder (GimpMenu *menu,
- const gchar *label);
static void gimp_menu_add_action (GimpMenu *menu,
const gchar *action_name,
gboolean long_label,
@@ -120,10 +116,6 @@ static void gimp_menu_action_notify_visible (GimpAction *acti
const GParamSpec *pspec,
GtkWidget *item);
-static gboolean gimp_menu_copy_placeholders (gpointer key,
- gpointer item,
- GTree *placeholders);
-
static void gimp_menu_help_fun (const gchar *bogus_help_id,
gpointer help_data);
static void gimp_menu_hide_double_separators (GimpMenu *menu);
@@ -157,8 +149,6 @@ gimp_menu_init (GimpMenu *menu)
menu->priv->submenus = g_tree_new_full ((GCompareDataFunc) g_strcmp0, NULL,
g_free, NULL);
- menu->priv->placeholders = g_tree_new_full ((GCompareDataFunc) g_strcmp0, NULL,
- g_free, NULL);
menu->priv->sections = g_hash_table_new_full (g_direct_hash, g_direct_equal,
g_object_unref, NULL);
@@ -183,7 +173,6 @@ gimp_menu_finalize (GObject *object)
GimpMenu *menu = GIMP_MENU (object);
g_clear_pointer (&menu->priv->submenus, g_tree_unref);
- g_clear_pointer (&menu->priv->placeholders, g_tree_unref);
g_hash_table_unref (menu->priv->sections);
G_OBJECT_CLASS (parent_class)->finalize (object);
@@ -262,22 +251,12 @@ gimp_menu_append (GimpMenuShell *shell,
G_CALLBACK (gimp_menu_submenu_notify_color),
item);
}
- else if (action_name == NULL)
- {
- /* Special case: we use items with no action and a label as
- * placeholder which allows us to specify a placement in menus, which
- * might not be only top or bottom.
- */
- g_return_if_fail (label != NULL);
-
- group = NULL;
-
- gimp_menu_add_placeholder (menu, label);
- }
else
{
gchar *label_variant = NULL;
+ g_return_if_fail (action_name != NULL);
+
g_menu_model_get_item_attribute (G_MENU_MODEL (model), i, "label-variant", "s", &label_variant);
gimp_menu_add_action (menu, action_name,
/* By default, we use the short label in menus,
@@ -302,48 +281,31 @@ static void
gimp_menu_add_ui (GimpMenuShell *shell,
const gchar **paths,
const gchar *action_name,
- const gchar *placeholder_key,
gboolean top)
{
GimpMenu *menu = GIMP_MENU (shell);
GimpUIManager *manager = gimp_menu_shell_get_manager (GIMP_MENU_SHELL (shell));
+ GtkWidget *submenu;
- g_return_if_fail (paths != NULL);
+ g_return_if_fail (paths != NULL && paths[0] != NULL);
- if (paths[0] == NULL)
+ submenu = g_tree_lookup (menu->priv->submenus, paths[0]);
+
+ if (submenu == NULL)
{
- GtkWidget *placeholder;
+ GtkWidget *item;
- placeholder = g_tree_lookup (menu->priv->placeholders, placeholder_key);
+ item = gtk_menu_item_new_with_mnemonic (paths[0]);
+ gtk_container_add (GTK_CONTAINER (shell), item);
- if (! placeholder)
- g_warning ("%s: no placeholder item '%s'.", G_STRFUNC, placeholder_key);
+ submenu = gimp_menu_new (manager);
+ gtk_menu_item_set_submenu (GTK_MENU_ITEM (item), submenu);
+ gtk_widget_show (submenu);
- gimp_menu_add_action (menu, action_name, FALSE, placeholder, top, NULL);
+ g_tree_insert (menu->priv->submenus, g_strdup (paths[0]), submenu);
}
- else
- {
- GtkWidget *submenu;
- submenu = g_tree_lookup (menu->priv->submenus, paths[0]);
-
- if (submenu == NULL)
- {
- GtkWidget *item;
-
- item = gtk_menu_item_new_with_mnemonic (paths[0]);
- gtk_container_add (GTK_CONTAINER (shell), item);
-
- submenu = gimp_menu_new (manager);
- gtk_menu_item_set_submenu (GTK_MENU_ITEM (item), submenu);
- gtk_widget_show (submenu);
-
- g_tree_insert (menu->priv->submenus, g_strdup (paths[0]), submenu);
- }
-
- gimp_menu_add_ui (GIMP_MENU_SHELL (submenu), paths + 1,
- action_name, placeholder_key, top);
- }
+ gimp_menu_add_ui (GIMP_MENU_SHELL (submenu), paths + 1, action_name, top);
gimp_menu_hide_double_separators (menu);
}
@@ -420,10 +382,6 @@ gimp_menu_merge (GimpMenu *menu,
g_object_unref (item);
}
- g_tree_foreach (menu2->priv->placeholders,
- (GTraverseFunc) gimp_menu_copy_placeholders,
- menu->priv->placeholders);
-
gtk_widget_destroy (GTK_WIDGET (menu2));
g_list_free (children);
}
@@ -431,19 +389,6 @@ gimp_menu_merge (GimpMenu *menu,
/* Private functions */
-static void
-gimp_menu_add_placeholder (GimpMenu *menu,
- const gchar *label)
-{
- GtkWidget *item;
-
- /* Placeholders are inserted yet never shown, on purpose. */
- item = gtk_menu_item_new_with_mnemonic (label);
- gtk_container_add (GTK_CONTAINER (menu), item);
-
- g_tree_insert (menu->priv->placeholders, g_strdup (label), item);
-}
-
static void
gimp_menu_add_action (GimpMenu *menu,
const gchar *action_name,
@@ -831,15 +776,6 @@ gimp_menu_action_notify_visible (GimpAction *action,
gimp_menu_hide_double_separators (GIMP_MENU (container));
}
-static gboolean
-gimp_menu_copy_placeholders (gpointer key,
- gpointer item,
- GTree *placeholders)
-{
- g_tree_insert (placeholders, g_strdup ((gchar *) key), item);
- return FALSE;
-}
-
static void
gimp_menu_help_fun (const gchar *bogus_help_id,
gpointer help_data)
@@ -892,9 +828,9 @@ gimp_menu_help_fun (const gchar *bogus_help_id,
/* With successive sections, we will end up with double separators (end one then
* start one of the next section). Moreover sometimes, empty sections (e.g.
- * because items are expected to be added later through placeholders) would make
- * even 3 to 4 separators next to each other. This renders very ugly. We need to
- * call this function to hide and show separators after changes.
+ * because items are expected to be added later) would make even 3 to 4
+ * separators next to each other. This renders very ugly. We need to call this
+ * function to hide and show separators after changes.
*
* This also hides start and end separators in the menu.
*/
diff --git a/app/widgets/gimpmenubar.c b/app/widgets/gimpmenubar.c
index 2ce6cd1b49..f5f2f2970d 100644
--- a/app/widgets/gimpmenubar.c
+++ b/app/widgets/gimpmenubar.c
@@ -67,7 +67,6 @@ static void gimp_menu_bar_append (GimpMenuShell *sh
static void gimp_menu_bar_add_ui (GimpMenuShell *shell,
const gchar **paths,
const gchar *action_name,
- const gchar *placeholder_key,
gboolean top);
@@ -172,8 +171,8 @@ gimp_menu_bar_append (GimpMenuShell *shell,
g_warning ("%s: unexpected subsection. Only menus are allowed in menu bar's root.",
G_STRFUNC);
if (action_name == NULL)
- g_warning ("%s: unexpected placeholder '%s'. Only menus are allowed in menu bar's root.",
- G_STRFUNC, label);
+ g_warning ("%s: missing action name. Only menus are allowed in menu bar's root.",
+ G_STRFUNC);
else
g_warning ("%s: unexpected action '%s'. Only menus are allowed in menu bar's root.",
G_STRFUNC, action_name);
@@ -189,7 +188,6 @@ static void
gimp_menu_bar_add_ui (GimpMenuShell *shell,
const gchar **paths,
const gchar *action_name,
- const gchar *placeholder_key,
gboolean top)
{
GimpMenuBar *bar = GIMP_MENU_BAR (shell);
@@ -223,9 +221,7 @@ gimp_menu_bar_add_ui (GimpMenuShell *shell,
}
GIMP_MENU_SHELL_GET_INTERFACE (menu)->add_ui (GIMP_MENU_SHELL (menu),
- paths + 1,
- action_name,
- placeholder_key, top);
+ paths + 1, action_name, top);
}
}
diff --git a/app/widgets/gimpmenumodel.c b/app/widgets/gimpmenumodel.c
index 7136ef7ab9..20b75ea507 100644
--- a/app/widgets/gimpmenumodel.c
+++ b/app/widgets/gimpmenumodel.c
@@ -140,7 +140,6 @@ static void gimp_menu_model_action_notify_label (GimpAction
static gboolean gimp_menu_model_ui_added (GimpUIManager *manager,
const gchar *path,
const gchar *action_name,
- const gchar *placeholder_key,
gboolean top,
GimpMenuModel *model);
static gboolean gimp_menu_model_ui_removed (GimpUIManager *manager,
@@ -757,46 +756,43 @@ gimp_menu_model_initialize (GimpMenuModel *model,
}
else
{
+ GimpAction *action;
+ gchar *label_variant = NULL;
+
item = g_menu_item_new_from_model (G_MENU_MODEL (gmodel), i);
- if (action_name)
- {
- GimpAction *action;
- gchar *label_variant = NULL;
+ g_return_if_fail (action_name != NULL);
- action = gimp_ui_manager_find_action (model->priv->manager, NULL, action_name);
+ action = gimp_ui_manager_find_action (model->priv->manager, NULL, action_name);
- if (model->priv->manager->store_action_paths)
- /* Special-case the main menu manager when constructing it as
- * this is the only one which should set the menu path.
- */
- gimp_action_set_menu_path (action, gimp_menu_model_get_path (model));
+ if (model->priv->manager->store_action_paths)
+ /* Special-case the main menu manager when constructing it as
+ * this is the only one which should set the menu path.
+ */
+ gimp_action_set_menu_path (action, gimp_menu_model_get_path (model));
- g_signal_connect_object (action,
- "notify::visible",
- G_CALLBACK (gimp_menu_model_action_notify_visible),
- model, 0);
+ g_signal_connect_object (action,
+ "notify::visible",
+ G_CALLBACK (gimp_menu_model_action_notify_visible),
+ model, 0);
- g_menu_item_get_attribute (item, "label-variant", "s",
- &label_variant);
- if (g_strcmp0 (label_variant, "long") == 0)
- g_menu_item_set_label (item, gimp_action_get_label (action));
- else
- g_menu_item_set_label (item, gimp_action_get_short_label (action));
+ g_menu_item_get_attribute (item, "label-variant", "s",
+ &label_variant);
+ if (g_strcmp0 (label_variant, "long") == 0)
+ g_menu_item_set_label (item, gimp_action_get_label (action));
+ else
+ g_menu_item_set_label (item, gimp_action_get_short_label (action));
- g_signal_connect_object (action,
- "notify::short-label",
- G_CALLBACK (gimp_menu_model_action_notify_label),
- item, 0);
- g_signal_connect_object (action,
- "notify::label",
- G_CALLBACK (gimp_menu_model_action_notify_label),
- item, 0);
+ g_signal_connect_object (action,
+ "notify::short-label",
+ G_CALLBACK (gimp_menu_model_action_notify_label),
+ item, 0);
+ g_signal_connect_object (action,
+ "notify::label",
+ G_CALLBACK (gimp_menu_model_action_notify_label),
+ item, 0);
- g_free (label_variant);
- }
-
- /* else we instal a placeholder (no-action and always invisible) item. */
+ g_free (label_variant);
}
if (item)
@@ -917,9 +913,7 @@ gimp_menu_model_get_item (GimpMenuModel *model,
{
cur++;
}
- /* Count neither placeholders (items with no action_name), nor invisible
- * actions.
- */
+ /* Do not count invisible actions. */
else if (g_menu_item_get_attribute (iter->data,
G_MENU_ATTRIBUTE_ACTION,
"&s", &action_name))
@@ -1048,7 +1042,6 @@ static gboolean
gimp_menu_model_ui_added (GimpUIManager *manager,
const gchar *path,
const gchar *action_name,
- const gchar *placeholder_key,
gboolean top,
GimpMenuModel *model)
{
@@ -1082,17 +1075,6 @@ gimp_menu_model_ui_added (GimpUIManager *manager,
added = TRUE;
- g_signal_handlers_disconnect_by_func (action,
- G_CALLBACK (gimp_menu_model_action_notify_visible),
- model);
- detailed_action_name = g_strdup_printf ("%s.%s", action_prefix, g_action_get_name (action));
- item = g_menu_item_new (gimp_action_get_short_label (GIMP_ACTION (action)), detailed_action_name);
- /* TODO: add also G_MENU_ATTRIBUTE_ICON attribute? */
- g_free (detailed_action_name);
-
- if (model->priv->manager->store_action_paths)
- gimp_action_set_menu_path (GIMP_ACTION (action), gimp_menu_model_get_path (model));
-
if (section_name != NULL)
{
GMenuItem *section_item;
@@ -1105,57 +1087,18 @@ gimp_menu_model_ui_added (GimpUIManager *manager,
}
}
- if (placeholder_key)
- {
- GList *placeholder = NULL;
- GMenuModel *subsection = NULL;
+ g_signal_handlers_disconnect_by_func (action,
+ G_CALLBACK (gimp_menu_model_action_notify_visible),
+ mod_model);
+ detailed_action_name = g_strdup_printf ("%s.%s", action_prefix, g_action_get_name (action));
+ item = g_menu_item_new (gimp_action_get_short_label (GIMP_ACTION (action)), detailed_action_name);
+ /* TODO: add also G_MENU_ATTRIBUTE_ICON attribute? */
+ g_free (detailed_action_name);
- for (GList *iter = model->priv->items; iter; iter = iter->next)
- {
- const gchar *label;
+ if (model->priv->manager->store_action_paths)
+ gimp_action_set_menu_path (GIMP_ACTION (action), gimp_menu_model_get_path (model));
- subsection = g_menu_item_get_link (iter->data, G_MENU_LINK_SECTION);
-
- if (subsection != NULL)
- {
- if (gimp_menu_model_ui_added (manager, path, action_name,
- placeholder_key, top,
- GIMP_MENU_MODEL (subsection)))
- break;
- else
- g_clear_object (&subsection);
- }
- else if (g_menu_item_get_attribute (iter->data,
- G_MENU_ATTRIBUTE_LABEL,
- "&s", &label) &&
- g_strcmp0 (label, placeholder_key) == 0)
- {
- placeholder = iter;
- break;
- }
- }
-
- if (placeholder)
- {
- if (top)
- model->priv->items = g_list_insert_before (model->priv->items,
- placeholder, item);
- else
- model->priv->items = g_list_insert_before (model->priv->items,
- placeholder->next, item);
- }
- else
- {
- added = FALSE;
-
- if (subsection == NULL && ! model->priv->is_section)
- g_warning ("%s: no placeholder item '%s'.", G_STRFUNC, placeholder_key);
- }
- /* else: added in a subsection. */
-
- g_clear_object (&subsection);
- }
- else if (top)
+ if (top)
{
mod_model->priv->items = g_list_prepend (mod_model->priv->items, item);
}
@@ -1171,7 +1114,7 @@ gimp_menu_model_ui_added (GimpUIManager *manager,
g_signal_connect_object (action,
"notify::visible",
G_CALLBACK (gimp_menu_model_action_notify_visible),
- model, 0);
+ mod_model, 0);
g_signal_connect_object (action,
"notify::short-label",
G_CALLBACK (gimp_menu_model_action_notify_label),
diff --git a/app/widgets/gimpmenushell.h b/app/widgets/gimpmenushell.h
index df4d3fc67a..c6c5c6d143 100644
--- a/app/widgets/gimpmenushell.h
+++ b/app/widgets/gimpmenushell.h
@@ -54,7 +54,6 @@ struct _GimpMenuShellInterface
void (* add_ui) (GimpMenuShell *shell,
const gchar **paths,
const gchar *action_name,
- const gchar *placeholder_key,
gboolean top);
void (* remove_ui) (GimpMenuShell *shell,
const gchar **paths,
diff --git a/app/widgets/gimptoolbar.c b/app/widgets/gimptoolbar.c
index 6ac45c7821..a8aaf879d3 100644
--- a/app/widgets/gimptoolbar.c
+++ b/app/widgets/gimptoolbar.c
@@ -64,12 +64,10 @@ static void gimp_toolbar_append (GimpMenuShell *she
static void gimp_toolbar_add_ui (GimpMenuShell *shell,
const gchar **paths,
const gchar *action_name,
- const gchar *placeholder_key,
gboolean top);
static void gimp_toolbar_add_action (GimpToolbar *toolbar,
const gchar *action_name,
- const gchar *placeholder_key G_GNUC_UNUSED,
gboolean top);
static void gimp_toolbar_toggle_item_toggled (GtkToggleToolButton *item,
@@ -155,7 +153,7 @@ gimp_toolbar_append (GimpMenuShell *shell,
}
else if (submenu == NULL && action_name != NULL)
{
- gimp_toolbar_add_action (toolbar, action_name, NULL, FALSE);
+ gimp_toolbar_add_action (toolbar, action_name, FALSE);
}
else
{
@@ -163,7 +161,7 @@ gimp_toolbar_append (GimpMenuShell *shell,
g_warning ("%s: unexpected submenu. Only actions and sections are allowed in toolbar's root.",
G_STRFUNC);
else if (label != NULL)
- g_warning ("%s: unexpected placeholder '%s'. Only actions and sections are allowed in toolbar's root.",
+ g_warning ("%s: unexpected label '%s'. Only actions and sections are allowed in toolbar's root.",
G_STRFUNC, label);
else
g_warning ("%s: unexpected toolbar item. Only actions and sections are allowed in toolbar's root.",
@@ -181,7 +179,6 @@ static void
gimp_toolbar_add_ui (GimpMenuShell *shell,
const gchar **paths,
const gchar *action_name,
- const gchar *placeholder_key,
gboolean top)
{
GimpToolbar *toolbar = GIMP_TOOLBAR (shell);
@@ -192,7 +189,7 @@ gimp_toolbar_add_ui (GimpMenuShell *shell,
g_warning ("%s: unexpected path '%s'. Menus are not allowed in toolbar's root.",
G_STRFUNC, paths[0]);
else
- gimp_toolbar_add_action (toolbar, action_name, placeholder_key, top);
+ gimp_toolbar_add_action (toolbar, action_name, top);
}
@@ -217,10 +214,6 @@ gimp_toolbar_new (GimpMenuModel *model,
static void
gimp_toolbar_add_action (GimpToolbar *toolbar,
const gchar *action_name,
- /* XXX: right now unused, maybe be useful later for
- * when we want to support user-managed toolbars.
- */
- const gchar *placeholder_key G_GNUC_UNUSED,
gboolean top)
{
GimpUIManager *manager;
diff --git a/app/widgets/gimpuimanager.c b/app/widgets/gimpuimanager.c
index e962a88a87..5386c05230 100644
--- a/app/widgets/gimpuimanager.c
+++ b/app/widgets/gimpuimanager.c
@@ -69,7 +69,6 @@ typedef struct
{
gchar *path;
gchar *action_name;
- gchar *placeholder;
gboolean top;
} GimpUIManagerMenuItem;
@@ -186,8 +185,7 @@ gimp_ui_manager_class_init (GimpUIManagerClass *klass)
G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (GimpUIManagerClass, ui_added),
NULL, NULL, NULL,
- G_TYPE_NONE, 4,
- G_TYPE_STRING,
+ G_TYPE_NONE, 3,
G_TYPE_STRING,
G_TYPE_STRING,
G_TYPE_BOOLEAN);
@@ -615,7 +613,6 @@ void
gimp_ui_manager_add_ui (GimpUIManager *manager,
const gchar *path,
const gchar *action_name,
- const gchar *placeholder,
gboolean top)
{
GimpUIManagerMenuItem *item;
@@ -627,13 +624,12 @@ gimp_ui_manager_add_ui (GimpUIManager *manager,
item = g_slice_new0 (GimpUIManagerMenuItem);
item->path = g_strdup (path);
item->action_name = g_strdup (action_name);
- item->placeholder = g_strdup (placeholder);
item->top = top;
manager->ui_items = g_list_prepend (manager->ui_items, item);
g_signal_emit (manager, manager_signals[UI_ADDED], 0,
- path, action_name, placeholder, top);
+ path, action_name, top);
}
void
@@ -645,8 +641,7 @@ gimp_ui_manager_foreach_ui (GimpUIManager *manager,
{
GimpUIManagerMenuItem *item = iter->data;
- callback (manager, item->path, item->action_name, item->placeholder,
- item->top, user_data);
+ callback (manager, item->path, item->action_name, item->top, user_data);
}
}
@@ -1151,7 +1146,6 @@ gimp_ui_manager_menu_item_free (GimpUIManagerMenuItem *item)
{
g_free (item->path);
g_free (item->action_name);
- g_free (item->placeholder);
g_slice_free (GimpUIManagerMenuItem, item);
}
diff --git a/app/widgets/gimpuimanager.h b/app/widgets/gimpuimanager.h
index 68c3314f63..89d8c99372 100644
--- a/app/widgets/gimpuimanager.h
+++ b/app/widgets/gimpuimanager.h
@@ -28,7 +28,6 @@
typedef void (* GimpUIMenuCallback) (GimpUIManager *manager,
const gchar *path,
const gchar *action_name,
- const gchar *placeholder,
gboolean top,
gpointer user_data);
@@ -90,7 +89,6 @@ struct _GimpUIManagerClass
void (* ui_added) (GimpUIManager *manager,
const gchar *path,
const gchar *action_name,
- const gchar *placeholder,
gboolean top);
void (* ui_removed) (GimpUIManager *manager,
const gchar *path,
@@ -124,7 +122,6 @@ void gimp_ui_manager_remove_uis (GimpUIManager *manager,
void gimp_ui_manager_add_ui (GimpUIManager *manager,
const gchar *path,
const gchar *action_name,
- const gchar *placeholder,
gboolean top);
void gimp_ui_manager_foreach_ui (GimpUIManager *manager,
GimpUIMenuCallback callback,
diff --git a/menus/dashboard-menu.ui b/menus/dashboard-menu.ui
index 76be1e529f..461ba99333 100644
--- a/menus/dashboard-menu.ui
+++ b/menus/dashboard-menu.ui
@@ -7,8 +7,9 @@
gimp-dashboard
Groups
-
- - Groups
+
_Update Interval
diff --git a/menus/image-menu.ui.in.in b/menus/image-menu.ui.in.in
index 1922cc1be5..a0b9e125e1 100644
--- a/menus/image-menu.ui.in.in
+++ b/menus/image-menu.ui.in.in
@@ -17,9 +17,7 @@
Open _Recent
- app.dialogs-document-history
@@ -624,8 +622,9 @@
- app.filters-reshow
Recently Used
-
- - Filters
+
- app.plug-in-reset-all
@@ -795,13 +794,12 @@
- app.dialogs-toolbox
-
-