summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorApoorv Sachan <apoorv.99.sachan@gmail.com>2020-07-11 03:38:09 +0530
committerAntónio Fernandes <antoniojpfernandes@gmail.com>2020-08-05 13:48:10 +0000
commit5c33a1ae0d5da2cf1b02d09fe437541dabe5e944 (patch)
treef4923bd620f968bb087732ddddfa9b9614c5d40d
parent7073050b80e205447898fa8154c1cb95fabbca26 (diff)
downloadnautilus-5c33a1ae0d5da2cf1b02d09fe437541dabe5e944.tar.gz
properties-window: Stop setting "use_original" data
now, value_field_update() and value_field_update_internal() are merged into value_filed_update()
-rw-r--r--src/nautilus-properties-window.c79
1 files changed, 26 insertions, 53 deletions
diff --git a/src/nautilus-properties-window.c b/src/nautilus-properties-window.c
index 301783ae4..068352975 100644
--- a/src/nautilus-properties-window.c
+++ b/src/nautilus-properties-window.c
@@ -1344,18 +1344,42 @@ file_list_all_directories (GList *file_list)
#define INCONSISTENT_STATE_STRING \
"\xE2\x80\x92"
+static gboolean
+location_show_original (NautilusPropertiesWindow *window)
+{
+ NautilusFile *file;
+
+ /* there is no way a recent item will be mixed with
+ * other items so just pick the first file to check */
+ file = NAUTILUS_FILE (g_list_nth_data (window->original_files, 0));
+ return (file != NULL && !nautilus_file_is_in_recent (file));
+}
+
static void
-value_field_update_internal (GtkLabel *label,
- GList *file_list)
+value_field_update (NautilusPropertiesWindow *window,
+ GtkLabel *label)
{
+ GList *file_list;
const char *attribute_name;
char *attribute_value;
char *inconsistent_string;
char *mime_type, *tmp;
+ gboolean is_where;
g_assert (GTK_IS_LABEL (label));
attribute_name = g_object_get_data (G_OBJECT (label), "file_attribute");
+
+ is_where = (g_strcmp0 (attribute_name, "where") == 0);
+ if (is_where && location_show_original (window))
+ {
+ file_list = window->original_files;
+ }
+ else
+ {
+ file_list = window->target_files;
+ }
+
inconsistent_string = INCONSISTENT_STATE_STRING;
attribute_value = file_list_get_string_attribute (file_list,
attribute_name,
@@ -1379,20 +1403,6 @@ value_field_update_internal (GtkLabel *label,
}
static void
-value_field_update (NautilusPropertiesWindow *window,
- GtkLabel *label)
-{
- gboolean use_original;
-
- use_original = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (label), "show_original"));
-
- value_field_update_internal (label,
- (use_original ?
- window->original_files :
- window->target_files));
-}
-
-static void
group_change_free (GroupChange *change)
{
nautilus_file_unref (change->file);
@@ -2429,17 +2439,6 @@ should_show_link_target (NautilusPropertiesWindow *window)
}
static gboolean
-location_show_original (NautilusPropertiesWindow *window)
-{
- NautilusFile *file;
-
- /* there is no way a recent item will be mixed with
- * other items so just pick the first file to check */
- file = NAUTILUS_FILE (g_list_nth_data (window->original_files, 0));
- return (file != NULL && !nautilus_file_is_in_recent (file));
-}
-
-static gboolean
should_show_free_space (NautilusPropertiesWindow *window)
{
if (!is_multi_file_window (window)
@@ -2790,8 +2789,6 @@ setup_basic_page (NautilusPropertiesWindow *window)
g_object_set_data_full (G_OBJECT (window->type_value_label), "file_attribute",
g_strdup ("detailed_type"), g_free);
- g_object_set_data (G_OBJECT (window->type_value_label), "show_original", GINT_TO_POINTER (FALSE));
-
window->value_fields = g_list_prepend (window->value_fields,
window->type_value_label);
}
@@ -2803,8 +2800,6 @@ setup_basic_page (NautilusPropertiesWindow *window)
g_object_set_data_full (G_OBJECT (window->link_target_value_label), "file_attribute",
g_strdup ("link_target"), g_free);
- g_object_set_data (G_OBJECT (window->link_target_value_label), "show_original", GINT_TO_POINTER (FALSE));
-
window->value_fields = g_list_prepend (window->value_fields,
window->link_target_value_label);
}
@@ -2825,8 +2820,6 @@ setup_basic_page (NautilusPropertiesWindow *window)
g_object_set_data_full (G_OBJECT (window->size_value_label), "file_attribute",
g_strdup ("size_detail"), g_free);
- g_object_set_data (G_OBJECT (window->size_value_label), "show_original", GINT_TO_POINTER (FALSE));
-
window->value_fields = g_list_prepend (window->value_fields,
window->size_value_label);
}
@@ -2839,8 +2832,6 @@ setup_basic_page (NautilusPropertiesWindow *window)
g_object_set_data_full (G_OBJECT (window->parent_folder_value_label), "file_attribute",
g_strdup ("where"), g_free);
- g_object_set_data (G_OBJECT (window->parent_folder_value_label), "show_original", GINT_TO_POINTER (location_show_original (window)));
-
window->value_fields = g_list_prepend (window->value_fields,
window->parent_folder_value_label);
}
@@ -2852,8 +2843,6 @@ setup_basic_page (NautilusPropertiesWindow *window)
g_object_set_data_full (G_OBJECT (window->original_folder_value_label), "file_attribute",
g_strdup ("trash_orig_path"), g_free);
- g_object_set_data (G_OBJECT (window->original_folder_value_label), "show_original", GINT_TO_POINTER (FALSE));
-
window->value_fields = g_list_prepend (window->value_fields,
window->original_folder_value_label);
}
@@ -2865,8 +2854,6 @@ setup_basic_page (NautilusPropertiesWindow *window)
g_object_set_data_full (G_OBJECT (window->volume_value_label), "file_attribute",
g_strdup ("volume"), g_free);
- g_object_set_data (G_OBJECT (window->volume_value_label), "show_original", GINT_TO_POINTER (FALSE));
-
window->value_fields = g_list_prepend (window->value_fields,
window->volume_value_label);
}
@@ -2878,8 +2865,6 @@ setup_basic_page (NautilusPropertiesWindow *window)
g_object_set_data_full (G_OBJECT (window->trashed_on_value_label), "file_attribute",
g_strdup ("trashed_on_full"), g_free);
- g_object_set_data (G_OBJECT (window->trashed_on_value_label), "show_original", GINT_TO_POINTER (FALSE));
-
window->value_fields = g_list_prepend (window->value_fields,
window->trashed_on_value_label);
}
@@ -2898,8 +2883,6 @@ setup_basic_page (NautilusPropertiesWindow *window)
g_object_set_data_full (G_OBJECT (window->accessed_value_label), "file_attribute",
g_strdup ("date_accessed_full"), g_free);
- g_object_set_data (G_OBJECT (window->accessed_value_label), "show_original", GINT_TO_POINTER (FALSE));
-
window->value_fields = g_list_prepend (window->value_fields,
window->accessed_value_label);
}
@@ -2912,8 +2895,6 @@ setup_basic_page (NautilusPropertiesWindow *window)
g_object_set_data_full (G_OBJECT (window->modified_value_label), "file_attribute",
g_strdup ("date_modified_full"), g_free);
- g_object_set_data (G_OBJECT (window->modified_value_label), "show_original", GINT_TO_POINTER (FALSE));
-
window->value_fields = g_list_prepend (window->value_fields,
window->modified_value_label);
}
@@ -2929,8 +2910,6 @@ setup_basic_page (NautilusPropertiesWindow *window)
g_object_set_data_full (G_OBJECT (window->free_space_value_label), "file_attribute",
g_strdup ("free_space"), g_free);
- g_object_set_data (G_OBJECT (window->free_space_value_label), "show_original", GINT_TO_POINTER (FALSE));
-
window->value_fields = g_list_prepend (window->value_fields,
window->free_space_value_label);
}
@@ -3899,8 +3878,6 @@ create_simple_permissions (NautilusPropertiesWindow *window,
g_object_set_data_full (G_OBJECT (owner_value_label), "file_attribute",
g_strdup ("owner"), g_free);
- g_object_set_data (G_OBJECT (owner_value_label), "show_original", GINT_TO_POINTER (FALSE));
-
window->value_fields = g_list_prepend (window->value_fields,
owner_value_label);
}
@@ -3949,8 +3926,6 @@ create_simple_permissions (NautilusPropertiesWindow *window,
g_object_set_data_full (G_OBJECT (group_value_label), "file_attribute",
g_strdup ("group"), g_free);
- g_object_set_data (G_OBJECT (group_value_label), "show_original", GINT_TO_POINTER (FALSE));
-
window->value_fields = g_list_prepend (window->value_fields,
group_value_label);
}
@@ -4322,8 +4297,6 @@ setup_permissions_page (NautilusPropertiesWindow *window)
g_object_set_data_full (G_OBJECT (window->security_context_value_label), "file_attribute",
g_strdup ("selinux_context"), g_free);
- g_object_set_data (G_OBJECT (window->security_context_value_label), "show_original", GINT_TO_POINTER (FALSE));
-
window->value_fields = g_list_prepend (window->value_fields,
window->security_context_value_label);
#endif