From 41200e99e2cf274538d8533ee449dfa610932e07 Mon Sep 17 00:00:00 2001 From: okan Date: Fri, 12 Apr 2013 14:46:30 +0000 Subject: push Screenq into screen_init --- calmwm.c | 10 +++------- calmwm.h | 4 ++-- screen.c | 9 +++++++-- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/calmwm.c b/calmwm.c index 8452f46..e0c8558 100644 --- a/calmwm.c +++ b/calmwm.c @@ -15,7 +15,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $OpenBSD: calmwm.c,v 1.72 2012/12/18 00:14:41 okan Exp $ + * $OpenBSD: calmwm.c,v 1.73 2013/04/12 14:46:30 okan Exp $ */ #include @@ -146,7 +146,6 @@ dpy_init(const char *dpyname) static void x_setup(void) { - struct screen_ctx *sc; struct keybinding *kb; int i; @@ -156,11 +155,8 @@ x_setup(void) Cursor_question = XCreateFontCursor(X_Dpy, XC_question_arrow); Cursor_resize = XCreateFontCursor(X_Dpy, XC_bottom_right_corner); - for (i = 0; i < ScreenCount(X_Dpy); i++) { - sc = xcalloc(1, sizeof(*sc)); - screen_init(sc, i); - TAILQ_INSERT_TAIL(&Screenq, sc, entry); - } + for (i = 0; i < ScreenCount(X_Dpy); i++) + screen_init(i); /* * XXX key grabs weren't done before, since Screenq was empty, diff --git a/calmwm.h b/calmwm.h index 5cf13a9..3f3feed 100644 --- a/calmwm.h +++ b/calmwm.h @@ -15,7 +15,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $OpenBSD: calmwm.h,v 1.186 2013/01/08 15:16:04 okan Exp $ + * $OpenBSD: calmwm.h,v 1.187 2013/04/12 14:46:30 okan Exp $ */ #ifndef _CALMWM_H_ @@ -375,7 +375,7 @@ void search_print_client(struct menu *, int); struct geom screen_find_xinerama(struct screen_ctx *, int, int); struct screen_ctx *screen_fromroot(Window); -void screen_init(struct screen_ctx *, u_int); +void screen_init(u_int); void screen_update_geometry(struct screen_ctx *); void screen_updatestackingorder(struct screen_ctx *); diff --git a/screen.c b/screen.c index e7ed769..601d60e 100644 --- a/screen.c +++ b/screen.c @@ -15,7 +15,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $OpenBSD: screen.c,v 1.45 2013/01/08 04:12:51 okan Exp $ + * $OpenBSD: screen.c,v 1.46 2013/04/12 14:46:30 okan Exp $ */ #include @@ -31,13 +31,16 @@ #include "calmwm.h" void -screen_init(struct screen_ctx *sc, u_int which) +screen_init(u_int which) { + struct screen_ctx *sc; Window *wins, w0, w1; XWindowAttributes winattr; XSetWindowAttributes rootattr; u_int nwins, i; + sc = xcalloc(1, sizeof(*sc)); + sc->which = which; sc->visual = DefaultVisual(X_Dpy, sc->which); sc->colormap = DefaultColormap(X_Dpy, sc->which); @@ -84,6 +87,8 @@ screen_init(struct screen_ctx *sc, u_int which) if (HasRandr) XRRSelectInput(X_Dpy, sc->rootwin, RRScreenChangeNotifyMask); + TAILQ_INSERT_TAIL(&Screenq, sc, entry); + XSync(X_Dpy, False); } -- cgit v1.2.3-2-gb3c3