diff options
author | Carlos Soriano <csoriano@gnome.org> | 2016-03-30 15:02:12 +0200 |
---|---|---|
committer | Carlos Soriano <csoriano@gnome.org> | 2016-04-06 10:58:21 +0200 |
commit | ab3a2f2de999469e04137fcee1b43860a4b74dbf (patch) | |
tree | aa1002f9db4b08d6d3f7ab7b0eca1466fc19e916 | |
parent | e01b029a89e408ee8aeee7210e8abf4fc1e2ca6b (diff) | |
download | nautilus-ab3a2f2de999469e04137fcee1b43860a4b74dbf.tar.gz |
file: allow overriding invalidate_attributes_internal
We are special casing some cases where we want to do something different
in subclasses.
Allow to override this function so subclasses can use it.
-rw-r--r-- | libnautilus-private/nautilus-file.c | 12 | ||||
-rw-r--r-- | libnautilus-private/nautilus-file.h | 3 |
2 files changed, 13 insertions, 2 deletions
diff --git a/libnautilus-private/nautilus-file.c b/libnautilus-private/nautilus-file.c index 4a413caa2..0c7410cd8 100644 --- a/libnautilus-private/nautilus-file.c +++ b/libnautilus-private/nautilus-file.c @@ -7424,8 +7424,15 @@ nautilus_file_invalidate_extension_info_internal (NautilusFile *file) } void -nautilus_file_invalidate_attributes_internal (NautilusFile *file, - NautilusFileAttributes file_attributes) +nautilus_file_invalidate_attributes_internal (NautilusFile *file, + NautilusFileAttributes file_attributes) +{ + NAUTILUS_FILE_CLASS (G_OBJECT_GET_CLASS (file))->invalidate_attributes_internal (file, file_attributes); +} + +static void +real_invalidate_attributes_internal (NautilusFile *file, + NautilusFileAttributes file_attributes) { Request request; @@ -8006,6 +8013,7 @@ nautilus_file_class_init (NautilusFileClass *class) class->rename = real_rename; class->get_target_uri = real_get_target_uri; class->drag_can_accept_files = real_drag_can_accept_files; + class->invalidate_attributes_internal = real_invalidate_attributes_internal; signals[CHANGED] = g_signal_new ("changed", diff --git a/libnautilus-private/nautilus-file.h b/libnautilus-private/nautilus-file.h index 77b4fe16a..a6e265bf0 100644 --- a/libnautilus-private/nautilus-file.h +++ b/libnautilus-private/nautilus-file.h @@ -601,6 +601,9 @@ typedef struct { char* (* get_target_uri) (NautilusFile *file); gboolean (* drag_can_accept_files) (NautilusFile *drop_target_item); + + void (* invalidate_attributes_internal) (NautilusFile *file, + NautilusFileAttributes file_attributes); } NautilusFileClass; #endif /* NAUTILUS_FILE_H */ |