* registrar: doesnt match open windows when new file created and is then opened for edit or line number
* registrar: group by hostname or group env var in registrar
* tide: gap buffer does not handle UTF-8 currently
-* tide: highlight current line if jumped to line is 0
-* tide: jumping to line should call XMapRaised
+* registrar: should cleanup invalid windows
## BACKLOG
break;
} else {
puts("window still valid, raising");
+ XEvent ev = {0};
+ ev.xclient.type = ClientMessage;
+ ev.xclient.send_event = True;
+ ev.xclient.message_type = XInternAtom(x->display, "_NET_ACTIVE_WINDOW", False);
+ ev.xclient.window = win->win;
+ ev.xclient.format = 32;
+ XSendEvent(x->display, x->root, False, SubstructureRedirectMask|SubstructureNotifyMask, &ev);
+ XMapRaised(x->display, win->win);
win_send(x, x->self, win->win, 0, "GOTO", strtoul(addr, NULL, 0));
win_send(x, x->self, winid, 0, "DONE", 0);
- XMapRaised(x->display, win->win);
- XSetInputFocus(x->display, win->win, RevertToNone, CurrentTime);
- XWMHints *hints = XGetWMHints(x->display, win->win);
- if (hints) {
- hints->flags |= XUrgencyHint;
- XSetWMHints(x->display, win->win, hints);
- XFree(hints);
- }
XSync(x->display, False);
free(type);
return;