Introduction
Introduction Statistics Contact Development Disclaimer Help
tapplied patch from arg. thanks :) - surf - customized build of surf, the suckl…
git clone git://src.adamsgaard.dk/surf
Log
Files
Refs
README
LICENSE
---
commit 25b9ae3ce442f03e7667eeb54efee83fa1368524
parent d2a44361231d7bc576cacf08e74ad8d6584de0e1
Author: Enno Boland (tox) <[email protected]>
Date: Thu, 17 Sep 2009 01:09:00 +0200
applied patch from arg. thanks :)
Diffstat:
M config.def.h | 48 ++++++++++++++++-------------…
M surf.c | 74 +++++++++++++----------------…
2 files changed, 56 insertions(+), 66 deletions(-)
---
diff --git a/config.def.h b/config.def.h
t@@ -4,29 +4,29 @@ static gchar *progress_trust = "#00FF00";
#define MODKEY GDK_CONTROL_MASK
static Key keys[] = {
/* modifier keyval function arg Foc…
- { MODKEY|GDK_SHIFT_MASK,GDK_r, reload, { .b = TRUE }, ALWAYS },
- { MODKEY, GDK_r, reload, { .b = FALSE }, ALWAYS },
- { MODKEY, GDK_g, showurl, { 0 }, ALWAYS },
- { MODKEY, GDK_slash, showsearch, { 0 }, ALWAYS },
- { 0, GDK_Escape, hidesearch, { 0 }, ALWAYS },
- { 0, GDK_Escape, hideurl, { 0 }, ALWAYS },
- { MODKEY|GDK_SHIFT_MASK,GDK_p, print, { 0 }, ALWAYS },
- { MODKEY, GDK_p, clipboard, { .b = TRUE }, BROWSER },
- { MODKEY, GDK_y, clipboard, { .b = FALSE }, BROWSER },
- { MODKEY|GDK_SHIFT_MASK,GDK_j, zoom, { .i = -1 }, BROWSER },
- { MODKEY|GDK_SHIFT_MASK,GDK_k, zoom, { .i = +1 }, BROWSER },
- { MODKEY|GDK_SHIFT_MASK,GDK_i, zoom, { .i = 0 }, BROWSER },
- { MODKEY, GDK_l, navigate, { .i = +1 }, BROWSER },
- { MODKEY, GDK_h, navigate, { .i = -1 }, BROWSER },
- { MODKEY, GDK_j, scroll, { .i = +1 }, BROWSER },
- { MODKEY, GDK_k, scroll, { .i = -1 }, BROWSER },
- { 0, GDK_Escape, stop, { 0 }, BROWSER },
- { MODKEY, GDK_o, source, { 0 }, BROWSER },
- { MODKEY, GDK_n, searchtext, { .b = TRUE }, BROWSER|SE…
- { MODKEY|GDK_SHIFT_MASK,GDK_n, searchtext, { .b = FALSE }, BROWSER|SE…
- { 0, GDK_Return, searchtext, { .b = TRUE }, SEARCHBAR …
- { GDK_SHIFT_MASK, GDK_Return, searchtext, { .b = FALSE }, SEARCHBAR …
- { 0, GDK_Return, loaduri, { .v = NULL }, URLBAR },
- { 0, GDK_Return, hideurl, { 0 }, URLBAR },
+ { MODKEY|GDK_SHIFT_MASK,GDK_r, reload, { .b = TRUE }, Any },
+ { MODKEY, GDK_r, reload, { .b = FALSE }, Any },
+ { MODKEY, GDK_g, showurl, { 0 }, Any },
+ { MODKEY, GDK_slash, showsearch, { 0 }, Any },
+ { 0, GDK_Escape, hidesearch, { 0 }, Any },
+ { 0, GDK_Escape, hideurl, { 0 }, Any },
+ { MODKEY|GDK_SHIFT_MASK,GDK_p, print, { 0 }, Any },
+ { MODKEY, GDK_p, clipboard, { .b = TRUE }, Browser },
+ { MODKEY, GDK_y, clipboard, { .b = FALSE }, Browser },
+ { MODKEY|GDK_SHIFT_MASK,GDK_j, zoom, { .i = -1 }, Browser },
+ { MODKEY|GDK_SHIFT_MASK,GDK_k, zoom, { .i = +1 }, Browser },
+ { MODKEY|GDK_SHIFT_MASK,GDK_i, zoom, { .i = 0 }, Browser },
+ { MODKEY, GDK_l, navigate, { .i = +1 }, Browser },
+ { MODKEY, GDK_h, navigate, { .i = -1 }, Browser },
+ { MODKEY, GDK_j, scroll, { .i = +1 }, Browser },
+ { MODKEY, GDK_k, scroll, { .i = -1 }, Browser },
+ { 0, GDK_Escape, stop, { 0 }, Browser },
+ { MODKEY, GDK_o, source, { 0 }, Browser },
+ { MODKEY, GDK_n, searchtext, { .b = TRUE }, Browser|Se…
+ { MODKEY|GDK_SHIFT_MASK,GDK_n, searchtext, { .b = FALSE }, Browser|Se…
+ { 0, GDK_Return, searchtext, { .b = TRUE }, SearchBar …
+ { GDK_SHIFT_MASK, GDK_Return, searchtext, { .b = FALSE }, SearchBar …
+ { 0, GDK_Return, loaduri, { .v = NULL }, UrlBar },
+ { 0, GDK_Return, hideurl, { 0 }, UrlBar },
};
diff --git a/surf.c b/surf.c
t@@ -10,7 +10,6 @@
#include <gdk/gdkkeysyms.h>
#include <string.h>
#include <unistd.h>
-#include <getopt.h>
#include <stdlib.h>
#include <stdio.h>
#include <webkit/webkit.h>
t@@ -25,7 +24,7 @@ union Arg {
const gboolean b;
const gint i;
const void *v;
-} ;
+};
typedef struct Client {
GtkWidget *win, *scroll, *vbox, *urlbar, *searchbar, *indicator;
t@@ -45,10 +44,10 @@ typedef struct Cookie {
} Cookie;
typedef enum {
- BROWSER = 0x0001,
- SEARCHBAR = 0x0010,
- URLBAR = 0x0100,
- ALWAYS = ~0,
+ Browser = 0x0001,
+ SearchBar = 0x0010,
+ UrlBar = 0x0100,
+ Any = ~0,
} KeyFocus;
typedef struct {
t@@ -69,8 +68,6 @@ static GdkNativeWindow embed = 0;
static gboolean showxid = FALSE;
static gboolean ignore_once = FALSE;
static gchar *workdir;
-extern char *optarg;
-extern gint optind;
static void cleanup(void);
static void clipboard(Client *c, const Arg *arg);
t@@ -104,8 +101,7 @@ static void reload(Client *c, const Arg *arg);
static void rereadcookies(void);
static void setcookie(char *name, char *val, char *dom, char *path, long exp);
static void setup(void);
-static void titlechange(WebKitWebView* view, WebKitWebFrame* frame,
- const gchar* title, Client *c);
+static void titlechange(WebKitWebView* view, WebKitWebFrame* frame, const gcha…
static void scroll(Client *c, const Arg *arg);
static void searchtext(Client *c, const Arg *arg);
static void source(Client *c, const Arg *arg);
t@@ -277,11 +273,11 @@ keypress(GtkWidget* w, GdkEventKey *ev, Client *c) {
if(ev->type != GDK_KEY_PRESS)
return FALSE;
if(GTK_WIDGET_HAS_FOCUS(c->searchbar))
- focus = SEARCHBAR;
+ focus = SearchBar;
else if(GTK_WIDGET_HAS_FOCUS(c->urlbar))
- focus = URLBAR;
+ focus = UrlBar;
else
- focus = BROWSER;
+ focus = Browser;
for(i = 0; i < LENGTH(keys); i++) {
if(focus & keys[i].focus
&& gdk_keyval_to_lower(ev->keyval) == keys[i].…
t@@ -585,6 +581,10 @@ setup(void) {
SoupSession *s;
FILE *tmp;
+ gtk_init(NULL, NULL);
+ if (!g_thread_supported())
+ g_thread_init(NULL);
+
dpy = GDK_DISPLAY();
session = webkit_get_default_session();
urlprop = XInternAtom(dpy, "_SURF_URL", False);
t@@ -719,45 +719,35 @@ zoom(Client *c, const Arg *arg) {
}
int main(int argc, char *argv[]) {
- Client *c;
- gint o, a;
+ int i;
Arg arg;
+ Client *c;
- gtk_init(NULL, NULL);
- if (!g_thread_supported())
- g_thread_init(NULL);
- while((o = getopt(argc, argv, "vhxe:")) != -1)
- switch(o) {
- case 'x':
+ /* command line args */
+ for(i = 1, arg.v = NULL; i < argc; i++) {
+ if(!strcmp(argv[i], "-x"))
showxid = TRUE;
- break;
- case 'e':
- if(!(a = atoi(optarg)))
+ else if(!strcmp(argv[i], "-e")) {
+ if(++i < argc)
+ embed = atoi(argv[i]);
+ else
usage();
- embed = a;
- break;
- case 'v':
+ }
+ else if(!strcmp(argv[i], "-v"))
die("surf-"VERSION", © 2009 surf engineers, see LICEN…
- break;
- default:
+ else if(argv[i][0] == '-')
usage();
- }
+ else
+ arg.v = argv[i];
+ }
setup();
- if(optind + 1 == argc) {
- c = newclient();
- arg.v = argv[optind];
- if(strchr("./", argv[optind][0]) || strcmp("-", argv[optind]) …
- loadfile(c, argv[optind]);
+ c = newclient();
+ if(arg.v) {
+ if(strchr("./", ((char *)arg.v)[0]) || strcmp("-", (char *)arg…
+ loadfile(c, (char *)arg.v);
else
loaduri(c, &arg);
-
}
- else if(optind != argc)
- usage();
- if(!clients)
- newclient();
-
-
gtk_main();
cleanup();
return EXIT_SUCCESS;
You are viewing proxied material from mx1.adamsgaard.dk. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.