Skip to content

Commit d8de20e

Browse files
committed
list-view: Fix change handler, improve preferences description and
behavior.
1 parent 4193e72 commit d8de20e

File tree

3 files changed

+22
-2
lines changed

3 files changed

+22
-2
lines changed

gresources/nemo-file-management-properties.glade

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -921,7 +921,7 @@ along with . If not, see <http://www.gnu.org/licenses/>.
921921
</child>
922922
<child>
923923
<object class="GtkCheckButton" id="list_view_show_expanders_checkbutton">
924-
<property name="label" translatable="yes">Show expanders for folders with content</property>
924+
<property name="label" translatable="yes">Show folder expanders</property>
925925
<property name="visible">True</property>
926926
<property name="can-focus">True</property>
927927
<property name="receives-default">False</property>

src/nemo-file-management-properties.c

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -552,6 +552,16 @@ nemo_file_management_properties_dialog_setup_list_column_page (GtkBuilder *build
552552
gtk_box_pack_start (GTK_BOX (box), chooser, TRUE, TRUE, 0);
553553
}
554554

555+
static void
556+
disable_expander_child_setting (GSettings *settings,
557+
const gchar *key,
558+
gpointer user_data)
559+
{
560+
if (!g_settings_get_boolean (settings, key)) {
561+
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (user_data), FALSE);
562+
}
563+
}
564+
555565
static void
556566
bind_builder_bool (GtkBuilder *builder,
557567
GSettings *settings,
@@ -1119,6 +1129,16 @@ nemo_file_management_properties_dialog_setup (GtkBuilder *builder,
11191129
NEMO_FILE_MANAGEMENT_PROPERTIES_SHOW_EMPTY_FOLDER_EXPANDERS_WIDGET,
11201130
NEMO_PREFERENCES_LIST_VIEW_ALWAYS_SHOW_EXPANDER);
11211131

1132+
g_settings_bind (nemo_list_view_preferences, NEMO_PREFERENCES_LIST_VIEW_ENABLE_EXPANSION,
1133+
gtk_builder_get_object (builder, NEMO_FILE_MANAGEMENT_PROPERTIES_SHOW_EMPTY_FOLDER_EXPANDERS_WIDGET),
1134+
"sensitive",
1135+
G_SETTINGS_BIND_GET);
1136+
1137+
g_signal_connect (nemo_list_view_preferences,
1138+
"changed::" NEMO_PREFERENCES_LIST_VIEW_ENABLE_EXPANSION,
1139+
G_CALLBACK (disable_expander_child_setting),
1140+
gtk_builder_get_object (builder, NEMO_FILE_MANAGEMENT_PROPERTIES_SHOW_EMPTY_FOLDER_EXPANDERS_WIDGET));
1141+
11221142
setup_tooltip_items (builder);
11231143
connect_tooltip_items (builder);
11241144

src/nemo-list-view.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -298,7 +298,7 @@ always_show_expander_changed_cb (NemoListView *view)
298298
g_return_if_fail (NEMO_IS_LIST_VIEW (view));
299299
g_return_if_fail (GTK_IS_TREE_VIEW (view->details->tree_view) && view->details->tree_view != NULL);
300300

301-
/* Note: Changes require a manual refresh to take effect */
301+
nemo_window_slot_queue_reload (nemo_view_get_nemo_window_slot (NEMO_VIEW (view)), FALSE);
302302
}
303303

304304
static void

0 commit comments

Comments
 (0)