Explorar o código

move event configuration in xinit().

Aurélien Aptel %!s(int64=14) %!d(string=hai) anos
pai
achega
f211bc2eed
Modificáronse 1 ficheiros con 8 adicións e 10 borrados
  1. 8 10
      st.c

+ 8 - 10
st.c

@@ -210,8 +210,6 @@ static int cmdfd;
 static pid_t pid;
 static Selection sel;
 
-/* TODO: use X11 clipboard */
-
 static inline int selected(int x, int y) {
 	if ((sel.ey==y && sel.by==y)) {
 		int bx = MIN(sel.bx, sel.ex);
@@ -262,6 +260,7 @@ static char *getseltext() {
 	return str;
 }
 
+/* TODO: use X11 clipboard */
 static void clipboard_copy(char *str) {
 	free(sel.clip);
 	sel.clip = str;
@@ -272,7 +271,7 @@ static void clipboard_paste() {
 		ttywrite(sel.clip, strlen(sel.clip));
 }
 
-// TODO: doubleclick to select word
+/* TODO: doubleclick to select word */
 static void brelease(XEvent *e) {
 	int b;
 	sel.mode = 0;
@@ -1214,9 +1213,14 @@ xinit(void) {
 	xw.bufw = xw.w - 2*BORDER;
 	xw.bufh = xw.h - 2*BORDER;
 	xw.buf = XCreatePixmap(xw.dis, xw.win, xw.bufw, xw.bufh, XDefaultDepth(xw.dis, xw.scr));
-	xw.hasfocus = 1;
 	/* gc */
 	dc.gc = XCreateGC(xw.dis, xw.win, 0, NULL);
+	
+	/* event mask */
+	XSelectInput(xw.dis, xw.win, ExposureMask | KeyPressMask
+		| StructureNotifyMask | FocusChangeMask | PointerMotionMask
+		| ButtonPressMask | ButtonReleaseMask);
+	
 	XMapWindow(xw.dis, xw.win);
 	xhints();
 	XStoreName(xw.dis, xw.win, "st");
@@ -1435,12 +1439,6 @@ run(void) {
 	XEvent ev;
 	fd_set rfd;
 	int xfd = XConnectionNumber(xw.dis);
-	long mask = ExposureMask | KeyPressMask | StructureNotifyMask
-		| FocusChangeMask | PointerMotionMask | ButtonPressMask 
-		| ButtonReleaseMask;
-
-	XSelectInput(xw.dis, xw.win, mask);
-	XResizeWindow(xw.dis, xw.win, xw.w, xw.h); /* XXX: fix resize bug in wmii (?) */
 
 	for(;;) {
 		FD_ZERO(&rfd);