X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=st.c;h=f883ac15bf47fa0c8024a6381ac912c70d715674;hb=ef1dc9fc4bdfcd944b054c329bb5d51b8c52eb5c;hp=fb084b10de1247dfdaca3d0c6c342460fe0c77c1;hpb=1fe0a5f39a8755da4cd16e92f2ea00676d9ee3ca;p=st.git diff --git a/st.c b/st.c index fb084b1..f883ac1 100644 --- a/st.c +++ b/st.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -239,7 +240,7 @@ typedef struct { Colourmap cmap; Window win; Drawable buf; - Atom xembed, wmdeletewin, netwmname; + Atom xembed, wmdeletewin, netwmname, netwmpid; XIM xim; XIC xic; Draw draw; @@ -379,7 +380,7 @@ static void tsetdirtattr(int); static void tsetmode(bool, bool, int *, int); static void tfulldirt(void); static void techo(char *, int); -static uint32_t tdefcolor(int *, int *, int); +static int32_t tdefcolor(int *, int *, int); static void tselcs(void); static void tdeftran(char); static inline bool match(uint, uint); @@ -1666,7 +1667,7 @@ tdeleteline(int n) { tscrollup(term.c.y, n); } -uint32_t +int32_t tdefcolor(int *attr, int *npar, int l) { int32_t idx = -1; uint r, g, b; @@ -2932,6 +2933,7 @@ xinit(void) { Cursor cursor; Window parent; int sw, sh; + pid_t thispid = getpid(); if(!(xw.dpy = XOpenDisplay(NULL))) die("Can't open display\n"); @@ -3026,6 +3028,10 @@ xinit(void) { xw.netwmname = XInternAtom(xw.dpy, "_NET_WM_NAME", False); XSetWMProtocols(xw.dpy, xw.win, &xw.wmdeletewin, 1); + xw.netwmpid = XInternAtom(xw.dpy, "_NET_WM_PID", False); + XChangeProperty(xw.dpy, xw.win, xw.netwmpid, XA_CARDINAL, 32, + PropModeReplace, (unsigned char *)&thispid, 1); + xresettitle(); XMapWindow(xw.dpy, xw.win); xhints();