From 61299213a1426f4aed38278f29af6a22246d91f9 Mon Sep 17 00:00:00 2001
From: Cyrille Bagard <nocbos@gmail.com>
Date: Sun, 5 Aug 2018 01:27:33 +0200
Subject: Ensured all panel accelerators get activated.

---
 src/gui/editor.c         |  4 ----
 src/gui/menus/view.c     | 11 +++++------
 src/gui/panels/strings.c |  2 +-
 src/main.c               | 15 ++++++++++++---
 4 files changed, 18 insertions(+), 14 deletions(-)

diff --git a/src/gui/editor.c b/src/gui/editor.c
index 9fffde8..faf98a4 100644
--- a/src/gui/editor.c
+++ b/src/gui/editor.c
@@ -347,8 +347,6 @@ GtkWidget *create_editor(void)
     menuboard = g_editor_item_get_widget(editem);
     gtk_box_pack_start(GTK_BOX(vbox1), menuboard, FALSE, FALSE, 0);
 
-
-
     g_object_set_data(ref, "menuboard", menuboard);
 
     gtk_widget_hide(menuboard);
@@ -367,8 +365,6 @@ GtkWidget *create_editor(void)
         //_support = init_panels2(G_CALLBACK(on_dock_item_switch), ref);
         gtk_box_pack_start(GTK_BOX(vbox1), _support, TRUE, TRUE, 0);
 
-        /* ... = */load_all_gui_components();
-
 
     } while(0);
 
diff --git a/src/gui/menus/view.c b/src/gui/menus/view.c
index e1f95a1..0abdf2a 100644
--- a/src/gui/menus/view.c
+++ b/src/gui/menus/view.c
@@ -104,6 +104,11 @@ GtkWidget *build_menu_view(GObject *ref, GMenuBar *bar)
 
     qck_create_menu(GTK_MENU_ITEM(submenuitem));
 
+    /**
+     * Charge une liste initiale pour activer les raccourcis clavier.
+     */
+    mcb_view_update_side_panels_list(GTK_MENU_ITEM(submenuitem), bar);
+
     /* Séparation */
 
     submenuitem = qck_create_menu_separator();
@@ -265,22 +270,16 @@ void rebuild_menu_view_for_view(GtkWidget *widget, GLoadedPanel *new)
     GObject *ref;                           /* Espace de références        */
     GLoadedContent *content;                /* Contenu en cours d'analyse  */
     unsigned int index;                     /* Indice de la vue            */
-
     GtkWidget *menubar;                     /* Support pour éléments       */
     void *marker;                           /* Menu de référence           */
     size_t i;                               /* Boucle de parcours          */
     char *key;                              /* Clef pour accès ultérieurs  */
     GtkWidget *submenuitem;                 /* Sous-élément de menu        */
-
-
-
     GtkRadioMenuItem *item;                 /* Elément de menu arbitraire  */
     GSList *radios;                         /* Liste des menus d'affichage */
-
     GList *list;                            /* Liste des éléments en place */
     gint position;                          /* Point d'insertion           */
     GList *iter;                            /* Boucle de parcours          */
-
     GDisplayOptions *options;               /* Paramètres de rendus        */
     size_t count;                           /* Nombre d'itérations à mener */
     bool status;                            /* Consigne d'affichage        */
diff --git a/src/gui/panels/strings.c b/src/gui/panels/strings.c
index 9359432..268634f 100644
--- a/src/gui/panels/strings.c
+++ b/src/gui/panels/strings.c
@@ -303,7 +303,7 @@ static void g_strings_panel_init(GStringsPanel *panel)
     pitem->personality = PIP_SINGLETON;
     pitem->lname = _("Strings");
     pitem->dock_at_startup = false;
-    pitem->path = strdup("N");
+    pitem->path = strdup("S");
 
     /* Représentation graphique */
 
diff --git a/src/main.c b/src/main.c
index d9f356f..ee805df 100644
--- a/src/main.c
+++ b/src/main.c
@@ -161,10 +161,10 @@ int main(int argc, char **argv)
     char *prj_filename;                     /* Chemin vers un projet       */
     int index;                              /* Indice d'argument           */
     int ret;                                /* Bilan d'un appel            */
+    bool status;                            /* Bilan d'opérations          */
     GtkWidget *editor;                      /* Fenêtre graphique           */
     GDbServer *server;                      /* Enregistrements locaux      */
     GGenConfig *config;                     /* Configuration globale       */
-    bool status;                            /* Bilan d'opérations          */
 
 
     char *author;                           /* Identification à diffuser   */
@@ -278,6 +278,9 @@ int main(int argc, char **argv)
 
     if (!batch_mode)
     {
+        status = load_all_gui_components();
+        if (!status) goto failed_to_load_editor;
+
         editor = create_editor();
         if (editor == NULL) goto failed_to_load_editor;
 
@@ -289,8 +292,11 @@ int main(int argc, char **argv)
 
     config = get_main_configuration();
 
-    status = complete_loading_of_all_gui_components(config);
-    if (!status) goto exit_complete_gui;
+    if (!batch_mode)
+    {
+        status = complete_loading_of_all_gui_components(config);
+        if (!status) goto exit_complete_gui;
+    }
 
     /* Utilisateur représenté */
 
@@ -387,6 +393,9 @@ int main(int argc, char **argv)
 
  failed_to_load_editor:
 
+    if (!batch_mode)
+        unload_all_gui_components();
+
     unload_all_basic_components();
 
  done:
-- 
cgit v0.11.2-87-g4458