aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormutantturkey <crazycal00@gmail.com>2010-05-06 10:15:11 -0400
committermutantturkey <crazycal00@gmail.com>2010-05-06 10:15:11 -0400
commit949618f667f1a928697805894addf8608696aa14 (patch)
tree5131ac92182449903ba5c62bc119df47aac2b8b9
parentefc6d478804fb14fedad07b0700babce71ae9e36 (diff)
closer to compiling than ever :) i am slowly converting everything to structures, not much time for working as of late
-rw-r--r--sb.c42
1 files changed, 20 insertions, 22 deletions
diff --git a/sb.c b/sb.c
index 26b198c..751479b 100644
--- a/sb.c
+++ b/sb.c
@@ -5,37 +5,37 @@
#include <gtk/gtk.h>
#include <webkit/webkit.h>
#include <gdk/gdkkeysyms.h>
-struct tab {
+typedef struct tab {
GtkWidget *scroll;
gchar *main_title;
gint load_progress;
guint status_context_id;
WebKitWebView *view;
WebKitWebSettings *settings;
-};
+} tab;
-struct window {
+typedef struct window {
GtkWidget *win;
GtkWidget *bar;
GtkWidget *search;
GtkWidget *vbox;
GtkWidget *notebook;
GtkWidget *status;
-};
+} window;
-static void activate_uri_entry_cb (GtkWidget* entry, gpointer data) {
+static void activate_uri_entry_cb (GtkWidget* entry, tab *t) {
const gchar* uri = gtk_entry_get_text (GTK_ENTRY (sb.bar));
webkit_web_view_open (sb.view, uri);
gtk_widget_grab_focus(GTK_WIDGET(sb.view));
}
-static void update_title (const gchar* title, gchar* linkhover) {
+static void update_title (const gchar* title, gchar* linkhover, window *w) {
if (linkhover) title = g_strdup(linkhover);
- gtk_window_set_title(GTK_WINDOW(sb.win), title);
+ gtk_window_set_title(GTK_WINDOW(*w->win), title);
g_free(linkhover);
}
@@ -70,29 +70,30 @@ static void go_back_cb (GtkWidget* widget, gpointer data) {
static void go_forward_cb (GtkWidget* widget, gpointer data) {
webkit_web_view_go_forward (sb.view);
}
-static void new_tab () {
+tab *t new_tab () {
/*seperate function so it will be easier to setup the webkit crap*/
-
- sb.scroll = gtk_scrolled_window_new(NULL, NULL);
- gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sb.scroll), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+ tab *t;
+ t = g_new0(tab, 1);
+ t->scroll = gtk_scrolled_window_new(NULL, NULL);
+ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(t->scroll), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
sb.view = WEBKIT_WEB_VIEW (webkit_web_view_new ());
gtk_container_add(GTK_CONTAINER(sb.scroll), GTK_WIDGET(sb.view));
/*callbacks*/
- g_signal_connect (G_OBJECT (sb.view), "title-changed", G_CALLBACK (title_change_cb), sb.view);
- g_signal_connect (G_OBJECT (sb.view), "load-progress-changed", G_CALLBACK (progress_change_cb), sb.view);
- g_signal_connect (G_OBJECT (sb.view), "load-committed", G_CALLBACK (load_commit_cb), sb.view);
- g_signal_connect (G_OBJECT (sb.view), "hovering-over-link", G_CALLBACK (link_hover_cb), sb.view);
+ g_signal_connect (G_OBJECT (sb.view), "title-changed", G_CALLBACK (title_change_cb), t->view);
+ g_signal_connect (G_OBJECT (sb.view), "load-progress-changed", G_CALLBACK (progress_change_cb), t->view);
+ g_signal_connect (G_OBJECT (sb.view), "load-committed", G_CALLBACK (load_commit_cb), t->view);
+ g_signal_connect (G_OBJECT (sb.view), "hovering-over-link", G_CALLBACK (link_hover_cb), t->view);
/*settings*/
sb.settings = webkit_web_settings_new ();
g_object_set (G_OBJECT(sb.settings), "enable-java-applet", FALSE, NULL);
g_object_set (G_OBJECT(sb.settings), "print-backgrounds", FALSE, NULL);
webkit_web_view_set_settings (WEBKIT_WEB_VIEW(sb.view), sb.settings);
- return;
+ return t;
}
-gpointer * new_window(void) {
+window *w new_window(void) {
/*sb is orginized with a vbox. much the simplest way to orginize things*/
@@ -111,9 +112,6 @@ gpointer * new_window(void) {
w->notebook = gtk_notebook_new();
gtk_box_pack_start(GTK_BOX(w->vbox), w->notebook, FALSE, FALSE, 0);
-
- /* search bar*/
-
/* status bar*/
w->status = gtk_statusbar_new();
gtk_box_pack_start(GTK_BOX(w->vbox), w->status, FALSE, FALSE, 0);
@@ -159,10 +157,10 @@ if (event->state == GDK_CONTROL_MASK) {
int main (int argc, char* argv[]) {
gtk_init (&argc, &argv);
struct window *w;
- (window *) w = new_window();
+ w = new_window();
//gchar* w->starting_uri = (gchar*) (argc > 1 ? argv[1] : "http://www.google.com/");
- gtk_main ();
+ gtk_main();
return 0;
}