mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-09-30 19:17:34 +00:00
GtkPlacesSidebar: Don't pile up duplicate bookmarks
We get multiple notifications from the bookmark manager when something changes. Every time, we reconstruct the sidebar contents completely, by clearing the store. The bookmarks are added with async calls though, and the code was forgetting to cancel outstanding async requests, leading to multiple instances of the same bookmark getting added. Use the cancellable we already have to prevent that. This could be made much more efficient by not recreating the entire sidebar quite so often (3-5 times for a single bookmark rename). https://bugzilla.gnome.org/show_bug.cgi?id=737679
This commit is contained in:
parent
fbad4f6c03
commit
b858d45e3c
@ -915,6 +915,11 @@ update_places (GtkPlacesSidebar *sidebar)
|
||||
else
|
||||
original_uri = NULL;
|
||||
|
||||
g_cancellable_cancel (sidebar->cancellable);
|
||||
|
||||
g_object_unref (sidebar->cancellable);
|
||||
sidebar->cancellable = g_cancellable_new ();
|
||||
|
||||
gtk_list_store_clear (sidebar->store);
|
||||
|
||||
sidebar->devices_header_added = FALSE;
|
||||
|
Loading…
Reference in New Issue
Block a user