summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorDaniel Silverstone <dsilvers@netsurf-browser.org>2006-03-26 15:07:25 +0000
committerDaniel Silverstone <dsilvers@netsurf-browser.org>2006-03-26 15:07:25 +0000
commit6d21c43a970f4d63cce7437830c68c55e0ab2d71 (patch)
tree4047b0d4f2aaa609f8d8e231879a11501bb0ba9f /gtk
parentee528d96f425a769eeed4bfe9b6fc5f61d6b788f (diff)
downloadnetsurf-6d21c43a970f4d63cce7437830c68c55e0ab2d71.tar.gz
netsurf-6d21c43a970f4d63cce7437830c68c55e0ab2d71.tar.bz2
[project @ 2006-03-26 15:07:25 by dsilvers]
Fix up a missing GTK_TOOLBAR() and implement the stop button as a throbber/stop-button for now svn path=/import/netsurf/; revision=2174
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gtk_window.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/gtk/gtk_window.c b/gtk/gtk_window.c
index 3a6f47f4e..e1a638177 100644
--- a/gtk/gtk_window.c
+++ b/gtk/gtk_window.c
@@ -31,6 +31,7 @@ struct gui_window {
GtkWidget *url_bar;
GtkWidget *drawing_area;
GtkWidget *status_bar;
+ GtkWidget *stop_button;
struct browser_window *bw;
int target_width;
int target_height;
@@ -47,6 +48,7 @@ cairo_t *current_cr;
static void gui_window_zoomin_button_event(GtkWidget *widget, gpointer data);
static void gui_window_zoom100_button_event(GtkWidget *widget, gpointer data);
static void gui_window_zoomout_button_event(GtkWidget *widget, gpointer data);
+static void gui_window_stop_button_event(GtkWidget *widget, gpointer data);
static void gui_window_destroy_event(GtkWidget *widget, gpointer data);
static gboolean gui_window_expose_event(GtkWidget *widget,
GdkEventExpose *event, gpointer data);
@@ -92,7 +94,7 @@ struct gui_window *gui_create_browser_window(struct browser_window *bw,
gtk_widget_show(vbox);
toolbar = gtk_toolbar_new();
- gtk_toolbar_set_style(toolbar, GTK_TOOLBAR_ICONS);
+ gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS);
gtk_box_pack_start(GTK_BOX(vbox), toolbar, FALSE, TRUE, 0);
gtk_widget_show(toolbar);
@@ -107,6 +109,9 @@ struct gui_window *gui_create_browser_window(struct browser_window *bw,
stop_button = gtk_tool_button_new_from_stock(GTK_STOCK_STOP);
gtk_toolbar_insert(GTK_TOOLBAR(toolbar), stop_button, -1);
gtk_widget_show(GTK_WIDGET(stop_button));
+ g->stop_button = GTK_WIDGET(stop_button);
+ gtk_widget_set_sensitive(g->stop_button, FALSE);
+
reload_button = gtk_tool_button_new_from_stock(GTK_STOCK_REFRESH);
gtk_toolbar_insert(GTK_TOOLBAR(toolbar), reload_button, -1);
@@ -196,7 +201,8 @@ struct gui_window *gui_create_browser_window(struct browser_window *bw,
G_CALLBACK(gui_window_zoom100_button_event), g);
g_signal_connect(G_OBJECT(zoomout_button), "clicked",
G_CALLBACK(gui_window_zoomout_button_event), g);
-
+ g_signal_connect(G_OBJECT(g->stop_button), "clicked",
+ G_CALLBACK(gui_window_stop_button_event), g);
return g;
}
@@ -222,6 +228,11 @@ void gui_window_zoomout_button_event(GtkWidget *widget, gpointer data)
gtk_widget_queue_draw(g->drawing_area);
}
+void gui_window_stop_button_event(GtkWidget *widget, gpointer data)
+{
+ struct gui_window *g = data;
+ browser_window_stop(g->bw);
+}
void gui_window_destroy_event(GtkWidget *widget, gpointer data)
{
@@ -515,11 +526,13 @@ void gui_window_set_url(struct gui_window *g, const char *url)
void gui_window_start_throbber(struct gui_window* g)
{
+ gtk_widget_set_sensitive(g->stop_button, TRUE);
}
void gui_window_stop_throbber(struct gui_window* g)
{
+ gtk_widget_set_sensitive(g->stop_button, FALSE);
}