Alopex

Check-in [060cfdcee6]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:keep transient windows above parents
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk | master
Files: files | file ages | folders
SHA3-256:060cfdcee6283229d8776dfa4a200c08802a18f9a721e08c9c1b01d43b6efa44
User & Date: jesse@mccluresk9.com 2014-03-15 21:53:34
Context
2014-03-15
22:00
fixed transient window raising check-in: 9f02dca3af user: jesse@mccluresk9.com tags: trunk, master
21:53
keep transient windows above parents check-in: 060cfdcee6 user: jesse@mccluresk9.com tags: trunk, master
2014-03-08
04:37
todo check-in: 36165cd982 user: jesse@mccluresk9.com tags: trunk, master
Changes

Changes to src/xlib.c.

241
242
243
244
245
246
247





248
249
250
251
252
253
254
...
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
		XConfigureWindow(dpy, c->win, CWSibling | CWStackMode, &wc);
		for (cc = clients; cc; cc = cc->next) {
			if (cc->tags & m->tags && (cc->flags & WIN_FLOAT)) {
				wc.sibling = cc->win;
				XConfigureWindow(dpy, c->win, CWSibling | CWStackMode, &wc);
			}
		}





	}
	else {
		XWindowChanges wc;
		wc.sibling = m->container->win;
		wc.stack_mode = Below;
		XConfigureWindow(dpy, c->win, CWSibling | CWStackMode, &wc);
	}
................................................................................
	get_icon(c);
	get_name(c);
	apply_rules(c);
	if (!c->tags && !(c->tags=m->tags)) {
		Monitor *M;
		int i, tags = 0;
		for (M = mons; M; M = M->next) tags |= M->tags;
fprintf(stderr,"ADD TAG tags=%X\n",tags);
		for (i = 0; ((1<<i) & tags) && i < 9; i++)
fprintf(stderr," -- %d\n",i);
		c->tags = m->tags = (1<<i);
	}
	if (XGetTransientForHint(dpy, c->win, &c->parent))
		c->flags |= WIN_TRANS;
	else
		c->parent = e->parent;
	c->x = wa.x; c->y = wa.y; c->w = wa.width; c->h = wa.height;







>
>
>
>
>







 







|
|
|







241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
...
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
		XConfigureWindow(dpy, c->win, CWSibling | CWStackMode, &wc);
		for (cc = clients; cc; cc = cc->next) {
			if (cc->tags & m->tags && (cc->flags & WIN_FLOAT)) {
				wc.sibling = cc->win;
				XConfigureWindow(dpy, c->win, CWSibling | CWStackMode, &wc);
			}
		}
		wc.sibling = cc->win;
		for (cc = clients; cc; cc = cc->next) {
			if (cc->parent == c->win)
				XConfigureWindow(dpy, cc->win, CWSibling | CWStackMode, &wc);
		}
	}
	else {
		XWindowChanges wc;
		wc.sibling = m->container->win;
		wc.stack_mode = Below;
		XConfigureWindow(dpy, c->win, CWSibling | CWStackMode, &wc);
	}
................................................................................
	get_icon(c);
	get_name(c);
	apply_rules(c);
	if (!c->tags && !(c->tags=m->tags)) {
		Monitor *M;
		int i, tags = 0;
		for (M = mons; M; M = M->next) tags |= M->tags;
//fprintf(stderr,"ADD TAG tags=%X\n",tags);
		for (i = 0; ((1<<i) & tags) && i < 9; i++);
//fprintf(stderr," -- %d\n",i);
		c->tags = m->tags = (1<<i);
	}
	if (XGetTransientForHint(dpy, c->win, &c->parent))
		c->flags |= WIN_TRANS;
	else
		c->parent = e->parent;
	c->x = wa.x; c->y = wa.y; c->w = wa.width; c->h = wa.height;