File: map-all.scm

package info (click to toggle)
elk 3.0-6
  • links: PTS
  • area: main
  • in suites: potato, slink
  • size: 4,068 kB
  • ctags: 3,123
  • sloc: ansic: 20,686; lisp: 5,232; makefile: 419; awk: 91; sh: 21
file content (18 lines) | stat: -rw-r--r-- 354 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
;;; -*-Scheme-*-
;;;
;;; Map all windows.

(require 'xlib)

(define (foreach-window root fun)
  (let ((l (vector->list (car (query-tree root)))))
    (for-each
      (lambda (w)
	(fun w)
	(foreach-window w fun))
      l)))

(let ((dpy (open-display)))
  (unwind-protect
    (foreach-window (display-root-window dpy) map-window)
    (close-display dpy)))