X-Git-Url: https://git.xinqibao.xyz/st.git/blobdiff_plain/7263820759aa914b27ab3097613bdf22432ed736..53474391bcf2122921d27356a70e6da3c78d058e:/st.c

diff --git a/st.c b/st.c
index fda7044..8f1b8d8 100644
--- a/st.c
+++ b/st.c
@@ -180,8 +180,8 @@ typedef unsigned short ushort;
 typedef struct {
 	char c[UTF_SIZ]; /* character code */
 	ushort mode;      /* attribute flags */
-	ulong fg;        /* foreground  */
-	ulong bg;        /* background  */
+	uint32_t fg;      /* foreground  */
+	uint32_t bg;      /* background  */
 } Glyph;
 
 typedef Glyph *Line;
@@ -239,7 +239,7 @@ typedef struct {
 	Colourmap cmap;
 	Window win;
 	Drawable buf;
-	Atom xembed, wmdeletewin;
+	Atom xembed, wmdeletewin, netwmname;
 	XIM xim;
 	XIC xic;
 	Draw draw;
@@ -379,7 +379,7 @@ static void tsetdirtattr(int);
 static void tsetmode(bool, bool, int *, int);
 static void tfulldirt(void);
 static void techo(char *, int);
-static long 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,9 +1666,9 @@ tdeleteline(int n) {
 	tscrollup(term.c.y, n);
 }
 
-long
+int32_t
 tdefcolor(int *attr, int *npar, int l) {
-	long idx = -1;
+	int32_t idx = -1;
 	uint r, g, b;
 
 	switch (attr[*npar + 1]) {
@@ -1717,7 +1717,7 @@ tdefcolor(int *attr, int *npar, int l) {
 void
 tsetattr(int *attr, int l) {
 	int i;
-	long idx;
+	int32_t idx;
 
 	for(i = 0; i < l; i++) {
 		switch(attr[i]) {
@@ -3023,6 +3023,7 @@ xinit(void) {
 
 	xw.xembed = XInternAtom(xw.dpy, "_XEMBED", False);
 	xw.wmdeletewin = XInternAtom(xw.dpy, "WM_DELETE_WINDOW", False);
+	xw.netwmname = XInternAtom(xw.dpy, "_NET_WM_NAME", False);
 	XSetWMProtocols(xw.dpy, xw.win, &xw.wmdeletewin, 1);
 
 	xresettitle();
@@ -3355,6 +3356,7 @@ xsettitle(char *p) {
 	Xutf8TextListToTextProperty(xw.dpy, &p, 1, XUTF8StringStyle,
 			&prop);
 	XSetWMName(xw.dpy, xw.win, &prop);
+	XSetTextProperty(xw.dpy, xw.win, &prop, xw.netwmname);
 	XFree(prop.value);
 }