Add stop/reload buttons.

This commit is contained in:
Marco Pesenti Gritti
2006-10-20 15:43:05 +02:00
parent bb4085373c
commit e4c6a5befa
3 changed files with 51 additions and 2 deletions
+26 -2
View File
@@ -33,7 +33,8 @@ enum {
PROP_TITLE,
PROP_ADDRESS,
PROP_CAN_GO_BACK,
PROP_CAN_GO_FORWARD
PROP_CAN_GO_FORWARD,
PROP_LOADING
};
void
@@ -87,6 +88,9 @@ sugar_browser_get_property(GObject *object,
case PROP_CAN_GO_FORWARD:
g_value_set_boolean(value, browser->can_go_forward);
break;
case PROP_LOADING:
g_value_set_boolean(value, browser->loading);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -135,6 +139,13 @@ sugar_browser_class_init(SugarBrowserClass *browser_class)
"Can go forward",
FALSE,
G_PARAM_READABLE));
g_object_class_install_property (gobject_class, PROP_LOADING,
g_param_spec_boolean ("loading",
"Loading",
"Loading",
FALSE,
G_PARAM_READABLE));
}
SugarBrowser *
@@ -184,6 +195,15 @@ sugar_browser_set_progress(SugarBrowser *browser, float progress)
g_object_notify (G_OBJECT(browser), "progress");
}
static void
sugar_browser_set_loading(SugarBrowser *browser, gboolean loading)
{
g_return_if_fail(SUGAR_IS_BROWSER(browser));
browser->loading = loading;
g_object_notify (G_OBJECT(browser), "loading");
}
static void
net_state_cb(GtkMozEmbed *embed, const char *aURI, gint state, guint status)
{
@@ -193,7 +213,11 @@ net_state_cb(GtkMozEmbed *embed, const char *aURI, gint state, guint status)
if (state & GTK_MOZ_EMBED_FLAG_START) {
browser->total_requests = 0;
browser->current_requests = 0;
browser->progress = 0.0;
sugar_browser_set_progress(browser, 0.0);
sugar_browser_set_loading(browser, TRUE);
} else if (state & GTK_MOZ_EMBED_FLAG_STOP) {
sugar_browser_set_loading(browser, FALSE);
}
}
+1
View File
@@ -44,6 +44,7 @@ struct _SugarBrowser {
char *title;
gboolean can_go_back;
gboolean can_go_forward;
gboolean loading;
};
struct _SugarBrowserClass {