X-Git-Url: https://git.armaanb.net/?p=chorizo.git;a=blobdiff_plain;f=browser.c;h=3f4765d3d8bb27fc3accde23fd0843a58dbdc230;hp=d10ccb5ce3d05c5e26f74984b6ad208268c1d8d9;hb=41afaa44290fce503ac8cf00156a7b8de8e680e3;hpb=9c4bc8db572d93098ccc741c7968d6b72d9d7487 diff --git a/browser.c b/browser.c index d10ccb5..3f4765d 100644 --- a/browser.c +++ b/browser.c @@ -902,30 +902,14 @@ key_common(GtkWidget *widget, GdkEvent *event, gpointer data) WebKitSettings *settings = webkit_web_view_get_settings(WEBKIT_WEB_VIEW(c->web_view)); gboolean js = webkit_settings_get_enable_javascript(settings); int key = ((GdkEventKey *)event)->keyval; - if (def_key("close_tab", GDK_KEY_q) == key) { - client_destroy(NULL, c); - return TRUE; - } else if (def_key("new_tab", GDK_KEY_w) == key) { - f = ensure_uri_scheme(cfg.home_uri); - client_new(f, NULL, TRUE, TRUE); - g_free(f); - return TRUE; - } else if (def_key("reload", GDK_KEY_e) == key) { - webkit_web_view_reload_bypass_cache(WEBKIT_WEB_VIEW(c->web_view)); - return TRUE; - } else if (def_key("download_manager", GDK_KEY_y) == key) { + if (def_key("download_manager", GDK_KEY_y) == key) { gtk_widget_show_all(dm.win); return TRUE; - } else if (def_key("web_search", GDK_KEY_d) == key) { - gtk_widget_grab_focus(c->location); - gtk_entry_set_text(GTK_ENTRY(c->location), "w/"); - gtk_editable_set_position(GTK_EDITABLE(c->location), -1); - return TRUE; - } else if (def_key("search_forwards", GDK_KEY_s) == key) { - search_init(c, 1); + } else if (def_key("history_back", GDK_KEY_h) == key) { + webkit_web_view_go_back(WEBKIT_WEB_VIEW(c->web_view)); return TRUE; - } else if (def_key("search_backwards", GDK_KEY_r) == key) { - search_init(c, -1); + } else if (def_key("history_forwards", GDK_KEY_l) == key) { + webkit_web_view_go_forward(WEBKIT_WEB_VIEW(c->web_view)); return TRUE; } else if (def_key("location", GDK_KEY_t) == key) { gtk_widget_grab_focus(c->location); @@ -934,25 +918,26 @@ key_common(GtkWidget *widget, GdkEvent *event, gpointer data) gtk_entry_set_text(GTK_ENTRY(c->location), goal); gtk_editable_set_position(GTK_EDITABLE(c->location), -1); return TRUE; - } else if (def_key("previous_tab", GDK_KEY_u) == key) { - gtk_notebook_prev_page(GTK_NOTEBOOK(mw.notebook)); - return TRUE; - } else if (def_key("next_tab", GDK_KEY_i) == key) { - gtk_notebook_next_page(GTK_NOTEBOOK(mw.notebook)); - return TRUE; - } else if (def_key("history_back", GDK_KEY_h) == key) { - webkit_web_view_go_back(WEBKIT_WEB_VIEW(c->web_view)); + } else if (def_key("quit", GDK_KEY_g) == key) { + search(c, 2); + gtk_widget_grab_focus(c->web_view); + gtk_entry_set_text(GTK_ENTRY(c->location), + webkit_web_view_get_uri(WEBKIT_WEB_VIEW(c->web_view))); + webkit_web_view_run_javascript(WEBKIT_WEB_VIEW(c->web_view), + "window.getSelection().removeAllRanges();" + "document.activeElement.blur();", + NULL, NULL, c); return TRUE; - } else if (def_key("history_forwards", GDK_KEY_l) == key) { - webkit_web_view_go_forward(WEBKIT_WEB_VIEW(c->web_view)); + } else if (def_key("reload", GDK_KEY_e) == key) { + webkit_web_view_reload_bypass_cache(WEBKIT_WEB_VIEW(c->web_view)); return TRUE; - } else if (def_key("scroll_down", GDK_KEY_j) == key) { + } else if (def_key("scroll_line_down", GDK_KEY_j) == key) { for (int i = 0; i < 2; i++) { event->key.keyval = GDK_KEY_Down; gdk_event_put(event); } return TRUE; - } else if (def_key("scroll_up", GDK_KEY_k) == key) { + } else if (def_key("scroll_line_up", GDK_KEY_k) == key) { event->key.keyval = GDK_KEY_Up; gdk_event_put(event); return TRUE; @@ -964,19 +949,34 @@ key_common(GtkWidget *widget, GdkEvent *event, gpointer data) event->key.keyval = GDK_KEY_Page_Up; gdk_event_put(event); return TRUE; + } else if (def_key("search_forwards", GDK_KEY_s) == key) { + search_init(c, 1); + return TRUE; + } else if (def_key("search_backwards", GDK_KEY_r) == key) { + search_init(c, -1); + return TRUE; + } else if (def_key("tab_close", GDK_KEY_q) == key) { + client_destroy(NULL, c); + return TRUE; + } else if (def_key("tab_previous", GDK_KEY_u) == key) { + gtk_notebook_prev_page(GTK_NOTEBOOK(mw.notebook)); + return TRUE; + } else if (def_key("tab_new", GDK_KEY_w) == key) { + f = ensure_uri_scheme(cfg.home_uri); + client_new(f, NULL, TRUE, TRUE); + g_free(f); + return TRUE; + } else if (def_key("tab_next", GDK_KEY_i) == key) { + gtk_notebook_next_page(GTK_NOTEBOOK(mw.notebook)); + return TRUE; } else if (def_key("toggle_js", GDK_KEY_o) == key) { webkit_settings_set_enable_javascript(settings, (js) ? FALSE : TRUE); webkit_web_view_set_settings(WEBKIT_WEB_VIEW(c->web_view), settings); return TRUE; - } else if (def_key("quit", GDK_KEY_g) == key) { - search(c, 2); - gtk_widget_grab_focus(c->web_view); - gtk_entry_set_text(GTK_ENTRY(c->location), - webkit_web_view_get_uri(WEBKIT_WEB_VIEW(c->web_view))); - webkit_web_view_run_javascript(WEBKIT_WEB_VIEW(c->web_view), - "window.getSelection().removeAllRanges();" - "document.activeElement.blur();", - NULL, NULL, c); + } else if (def_key("web_search", GDK_KEY_d) == key) { + gtk_widget_grab_focus(c->location); + gtk_entry_set_text(GTK_ENTRY(c->location), "w/"); + gtk_editable_set_position(GTK_EDITABLE(c->location), -1); return TRUE; } else if (def_key("zoom_in", GDK_KEY_equal) == key) { now = webkit_web_view_get_zoom_level(WEBKIT_WEB_VIEW(c->web_view));