[gedit/wip/loader-saver] tab: GtkSourceFileLoader port: progress info and cancel
- From: Sébastien Wilmet <swilmet src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gedit/wip/loader-saver] tab: GtkSourceFileLoader port: progress info and cancel
- Date: Mon, 23 Jun 2014 10:46:00 +0000 (UTC)
commit 7ff3816f80e624dca675c628db503e0b7a2d6db3
Author: Sébastien Wilmet <swilmet gnome org>
Date: Mon Jun 23 12:14:39 2014 +0200
tab: GtkSourceFileLoader port: progress info and cancel
It more or less works, but there is still a lot of work to do.
gedit/gedit-tab.c | 92 +++++++++++++++++++---------------------------------
1 files changed, 34 insertions(+), 58 deletions(-)
---
diff --git a/gedit/gedit-tab.c b/gedit/gedit-tab.c
index d4e1e57..51f7e26 100644
--- a/gedit/gedit-tab.c
+++ b/gedit/gedit-tab.c
@@ -643,15 +643,10 @@ load_cancelled (GtkWidget *bar,
gint response_id,
GeditTab *tab)
{
- GeditDocument *doc;
-
g_return_if_fail (GEDIT_IS_PROGRESS_INFO_BAR (tab->priv->info_bar));
+ g_return_if_fail (G_IS_CANCELLABLE (tab->priv->cancellable));
- doc = gedit_tab_get_document (tab);
-
- g_object_ref (tab);
- _gedit_document_load_cancel (doc);
- g_object_unref (tab);
+ g_cancellable_cancel (tab->priv->cancellable);
}
static void
@@ -747,13 +742,10 @@ show_loading_info_bar (GeditTab *tab)
}
else
{
- msg = g_strdup_printf (_("Reverting %s"),
- name_markup);
+ msg = g_strdup_printf (_("Reverting %s"), name_markup);
}
- bar = gedit_progress_info_bar_new ("document-revert",
- msg,
- TRUE);
+ bar = gedit_progress_info_bar_new ("document-revert", msg, TRUE);
}
else
{
@@ -770,13 +762,10 @@ show_loading_info_bar (GeditTab *tab)
}
else
{
- msg = g_strdup_printf (_("Loading %s"),
- name_markup);
+ msg = g_strdup_printf (_("Loading %s"), name_markup);
}
- bar = gedit_progress_info_bar_new ("document-open",
- msg,
- TRUE);
+ bar = gedit_progress_info_bar_new ("document-open", msg, TRUE);
}
g_signal_connect (bar,
@@ -906,40 +895,6 @@ info_bar_set_progress (GeditTab *tab,
}
}
-static void
-document_loading (GeditDocument *document,
- goffset size,
- goffset total_size,
- GeditTab *tab)
-{
- gdouble elapsed_time;
- gdouble total_time;
- gdouble remaining_time;
-
- g_return_if_fail ((tab->priv->state == GEDIT_TAB_STATE_LOADING) ||
- (tab->priv->state == GEDIT_TAB_STATE_REVERTING));
-
- if (tab->priv->timer == NULL)
- {
- tab->priv->timer = g_timer_new ();
- }
-
- elapsed_time = g_timer_elapsed (tab->priv->timer, NULL);
-
- /* elapsed_time / total_time = size / total_size */
- total_time = (elapsed_time * total_size) / size;
-
- remaining_time = total_time - elapsed_time;
-
- /* Approximately more than 3 seconds remaining. */
- if (remaining_time > 3.0)
- {
- show_loading_info_bar (tab);
- }
-
- info_bar_set_progress (tab, size, total_size);
-}
-
static gboolean
remove_tab_idle (GeditTab *tab)
{
@@ -1661,11 +1616,6 @@ gedit_tab_init (GeditTab *tab)
tab);
g_signal_connect (doc,
- "loading",
- G_CALLBACK (document_loading),
- tab);
-
- g_signal_connect (doc,
"loaded",
G_CALLBACK (document_loaded),
tab);
@@ -1981,10 +1931,36 @@ gedit_tab_get_from_document (GeditDocument *doc)
}
static void
-progress_cb (goffset current_num_bytes,
- goffset total_num_bytes,
+progress_cb (goffset size,
+ goffset total_size,
GeditTab *tab)
{
+ gdouble elapsed_time;
+ gdouble total_time;
+ gdouble remaining_time;
+
+ g_return_if_fail (tab->priv->state == GEDIT_TAB_STATE_LOADING ||
+ tab->priv->state == GEDIT_TAB_STATE_REVERTING);
+
+ if (tab->priv->timer == NULL)
+ {
+ tab->priv->timer = g_timer_new ();
+ }
+
+ elapsed_time = g_timer_elapsed (tab->priv->timer, NULL);
+
+ /* elapsed_time / total_time = size / total_size */
+ total_time = (elapsed_time * total_size) / size;
+
+ remaining_time = total_time - elapsed_time;
+
+ /* Approximately more than 3 seconds remaining. */
+ if (remaining_time > 3.0)
+ {
+ show_loading_info_bar (tab);
+ }
+
+ info_bar_set_progress (tab, size, total_size);
}
static void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]