[gtk+] file chooser: Refine search progress display
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] file chooser: Refine search progress display
- Date: Wed, 15 Jul 2015 04:04:02 +0000 (UTC)
commit 5bd60131651ee6241f7afc46e34f6600f352945c
Author: Matthias Clasen <mclasen redhat com>
Date: Wed Jul 15 00:03:09 2015 -0400
file chooser: Refine search progress display
Move the spinner to the search bar, so we can keep it around
until the search is over.
gtk/gtkfilechooserwidget.c | 26 ++++++++++++--------------
gtk/ui/gtkfilechooserwidget.ui | 17 +++++++++--------
2 files changed, 21 insertions(+), 22 deletions(-)
---
diff --git a/gtk/gtkfilechooserwidget.c b/gtk/gtkfilechooserwidget.c
index 6d8dfe4..8bb10f1 100644
--- a/gtk/gtkfilechooserwidget.c
+++ b/gtk/gtkfilechooserwidget.c
@@ -6978,21 +6978,20 @@ static void
search_engine_finished_cb (GtkSearchEngine *engine,
gpointer data)
{
- GtkFileChooserWidget *impl;
-
- impl = GTK_FILE_CHOOSER_WIDGET (data);
+ GtkFileChooserWidget *impl = GTK_FILE_CHOOSER_WIDGET (data);
+ GtkFileChooserWidgetPrivate *priv = impl->priv;
set_busy_cursor (impl, FALSE);
- gtk_spinner_stop (GTK_SPINNER (impl->priv->search_spinner));
+ gtk_widget_hide (priv->search_spinner);
- if (impl->priv->show_progress_timeout)
+ if (priv->show_progress_timeout)
{
- g_source_remove (impl->priv->show_progress_timeout);
- impl->priv->show_progress_timeout = 0;
+ g_source_remove (priv->show_progress_timeout);
+ priv->show_progress_timeout = 0;
}
- if (gtk_tree_model_iter_n_children (GTK_TREE_MODEL (impl->priv->search_model), NULL) == 0)
- gtk_stack_set_visible_child_name (GTK_STACK (impl->priv->browse_files_stack), "empty");
+ if (gtk_tree_model_iter_n_children (GTK_TREE_MODEL (priv->search_model), NULL) == 0)
+ gtk_stack_set_visible_child_name (GTK_STACK (priv->browse_files_stack), "empty");
}
/* Displays a generic error when we cannot create a GtkSearchEngine.
@@ -7055,7 +7054,7 @@ search_stop_searching (GtkFileChooserWidget *impl,
g_clear_object (&priv->search_engine);
set_busy_cursor (impl, FALSE);
- gtk_spinner_stop (GTK_SPINNER (priv->search_spinner));
+ gtk_widget_hide (priv->search_spinner);
}
if (priv->show_progress_timeout)
@@ -7101,7 +7100,7 @@ show_spinner (gpointer data)
GtkFileChooserWidget *impl = data;
GtkFileChooserWidgetPrivate *priv = impl->priv;
- gtk_stack_set_visible_child_name (GTK_STACK (priv->browse_files_stack), "progress");
+ gtk_widget_show (priv->search_spinner);
priv->show_progress_timeout = 0;
return G_SOURCE_REMOVE;
@@ -7124,8 +7123,7 @@ search_start_query (GtkFileChooserWidget *impl,
search_setup_model (impl);
set_busy_cursor (impl, TRUE);
- gtk_spinner_start (GTK_SPINNER (priv->search_spinner));
- priv->show_progress_timeout = g_timeout_add (1000, show_spinner, impl);
+ priv->show_progress_timeout = g_timeout_add (1500, show_spinner, impl);
gtk_stack_set_visible_child_name (GTK_STACK (priv->browse_files_stack), "list");
@@ -7135,7 +7133,7 @@ search_start_query (GtkFileChooserWidget *impl,
if (!priv->search_engine)
{
set_busy_cursor (impl, FALSE);
- gtk_spinner_stop (GTK_SPINNER (priv->search_spinner));
+ gtk_widget_hide (priv->search_spinner);
search_error_could_not_create_client (impl); /* lame; we don't get an error code or anything */
return;
}
diff --git a/gtk/ui/gtkfilechooserwidget.ui b/gtk/ui/gtkfilechooserwidget.ui
index 8389bff..43e1e17 100644
--- a/gtk/ui/gtkfilechooserwidget.ui
+++ b/gtk/ui/gtkfilechooserwidget.ui
@@ -112,6 +112,15 @@
<signal name="stop-search" handler="search_entry_stop_cb" swapped="yes"/>
</object>
</child>
+ <child>
+ <object class="GtkSpinner" id="search_spinner">
+ <property name="visible">False</property>
+ <property name="active">True</property>
+ </object>
+ <packing>
+ <property name="pack-type">end</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="name">search</property>
@@ -296,14 +305,6 @@
<property name="name">empty</property>
</packing>
</child>
- <child>
- <object class="GtkSpinner" id="search_spinner">
- <property name="visible">True</property>
- </object>
- <packing>
- <property name="name">progress</property>
- </packing>
- </child>
</object>
<packing>
<property name="expand">True</property>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]