diff options
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/menus/view.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/gui/menus/view.c b/src/gui/menus/view.c index 81b06d6..70247a9 100644 --- a/src/gui/menus/view.c +++ b/src/gui/menus/view.c @@ -470,7 +470,8 @@ static void mcb_view_change_support(GtkRadioMenuItem *menuitem, gpointer unused) GtkDockStation *station; /* Base du remplacement */ GLoadedContent *content; /* Contenu représenté */ GtkWidget *support; /* Nouvel afficheur généraliste*/ - GtkWidget *new; /* Panneau encapsulé */ + GLineCursor *cursor; /* Position à transmettre */ + GLoadedPanel *new; /* Panneau encapsulé */ /* On ne traite qu'une seule fois ! */ if (!gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(menuitem))) return; @@ -492,11 +493,17 @@ static void mcb_view_change_support(GtkRadioMenuItem *menuitem, gpointer unused) g_object_unref(G_OBJECT(content)); + cursor = g_loaded_panel_get_cursor(panel); + gtk_dock_panel_change_active_widget(station, support); - new = get_loaded_panel_from_built_view(support); + new = G_LOADED_PANEL(get_loaded_panel_from_built_view(support)); + + g_loaded_panel_set_cursor(new, cursor); + + change_editor_items_current_view(new); - change_editor_items_current_view(G_LOADED_PANEL(new)); + g_object_unref(G_OBJECT(cursor)); g_object_unref(G_OBJECT(panel)); |