diff options
-rw-r--r-- | conf.c | 3 | ||||
-rw-r--r-- | menu.c | 6 |
2 files changed, 7 insertions, 2 deletions
@@ -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: conf.c,v 1.94 2011/09/03 09:25:39 okan Exp $ + * $OpenBSD: conf.c,v 1.95 2011/09/08 12:00:49 okan Exp $ */ #include <sys/param.h> @@ -100,6 +100,7 @@ conf_reload(struct conf *c) conf_gap(c, sc); conf_color(c, sc); conf_font(c, sc); + menu_init(sc); } TAILQ_FOREACH(cc, &Clientq, entry) client_draw_border(cc); @@ -16,7 +16,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $OpenBSD: menu.c,v 1.32 2011/07/25 15:41:05 okan Exp $ + * $OpenBSD: menu.c,v 1.33 2011/09/08 12:00:50 okan Exp $ */ #include <sys/param.h> @@ -76,6 +76,8 @@ menu_init(struct screen_ctx *sc) { XGCValues gv; + if (sc->menuwin) + XDestroyWindow(X_Dpy, sc->menuwin); sc->menuwin = XCreateSimpleWindow(X_Dpy, sc->rootwin, 0, 0, 1, 1, Conf.bwidth, sc->color[CWM_COLOR_FG_MENU].pixel, @@ -86,6 +88,8 @@ menu_init(struct screen_ctx *sc) gv.background = sc->color[CWM_COLOR_BG_MENU].pixel; gv.function = GXxor; + if (sc->gc) + XFreeGC(X_Dpy, sc->gc); sc->gc = XCreateGC(X_Dpy, sc->menuwin, GCForeground|GCBackground|GCFunction, &gv); } |