16459N/A@@ -87,6 +87,46 @@ single_stanza (gboolean is_window, const
16459N/A g_free (escaped_default_value);
16459N/A+single_list_stanza (gboolean is_window, const char *name,
16459N/A+ char *keybinding_type = is_window? "window": "global";
16459N/A+ char *escaped_default_value, *escaped_description;
16459N/A+ return; /* it must be undocumented, so it can't go in this table */
16459N/A+ escaped_description = g_markup_escape_text (description, -1);
16459N/A+ escaped_default_value = default_value==NULL? "disabled":
16459N/A+ g_markup_escape_text (default_value, -1);
16459N/A+ fprintf (target_file, " <schema>\n");
16459N/A+ fprintf (target_file, " <owner>metacity</owner>\n");
16459N/A+ fprintf (target_file, " <type>list</type>\n");
16459N/A+ fprintf (target_file, " <list_type>string</list_type>\n");
16459N/A+ fprintf (target_file, " <default>[%s]</default>\n", escaped_default_value);
16459N/A+ fprintf (target_file, " <locale name=\"C\">\n");
16459N/A+ fprintf (target_file, " <short>%s</short>\n", description);
16459N/A+ fprintf (target_file, " <long>%s</long>\n",
16459N/A+ can_reverse? about_reversible_keybindings:
16459N/A+ fprintf (target_file, " </locale>\n");
16459N/A+ fprintf (target_file, " </schema>\n\n");
16459N/A+ g_free (escaped_default_value);
16459N/A static void produce_bindings ();
16459N/A@@ -130,6 +170,13 @@ produce_bindings ()
16459N/A+#define list_keybind(name, handler, param, flags, stroke, description) \
16459N/A /***********************************/
16459N/A #ifndef _BINDINGS_DEFINED_CONSTANTS
16459N/A@@ -189,12 +193,20 @@ keybind (cycle_panels_backward, handl
16459N/A keybind (show_desktop, handle_show_desktop, 0, 0, "<Control><Alt>d",
16459N/A _("Hide all normal windows and set focus to the desktop"))
16459N/A+list_keybind (show_desktop, handle_show_desktop, 0, 0, "<Mod4>d",
16459N/A+ _("Hide all normal windows and set focus to the desktop"))
16459N/A keybind (panel_main_menu, handle_panel,
16459N/A META_KEYBINDING_ACTION_PANEL_MAIN_MENU, 0, "<Alt>F1",
16459N/A _("Show the panel's main menu"))
16459N/A+list_keybind (panel_main_menu, handle_panel,
16459N/A+ META_KEYBINDING_ACTION_PANEL_MAIN_MENU, 0, "<Control>Escape",
16459N/A+ _("Show the panel's main menu"))
16459N/A keybind (panel_run_dialog, handle_panel,
16459N/A META_KEYBINDING_ACTION_PANEL_RUN_DIALOG, 0, "<Alt>F2",
16459N/A _("Show the panel's \"Run Application\" dialog box"))
16459N/A+list_keybind (panel_run_dialog, handle_panel,
16459N/A+ META_KEYBINDING_ACTION_PANEL_RUN_DIALOG, 0, "<Mod4>r",
16459N/A+ _("Show the panel's \"Run Application\" dialog box"))
16459N/A /* Yes, the param is offset by one. Historical reasons. (Maybe worth fixing
16459N/A * at some point.) The description is NULL here because the stanza is
16459N/A@@ -270,6 +282,8 @@ keybind (toggle_shaded, handle_toggle_sh
16459N/A keybind (minimize, handle_minimize, 0, BINDING_PER_WINDOW, "<Alt>F9",
16459N/A+list_keybind (minimize, handle_minimize, 0, BINDING_PER_WINDOW, "F17",
16459N/A keybind (close, handle_close, 0, BINDING_PER_WINDOW, "<Alt>F4",
16459N/A keybind (begin_move, handle_begin_move, 0, BINDING_PER_WINDOW, "<Alt>F7",