@@ -1546,6 +1546,9 @@ nemo_window_sync_create_folder_button (NemoWindow *window)
15461546 toolbar_set_create_folder_button (allow , slot -> pane );
15471547}
15481548
1549+ /* Forward declaration for preview pane callback */
1550+ static void preview_pane_selection_changed_callback (NemoView * view , NemoWindow * window );
1551+
15491552static void
15501553zoom_level_changed_callback (NemoView * view ,
15511554 NemoWindow * window )
@@ -1584,6 +1587,13 @@ nemo_window_connect_content_view (NemoWindow *window,
15841587 G_CALLBACK (zoom_level_changed_callback ),
15851588 window );
15861589
1590+ /* Connect preview pane selection updates if preview is showing */
1591+ if (window -> details -> preview_pane ) {
1592+ g_signal_connect_object (view , "selection-changed" ,
1593+ G_CALLBACK (preview_pane_selection_changed_callback ),
1594+ window , 0 );
1595+ }
1596+
15871597 /* Update displayed the selected view type in the toolbar and menu. */
15881598 if (slot -> pending_location == NULL ) {
15891599 nemo_window_sync_view_type (window );
@@ -1608,6 +1618,11 @@ nemo_window_disconnect_content_view (NemoWindow *window,
16081618 }
16091619
16101620 g_signal_handlers_disconnect_by_func (view , G_CALLBACK (zoom_level_changed_callback ), window );
1621+
1622+ /* Disconnect preview pane selection updates if preview is showing */
1623+ if (window -> details -> preview_pane ) {
1624+ g_signal_handlers_disconnect_by_func (view , G_CALLBACK (preview_pane_selection_changed_callback ), window );
1625+ }
16111626}
16121627
16131628/**
@@ -2352,7 +2367,8 @@ nemo_window_preview_pane_on (NemoWindow *window)
23522367 nemo_preview_pane_set_file (NEMO_PREVIEW_PANE (window -> details -> preview_pane ), file );
23532368 nemo_file_list_free (selection );
23542369
2355- /* Connect selection-changed signal */
2370+ /* Connect selection-changed signal for the current view */
2371+ /* This will be reconnected automatically when view changes via nemo_window_connect_content_view() */
23562372 g_signal_connect_object (slot -> content_view , "selection-changed" ,
23572373 G_CALLBACK (preview_pane_selection_changed_callback ),
23582374 window , 0 );
0 commit comments