# HG changeset patch # User Christophe Lincoln # Date 1301944752 -7200 # Node ID bbb8e2f36488249246dfb8b42c3c18222325e458 # Parent 9740789a3744768e8cf94d89213e711f3a4a55b0 main.c: Add a back and forward button diff -r 9740789a3744 -r bbb8e2f36488 README --- a/README Mon Apr 04 14:07:13 2011 +0000 +++ b/README Mon Apr 04 21:19:12 2011 +0200 @@ -43,6 +43,8 @@ entry in the bar, but finally came to the conclusion that it is not usefull and not the goal of tazweb. But here is the code for posterity: +static GtkWidget* uri_entry; + static void activate_uri_entry_cb (GtkWidget* entry, gpointer data) { diff -r 9740789a3744 -r bbb8e2f36488 src/main.c --- a/src/main.c Mon Apr 04 14:07:13 2011 +0000 +++ b/src/main.c Mon Apr 04 21:19:12 2011 +0200 @@ -12,7 +12,6 @@ #include static GtkWidget* main_window; -static GtkWidget* uri_entry; static WebKitWebView* web_view; static gchar* main_title; static gdouble load_progress; @@ -56,16 +55,28 @@ /* Home button function */ static void -go_home (GtkWidget* widget, gpointer data) +go_home_cb (GtkWidget* widget, gpointer data) { const gchar* uri = ("file:///usr/share/webhome/index.html"); g_assert (uri); webkit_web_view_load_uri (web_view, uri); } +static void +go_back_cb (GtkWidget* widget, gpointer data) +{ + webkit_web_view_go_back (web_view); +} + +static void +go_forward_cb (GtkWidget* widget, gpointer data) +{ + webkit_web_view_go_forward (web_view); +} + /* TazWeb doc function */ static void -tazweb_doc (GtkWidget* widget, gpointer data) +tazweb_doc_cb (GtkWidget* widget, gpointer data) { const gchar* uri = ("file:///usr/share/doc/tazweb/tazweb.html"); g_assert (uri); @@ -99,7 +110,17 @@ /* The Home button */ item = gtk_tool_button_new_from_stock (GTK_STOCK_HOME); - g_signal_connect (G_OBJECT (item), "clicked", G_CALLBACK (go_home), NULL); + g_signal_connect (G_OBJECT (item), "clicked", G_CALLBACK (go_home_cb), NULL); + gtk_toolbar_insert (GTK_TOOLBAR (toolbar), item, -1); + + /* The back button */ + item = gtk_tool_button_new_from_stock (GTK_STOCK_GO_BACK); + g_signal_connect (G_OBJECT (item), "clicked", G_CALLBACK (go_back_cb), NULL); + gtk_toolbar_insert (GTK_TOOLBAR (toolbar), item, -1); + + /* The forward button */ + item = gtk_tool_button_new_from_stock (GTK_STOCK_GO_FORWARD); + g_signal_connect (G_OBJECT (item), "clicked", G_CALLBACK (go_forward_cb), NULL); gtk_toolbar_insert (GTK_TOOLBAR (toolbar), item, -1); /* Expand to have help icon on the right */ @@ -109,7 +130,7 @@ /* The TazWeb doc button */ item = gtk_tool_button_new_from_stock (GTK_STOCK_INFO); - g_signal_connect (G_OBJECT (item), "clicked", G_CALLBACK (tazweb_doc), NULL); + g_signal_connect (G_OBJECT (item), "clicked", G_CALLBACK (tazweb_doc_cb), NULL); gtk_toolbar_insert (GTK_TOOLBAR (toolbar), item, -1); return toolbar;