fixing _SURF_URL XProperty.

This commit is contained in:
Enno Boland (Gottox) 2009-06-08 22:55:48 +02:00
parent ccb449f42e
commit b9b055348d
1 changed files with 11 additions and 7 deletions

18
surf.c
View File

@ -272,8 +272,8 @@ loadcommit(WebKitWebView *view, WebKitWebFrame *f, gpointer d) {
Client *c = (Client *)d;
gchar *uri;
uri = geturi(c);
ignore_once = TRUE;
uri = geturi(c);
XChangeProperty(dpy, GDK_WINDOW_XID(GTK_WIDGET(c->win)->window), urlprop,
XA_STRING, 8, PropModeReplace, (unsigned char *)uri,
strlen(uri) + 1);
@ -425,12 +425,16 @@ processx(GdkXEvent *e, GdkEvent *event, gpointer d) {
unsigned char *buf = NULL;
if(((XEvent *)e)->type == PropertyNotify) {
ev = &((XEvent *)e)->xproperty;
if(ignore_once == FALSE && ev->atom == urlprop && ev->state == PropertyNewValue) {
XGetWindowProperty(dpy, ev->window, urlprop, 0L, BUFSIZ, False, XA_STRING,
&adummy, &idummy, &ldummy, &ldummy, &buf);
loaduri(c, (gchar *)buf);
XFree(buf);
return GDK_FILTER_REMOVE;
if(ev->atom == urlprop && ev->state == PropertyNewValue) {
if(ignore_once)
ignore_once = FALSE;
else {
XGetWindowProperty(dpy, ev->window, urlprop, 0L, BUFSIZ, False, XA_STRING,
&adummy, &idummy, &ldummy, &ldummy, &buf);
loaduri(c, (gchar *)buf);
XFree(buf);
return GDK_FILTER_REMOVE;
}
}
}
return GDK_FILTER_CONTINUE;