diff options
author | mutantturkey <crazycal00@gmail.com> | 2011-05-18 23:26:37 -0400 |
---|---|---|
committer | mutantturkey <crazycal00@gmail.com> | 2011-05-18 23:26:37 -0400 |
commit | 9028c807cfd507c57a17c33fd144678db25edea0 (patch) | |
tree | a0795dcbe96d569fc668e67fc27e2f16f338f292 /sb.c | |
parent | 8c189045d953c4dc42076776d6f853a692421a42 (diff) |
reworked load_status into cb_load status. now uses the WebKitLoadStatus enumerator instead of the deprecated way, allows for handling of other options also
Diffstat (limited to 'sb.c')
-rw-r--r-- | sb.c | 42 |
1 files changed, 20 insertions, 22 deletions
@@ -26,17 +26,17 @@ gchar* tab_get_tab_postition() { void search(GtkEntry *entry, gboolean b) { 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); + webkit_web_view_search_text(t->view, gtk_entry_get_text(GTK_ENTRY(w.searchbar)), FALSE, b, TRUE); } void show_search(gboolean b) { if(b) { - gtk_widget_show(w.search); - gtk_widget_grab_focus(w.search); + gtk_widget_show(w.searchbar); + gtk_widget_grab_focus(w.searchbar); } else { - gtk_widget_hide(w.search); + gtk_widget_hide(w.searchbar); } } @@ -63,15 +63,7 @@ if (gtk_notebook_get_n_pages(w.notebook) == 0) { gtk_main_quit(); } } -/* link hovering callback */ -void link_hover (WebKitWebView* page, const gchar* title, const gchar* link, gpointer data) { -if(link != NULL) { gtk_statusbar_push(GTK_STATUSBAR(w.status), 0, link); } -else { gtk_statusbar_push(GTK_STATUSBAR(w.status), 0, ""); } -} - - /* an alternative to the regular tab command, combines tabbing and history command into one */ - void tab_and_go() { gchar *returned; g_spawn_command_line_sync(g_strconcat("sh -c 'sort ", g_build_filename(g_get_home_dir(), ".sb_history", NULL), " | dmenu -l 15 -xs -c'", NULL), &returned, NULL, NULL, NULL); @@ -120,7 +112,7 @@ void toggle() { } else { gtk_widget_show_all(w.vbox); - gtk_widget_hide(w.search); + gtk_widget_hide(w.searchbar); if (gtk_notebook_get_n_pages(w.notebook) == 1) { } else { gtk_notebook_set_show_tabs(w.notebook, TRUE);} } } @@ -202,8 +194,8 @@ webkit_web_view_set_zoom_level(t->view, DEFAULT_ZOOM_LEVEL); /*callbacks*/ 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 (cb_commit_load), t); -g_signal_connect (G_OBJECT (t->view), "hovering-over-link", G_CALLBACK (link_hover), t->view); +g_signal_connect (G_OBJECT (t->view), "notify::load-status", G_CALLBACK (cb_load_status), t); +g_signal_connect (G_OBJECT (t->view), "hovering-over-link", G_CALLBACK (cb_link_hover), t->view); g_signal_connect (G_OBJECT (t->view), "download-requested", G_CALLBACK (cb_download), t->view); g_signal_connect (G_OBJECT (t->view), "create-web-view", G_CALLBACK (tab_new_requested), NULL); /*settings*/ @@ -211,7 +203,7 @@ g_signal_connect (G_OBJECT (t->view), "create-web-view", G_CALLBACK (tab_new_req g_object_set_qdata_full(G_OBJECT(gtk_notebook_get_nth_page((GtkNotebook*)w.notebook, index)), term_data_id, t, NULL); gtk_widget_show_all(w.win); -gtk_widget_hide(w.search); +gtk_widget_hide(w.searchbar); if (!b) { gtk_notebook_set_current_page(w.notebook, index); } gtk_widget_grab_focus(w.bar); } @@ -257,22 +249,28 @@ void window_setup() { term_data_id = g_quark_from_static_string("s"); w.vbox = gtk_vbox_new(FALSE, 0); +w.hbox = gtk_hbox_new(FALSE, 0); + w.notebook = gtk_notebook_new(); w.bar = gtk_entry_new (); -w.search = gtk_entry_new(); +w.searchbar = gtk_entry_new(); w.status = gtk_statusbar_new(); gtk_entry_set_has_frame(GTK_ENTRY(w.bar), FALSE); -gtk_notebook_set_scrollable(w.notebook, TRUE) ; -gtk_statusbar_set_has_resize_grip(GTK_STATUSBAR(w.status), FALSE); +//gtk_entry_set_icon_from_stock(GTK_ENTRY(w.bar), GTK_ENTRY_ICON_PRIMARY, GTK_STOCK_YES); + +gtk_notebook_set_scrollable(w.notebook, TRUE); gtk_notebook_set_show_border(w.notebook, FALSE); gtk_notebook_set_tab_border(w.notebook, 0); +gtk_statusbar_set_has_resize_grip(GTK_STATUSBAR(w.status), FALSE); + gtk_box_pack_start(GTK_BOX (w.vbox), w.bar, FALSE, FALSE, 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.searchbar, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(w.vbox), w.status, FALSE, FALSE, 0); +//gtk_box_pack_start(GTK_BOX(w.hbox), w.status, TRUE, FALSE, 0); w.win = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_default_size(GTK_WINDOW(w.win), DEFAULT_HEIGHT, DEFAULT_WIDTH); @@ -286,7 +284,7 @@ soup_session_add_feature(w.session, SOUP_SESSION_FEATURE(w.jar)); tab_new(FALSE); -g_signal_connect (G_OBJECT (w.search), "activate", G_CALLBACK (search), GINT_TO_POINTER(1)); +g_signal_connect (G_OBJECT (w.searchbar), "activate", G_CALLBACK (search), GINT_TO_POINTER(1)); g_signal_connect (G_OBJECT (w.bar), "activate", G_CALLBACK (cb_entry), NULL); g_signal_connect (G_OBJECT(w.notebook), "switch-page", G_CALLBACK(tab_focus), NULL); g_signal_connect (G_OBJECT (w.win), "destroy", G_CALLBACK (gtk_main_quit), NULL); @@ -294,7 +292,7 @@ g_signal_connect(w.win, "key-press-event", G_CALLBACK(cb_keypress), NULL); gtk_container_add (GTK_CONTAINER (w.win), w.vbox); gtk_widget_show_all (w.win); -gtk_widget_hide(w.search); +gtk_widget_hide(w.searchbar); gtk_widget_grab_focus(w.bar); } |