aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sb.c79
1 files changed, 40 insertions, 39 deletions
diff --git a/sb.c b/sb.c
index 701271c..5b64bf3 100644
--- a/sb.c
+++ b/sb.c
@@ -32,7 +32,7 @@ static struct {
GtkWidget *bar;
GtkWidget *search;
GtkWidget *vbox;
- GtkWidget *notebook;
+ GtkNotebook *notebook;
GtkWidget *status; } w;
#define get_tab(x, page_idx ) (struct tab*)g_object_get_qdata(G_OBJECT( gtk_notebook_get_nth_page( (GtkNotebook*)w.notebook, page_idx ) ), term_data_id);
@@ -42,7 +42,7 @@ static void cb_entry(GtkWidget* entry, gpointer data);
static void cb_go(gboolean b);
static void cb_download(WebKitWebView *web_view, GObject *download, gpointer user_data);
static void link_hover(WebKitWebView* page, const gchar* title, const gchar* link, gpointer data);
-static void title_change_cb(WebKitWebView *v, WebKitWebFrame *f, const char *title, tab *t);
+static void cb_title_changed(WebKitWebView *v, WebKitWebFrame *f, const char *title, tab *t);
static void load_commit_cb (WebKitWebView* page, WebKitWebFrame* frame, tab *t);
static void load_uri(gchar *uri);
static void tab_new(gboolean b);
@@ -63,14 +63,15 @@ gboolean cb_keypress(GtkWidget *widget, GdkEventKey *event);
gchar* tab_get_tab_postition() {
gchar *page_info = NULL;
- sprintf(page_info, "[ %d / %d ]", gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)), gtk_notebook_get_n_pages(GTK_NOTEBOOK(w.notebook)));
+
+ sprintf(page_info, "[ %d / %d ]", gtk_notebook_get_current_page(w.notebook), gtk_notebook_get_n_pages(w.notebook));
puts(page_info);
return(page_info);
}
static void search(GtkEntry *entry, gboolean b) {
- struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)));
+ struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(w.notebook));
webkit_web_view_search_text(t->view, gtk_entry_get_text(GTK_ENTRY(w.search)), FALSE, b, TRUE);
}
@@ -88,7 +89,7 @@ if(b) {
/* Called when URL is returned from the entry bar */
static void cb_entry (GtkWidget* entry, gpointer data) {
-struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)));
+struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(w.notebook));
load_uri(g_strdup(gtk_entry_get_text (GTK_ENTRY (w.bar))));
gtk_widget_grab_focus(GTK_WIDGET(t->view));
@@ -102,23 +103,23 @@ w.hide = FALSE;
/* Basic reload function */
static void tab_reload() {
-struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)));
+struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(w.notebook));
webkit_web_view_reload(t->view);
}
/* close tab, and quit if there are no tabs */
static void tab_close() {
-struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)));
-gtk_notebook_remove_page(GTK_NOTEBOOK(w.notebook), gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)));
+struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(w.notebook));
+gtk_notebook_remove_page(w.notebook, gtk_notebook_get_current_page(w.notebook));
g_free(t);
-if(gtk_notebook_get_n_pages(GTK_NOTEBOOK(w.notebook)) == 1) {
- gtk_notebook_set_show_tabs(GTK_NOTEBOOK(w.notebook), FALSE);
- gtk_widget_grab_focus(gtk_notebook_get_nth_page(GTK_NOTEBOOK(w.notebook), gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook))));
+if(gtk_notebook_get_n_pages(w.notebook) == 1) {
+ gtk_notebook_set_show_tabs(w.notebook, FALSE);
+ gtk_widget_grab_focus(gtk_notebook_get_nth_page(w.notebook, gtk_notebook_get_current_page(w.notebook)));
focus_view();
}
-if (gtk_notebook_get_n_pages(GTK_NOTEBOOK(w.notebook)) == 0) { gtk_main_quit(); }
+if (gtk_notebook_get_n_pages(w.notebook) == 0) { gtk_main_quit(); }
}
@@ -138,11 +139,11 @@ else { gtk_statusbar_push(GTK_STATUSBAR(w.status), 0, ""); }
}
/* title change callback */
-static void title_change_cb(WebKitWebView *v, WebKitWebFrame *f, const char *title, tab *t) {
+static void cb_title_changed(WebKitWebView *v, WebKitWebFrame *f, const char *title, tab *t) {
gchar *tabtitle;
-if (gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)) == gtk_notebook_page_num(GTK_NOTEBOOK(w.notebook), t->scroll)) {
-gtk_window_set_title(GTK_WINDOW(w.win), g_strconcat(title,tab_get_tab_postition(), NULL));
+if (gtk_notebook_get_current_page(w.notebook) == gtk_notebook_page_num(w.notebook, t->scroll)) {
+gtk_window_set_title(GTK_WINDOW(w.win), g_strconcat(title, NULL));
}
if(strlen(title) < DEFAULT_TAB_LENGTH ) { tabtitle = g_strdup(title); }
else { tabtitle = g_strndup(title, DEFAULT_TAB_LENGTH); strcat(tabtitle, "..."); }
@@ -157,7 +158,7 @@ static void load_commit_cb (WebKitWebView* page, WebKitWebFrame* frame, tab *t)
const gchar* uri = webkit_web_frame_get_uri(frame);
-if (gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)) == gtk_notebook_page_num(GTK_NOTEBOOK(w.notebook), t->scroll)) {
+if (gtk_notebook_get_current_page(w.notebook) == gtk_notebook_page_num(w.notebook, t->scroll)) {
gtk_entry_set_text (GTK_ENTRY (w.bar), uri);
}
FILE *history = fopen(g_build_filename(g_get_home_dir(), DEFAULT_HISTORY_FILE, NULL), "a+");
@@ -182,7 +183,7 @@ static void load_uri(gchar *uri) {
gchar *u;
//Barrowed from surf, no point creating another method, this seems to work well
-struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)));
+struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(w.notebook));
u = g_strrstr(uri, "://") ? g_strdup(uri)
: g_strdup_printf("http://%s", uri);
webkit_web_view_load_uri(t->view, u);
@@ -192,7 +193,7 @@ g_free(u);
/*increase or decrease the zoom of the page */
static void tab_zoom (gboolean b) {
- struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)));
+ struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(w.notebook));
if (b) { webkit_web_view_set_zoom_level(t->view, (webkit_web_view_get_zoom_level(t->view) + DEFAULT_ZOOM_SIZE)); }
else { webkit_web_view_set_zoom_level(t->view, (webkit_web_view_get_zoom_level(t->view) - DEFAULT_ZOOM_SIZE)); }
}
@@ -210,7 +211,7 @@ if(!gtk_widget_get_visible(w.bar)) {
/* go forward or backwards, simple enough */
static void cb_go(gboolean b) {
-struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)));
+struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(w.notebook));
if (b) { webkit_web_view_go_forward(t->view); }
else { webkit_web_view_go_back(t->view); }
}
@@ -221,29 +222,29 @@ static void toggle() {
if(gtk_widget_get_visible(w.bar)) {
gtk_widget_hide(w.bar);
gtk_widget_hide(w.status);
- gtk_notebook_set_show_tabs(GTK_NOTEBOOK(w.notebook), FALSE);
+ gtk_notebook_set_show_tabs(w.notebook, FALSE);
}
else {
gtk_widget_show_all(w.vbox);
gtk_widget_hide(w.search);
- if (gtk_notebook_get_n_pages(GTK_NOTEBOOK(w.notebook)) == 1) { } else { gtk_notebook_set_show_tabs(GTK_NOTEBOOK(w.notebook), TRUE);}
+ if (gtk_notebook_get_n_pages(w.notebook) == 1) { } else { gtk_notebook_set_show_tabs(w.notebook, TRUE);}
}
}
/* rotate tabs forward or backwards */
static void tab_switch(gboolean b) {
-gint(current) = gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook));
+gint(current) = gtk_notebook_get_current_page(w.notebook);
if(b) {
- if (current == gtk_notebook_get_n_pages(GTK_NOTEBOOK(w.notebook)) -1 ) { current = 0; }
+ if (current == gtk_notebook_get_n_pages(w.notebook) -1 ) { current = 0; }
else { current = current + 1;}
}
else {
- if (current == 0) { current = gtk_notebook_get_n_pages(GTK_NOTEBOOK(w.notebook)) - 1; }
+ if (current == 0) { current = gtk_notebook_get_n_pages(w.notebook) - 1; }
else {current = current -1; }
}
- gtk_notebook_set_current_page(GTK_NOTEBOOK(w.notebook), current);
+ gtk_notebook_set_current_page(w.notebook, current);
}
@@ -251,7 +252,7 @@ gint(current) = gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook));
WebKitWebView * tab_new_requested(WebKitWebView *v, WebKitWebFrame *f) {
puts("lol");
tab_new(FALSE);
- struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)));
+ struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(w.notebook));
return t->view;
}
@@ -259,7 +260,7 @@ WebKitWebView * tab_new_requested(WebKitWebView *v, WebKitWebFrame *f) {
/* switch to view source mode - stays in mode until reverted */
static void tab_view_source() {
- struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)));
+ struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(w.notebook));
if(webkit_web_view_get_view_source_mode(t->view)) {
webkit_web_view_set_view_source_mode(t->view, FALSE);
@@ -287,13 +288,13 @@ t->label = gtk_label_new("new tab");
/*reset status bar*/
gtk_container_add(GTK_CONTAINER(t->scroll), GTK_WIDGET(t->view));
-int index = gtk_notebook_append_page(GTK_NOTEBOOK(w.notebook), t->scroll, t->label);
-gtk_notebook_set_tab_reorderable(GTK_NOTEBOOK(w.notebook), t->scroll, TRUE);
+int index = gtk_notebook_append_page(w.notebook, t->scroll, t->label);
+gtk_notebook_set_tab_reorderable(w.notebook, t->scroll, TRUE);
-//if ( gtk_notebook_get_n_pages(GTK_NOTEBOOK(w.notebook)) == 1) { }
+//if ( gtk_notebook_get_n_pages(w.notebook) == 1) { }
if (index == 0) {
-gtk_notebook_set_show_tabs(GTK_NOTEBOOK(w.notebook), FALSE);
-} else { gtk_notebook_set_show_tabs(GTK_NOTEBOOK(w.notebook), TRUE); }
+gtk_notebook_set_show_tabs(w.notebook, FALSE);
+} else { gtk_notebook_set_show_tabs(w.notebook, TRUE); }
g_object_set(G_OBJECT(w.webkitsettings), "enable-page-cache", TRUE, NULL);
g_object_set(G_OBJECT(w.webkitwindowfeatures), "scrollbar-visible", FALSE, NULL);
@@ -306,7 +307,7 @@ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(t->scroll), GTK_POLICY_NEVER,
webkit_web_view_set_zoom_level(t->view, .80);
/*callbacks*/
-g_signal_connect (G_OBJECT (t->view), "title-changed", G_CALLBACK (title_change_cb), t);
+g_signal_connect (G_OBJECT (t->view), "title-changed", G_CALLBACK (cb_title_changed), t);
g_signal_connect (G_OBJECT (t->view), "load-committed", G_CALLBACK (load_commit_cb), t);
g_signal_connect (G_OBJECT (t->view), "hovering-over-link", G_CALLBACK (link_hover), t->view);
g_signal_connect (G_OBJECT (t->view), "download-requested", G_CALLBACK (cb_download), t->view);
@@ -317,7 +318,7 @@ g_object_set_qdata_full(G_OBJECT(gtk_notebook_get_nth_page((GtkNotebook*)w.noteb
gtk_widget_show_all(w.win);
gtk_widget_hide(w.search);
-if (!b) { gtk_notebook_set_current_page(GTK_NOTEBOOK(w.notebook), index); }
+if (!b) { gtk_notebook_set_current_page(w.notebook, index); }
gtk_widget_grab_focus(w.bar);
}
@@ -351,7 +352,7 @@ gtk_entry_set_text(GTK_ENTRY(w.bar), url);
/* focus on view */
static void focus_view() {
- struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(GTK_NOTEBOOK(w.notebook)));
+ struct tab *t = get_tab(NULL, gtk_notebook_get_current_page(w.notebook));
gtk_widget_grab_focus(GTK_WIDGET(t->view));
}
@@ -368,13 +369,13 @@ w.search = gtk_entry_new();
w.status = gtk_statusbar_new();
gtk_entry_set_has_frame(GTK_ENTRY(w.bar), FALSE);
-gtk_notebook_set_scrollable(GTK_NOTEBOOK(w.notebook), TRUE) ;
+gtk_notebook_set_scrollable(w.notebook, TRUE) ;
gtk_statusbar_set_has_resize_grip(GTK_STATUSBAR(w.status), FALSE);
-gtk_notebook_set_show_border(GTK_NOTEBOOK(w.notebook), FALSE);
-gtk_notebook_set_tab_border(GTK_NOTEBOOK(w.notebook), 0);
+gtk_notebook_set_show_border(w.notebook, FALSE);
+gtk_notebook_set_tab_border(w.notebook, 0);
gtk_box_pack_start(GTK_BOX (w.vbox), w.bar, FALSE, FALSE, 0);
-gtk_box_pack_start(GTK_BOX(w.vbox), w.notebook, TRUE, TRUE, 0);
+gtk_box_pack_start(GTK_BOX(w.vbox), GTK_WIDGET(w.notebook), TRUE, TRUE, 0);
gtk_box_pack_start(GTK_BOX(w.vbox), w.search, FALSE, FALSE, 0);
gtk_box_pack_start(GTK_BOX(w.vbox), w.status, FALSE, FALSE, 0);