diff options
-rw-r--r-- | src/globals.c | 2 | ||||
-rw-r--r-- | src/globals.h | 2 | ||||
-rw-r--r-- | src/main.c | 2 | ||||
-rw-r--r-- | src/screen.c | 6 |
4 files changed, 12 insertions, 0 deletions
diff --git a/src/globals.c b/src/globals.c index 5f21148..9638996 100644 --- a/src/globals.c +++ b/src/globals.c @@ -52,6 +52,8 @@ Atom _net_wm_pid; Atom _net_supported; Atom _net_wm_window_type; Atom _net_wm_window_type_dialog; +Atom _net_wm_name; +Atom utf8_string; int rp_current_screen; rp_screen *screens; diff --git a/src/globals.h b/src/globals.h index c56bbca..881d3e4 100644 --- a/src/globals.h +++ b/src/globals.h @@ -119,6 +119,8 @@ extern Atom _net_wm_pid; extern Atom _net_supported; extern Atom _net_wm_window_type; extern Atom _net_wm_window_type_dialog; +extern Atom _net_wm_name; +extern Atom utf8_string; /* mouse properties */ extern int rat_x; @@ -691,6 +691,8 @@ main (int argc, char *argv[]) PRINT_DEBUG (("_NET_SUPPORTED = %ld\n", _net_supported)); _net_wm_window_type = XInternAtom(dpy, "_NET_WM_WINDOW_TYPE", False); _net_wm_window_type_dialog = XInternAtom(dpy, "_NET_WM_WINDOW_TYPE_DIALOG", False); + _net_wm_name = XInternAtom(dpy, "_NET_WM_NAME", False); + utf8_string = XInternAtom(dpy, "UTF8_STRING", False); /* Setup signal handlers. */ XSetErrorHandler(handler); diff --git a/src/screen.c b/src/screen.c index d978570..702f10a 100644 --- a/src/screen.c +++ b/src/screen.c @@ -374,6 +374,10 @@ activate_screen (rp_screen *s) _net_supported, XA_ATOM, 32, PropModeReplace, (unsigned char*)&_net_wm_pid, 1); + /* set window manager name */ + XChangeProperty (dpy, RootWindow (dpy, s->screen_num), + _net_wm_name, utf8_string, 8, PropModeReplace, + (unsigned char*)"ratpoison", 9); XMapWindow (dpy, s->key_window); } @@ -386,6 +390,8 @@ deactivate_screen (rp_screen *s) /* delete everything so noone sees them while we are not there */ XDeleteProperty (dpy, RootWindow (dpy, s->screen_num), _net_supported); + XDeleteProperty (dpy, RootWindow (dpy, s->screen_num), + _net_wm_name); } static int |