[gtk+/filechooserentry: 8/53] filechooserentry: Keep finished_loading variable ourselves
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/filechooserentry: 8/53] filechooserentry: Keep finished_loading variable ourselves
- Date: Mon, 7 Nov 2011 14:25:51 +0000 (UTC)
commit a57c2e145894d3069c52bae8edf1fc6fd886554c
Author: Benjamin Otte <otte redhat com>
Date: Thu Nov 3 14:11:57 2011 +0100
filechooserentry: Keep finished_loading variable ourselves
This will be useful in the next commits when the GtkFolder code
previously keeping that variable gets repalced.
gtk/gtkfilechooserentry.c | 13 ++++++++-----
1 files changed, 8 insertions(+), 5 deletions(-)
---
diff --git a/gtk/gtkfilechooserentry.c b/gtk/gtkfilechooserentry.c
index bd6c3c5..ec5e58a 100644
--- a/gtk/gtkfilechooserentry.c
+++ b/gtk/gtkfilechooserentry.c
@@ -86,6 +86,7 @@ struct _GtkFileChooserEntry
GtkWidget *completion_feedback_label;
guint completion_feedback_timeout_id;
+ guint current_folder_loaded : 1;
guint has_completion : 1;
guint in_change : 1;
guint eat_tabs : 1;
@@ -1075,7 +1076,7 @@ explicitly_complete (GtkFileChooserEntry *chooser_entry)
CommonPrefixResult result;
g_assert (chooser_entry->current_folder != NULL);
- g_assert (_gtk_folder_is_finished_loading (chooser_entry->current_folder));
+ g_assert (chooser_entry->current_folder_loaded);
/* FIXME: see what Emacs does in case there is no common prefix, or there is more than one match:
*
@@ -1148,7 +1149,7 @@ start_explicit_completion (GtkFileChooserEntry *chooser_entry)
case REFRESH_OK:
g_assert (chooser_entry->current_folder_file != NULL);
- if (chooser_entry->current_folder && _gtk_folder_is_finished_loading (chooser_entry->current_folder))
+ if (chooser_entry->current_folder && chooser_entry->current_folder_loaded)
explicitly_complete (chooser_entry);
else
{
@@ -1401,6 +1402,7 @@ finished_loading_cb (GtkFolder *folder,
{
GtkFileChooserEntry *chooser_entry = GTK_FILE_CHOOSER_ENTRY (data);
+ chooser_entry->current_folder_loaded = TRUE;
finish_folder_load (chooser_entry);
}
@@ -1445,7 +1447,8 @@ load_directory_get_folder_callback (GCancellable *cancellable,
discard_completion_store (chooser_entry);
- if (_gtk_folder_is_finished_loading (chooser_entry->current_folder))
+ chooser_entry->current_folder_loaded = _gtk_folder_is_finished_loading (chooser_entry->current_folder);
+ if (chooser_entry->current_folder_loaded)
finish_folder_load (chooser_entry);
else
g_signal_connect (chooser_entry->current_folder, "finished-loading",
@@ -1616,7 +1619,7 @@ static void
autocomplete (GtkFileChooserEntry *chooser_entry)
{
if (!(chooser_entry->current_folder != NULL
- && _gtk_folder_is_finished_loading (chooser_entry->current_folder)
+ && chooser_entry->current_folder_loaded
&& gtk_editable_get_position (GTK_EDITABLE (chooser_entry)) == gtk_entry_get_text_length (GTK_ENTRY (chooser_entry))))
return;
@@ -1635,7 +1638,7 @@ start_autocompletion (GtkFileChooserEntry *chooser_entry)
case REFRESH_OK:
g_assert (chooser_entry->current_folder_file != NULL);
- if (chooser_entry->current_folder && _gtk_folder_is_finished_loading (chooser_entry->current_folder))
+ if (chooser_entry->current_folder && chooser_entry->current_folder_loaded)
autocomplete (chooser_entry);
else
chooser_entry->load_complete_action = LOAD_COMPLETE_AUTOCOMPLETE;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]