diff options
author | Pavel Cisler <pavel@eazel.com> | 2001-03-03 01:46:59 +0000 |
---|---|---|
committer | Pavel Cisler <pce@src.gnome.org> | 2001-03-03 01:46:59 +0000 |
commit | 27d840927a1ab85369eabebd5ffd38c5c5a75d15 (patch) | |
tree | 5c63afd25ca476356b580edd63b7d704cb10729b /libnautilus-private/nautilus-file-private.h | |
parent | 04eb5b8518034be35d1496ca70d88dcd647a1069 (diff) | |
download | nautilus-27d840927a1ab85369eabebd5ffd38c5c5a75d15.tar.gz |
Fix 7225 (emblem sorting locks up entire system for extended period of
2001-03-02 Pavel Cisler <pavel@eazel.com>
Fix 7225 (emblem sorting locks up entire system for extended
period of time)
reviewed by: Darin Adler <darin@eazel.com>
* libnautilus-extensions/nautilus-file-private.h:
* libnautilus-extensions/nautilus-file.c:
(fill_emblem_cache_if_needed), (compare_by_emblems):
Implement a simple cache for automatic and keyword emblems.
* libnautilus-extensions/nautilus-file.c:
(destroy), (nautilus_file_set_keywords),
(nautilus_file_emit_changed):
Nuke the cache when keywords change.
Diffstat (limited to 'libnautilus-private/nautilus-file-private.h')
-rw-r--r-- | libnautilus-private/nautilus-file-private.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/libnautilus-private/nautilus-file-private.h b/libnautilus-private/nautilus-file-private.h index 21e79a025..8cd94891f 100644 --- a/libnautilus-private/nautilus-file-private.h +++ b/libnautilus-private/nautilus-file-private.h @@ -39,6 +39,11 @@ typedef enum { UNKNOWN } Knowledge; +typedef struct { + int automatic_emblems_as_integer; + char emblem_keywords[1]; +} NautilusFileSortByEmblemCache; + struct NautilusFileDetails { NautilusDirectory *directory; @@ -69,6 +74,10 @@ struct NautilusFileDetails */ GList *operations_in_progress; + /* We use this to cache automatic emblems and emblem keywords + to speed up compare_by_emblems. */ + NautilusFileSortByEmblemCache *compare_by_emblem_cache; + /* boolean fields: bitfield to save space, since there can be many NautilusFile objects. */ |