diff --git a/config.def.h b/config.def.h index 65837bf..1e102fe 100644 --- a/config.def.h +++ b/config.def.h @@ -14,10 +14,10 @@ static const char *DEFAULT_MARK_COLOR = NULL; /* NULL means it will default to static const char *DEFAULT_BAR_BG = NULL; /* NULL means it will default to window background */ static const char *DEFAULT_BAR_FG = NULL; /* NULL means it will default to window foreground */ static const char *DEFAULT_FONT = "monospace-8"; -#endif /* if true, statusbar appears on top of the window */ static const bool TOP_STATUSBAR = false; +#endif /* HAVE_LIBFONTS */ #endif #ifdef _IMAGE_CONFIG diff --git a/main.c b/main.c index dc071ef..f485d39 100644 --- a/main.c +++ b/main.c @@ -233,7 +233,7 @@ static bool check_timeouts(struct timeval *t) return tmin > 0; } -size_t get_win_title(char *buf, int len) +size_t get_win_title(unsigned char *buf, int len) { char *argv[8]; spawn_t pfd; diff --git a/nsxiv.h b/nsxiv.h index afa657f..a60f028 100644 --- a/nsxiv.h +++ b/nsxiv.h @@ -380,6 +380,7 @@ enum { ATOM__NET_WM_STATE, ATOM__NET_WM_PID, ATOM__NET_WM_STATE_FULLSCREEN, + ATOM_UTF8_STRING, ATOM_COUNT }; diff --git a/window.c b/window.c index 7d82975..9bfc2ec 100644 --- a/window.c +++ b/window.c @@ -30,7 +30,7 @@ #include #include -extern size_t get_win_title(char *, int); +extern size_t get_win_title(unsigned char *, int); #if HAVE_LIBFONTS #include "utf8.h" @@ -170,6 +170,7 @@ void win_init(win_t *win) INIT_ATOM_(_NET_WM_STATE); INIT_ATOM_(_NET_WM_PID); INIT_ATOM_(_NET_WM_STATE_FULLSCREEN); + INIT_ATOM_(UTF8_STRING); } void win_open(win_t *win) @@ -504,18 +505,16 @@ void win_draw_rect(win_t *win, int x, int y, int w, int h, bool fill, int lw, void win_set_title(win_t *win) { - char title[512]; + unsigned char title[512]; size_t len; if ((len = get_win_title(title, ARRLEN(title))) <= 0) return; XChangeProperty(win->env.dpy, win->xwin, atoms[ATOM__NET_WM_NAME], - XInternAtom(win->env.dpy, "UTF8_STRING", False), 8, - PropModeReplace, (unsigned char *) title, len); + atoms[ATOM_UTF8_STRING], 8, PropModeReplace, title, len); XChangeProperty(win->env.dpy, win->xwin, atoms[ATOM__NET_WM_ICON_NAME], - XInternAtom(win->env.dpy, "UTF8_STRING", False), 8, - PropModeReplace, (unsigned char *) title, len); + atoms[ATOM_UTF8_STRING], 8, PropModeReplace, title, len); } void win_set_cursor(win_t *win, cursor_t cursor)