tabbed

Customized build of tabbed, the suckless tab manager
git clone git://src.adamsgaard.dk/tabbed
Log | Files | Refs | Submodules | README

commit fde8f1f1a5e90d327d92e49b2cef556858b94bf6
parent fac707fd7008eb15a326b2275db2e9ebdb33ebb1
Author: Anders Damsgaard <anders@adamsgaard.dk>
Date:   Mon, 21 Jan 2019 12:04:39 +0100

Delete st patch

Diffstat:
Dst-alpha-0.8.1.diff | 199-------------------------------------------------------------------------------
1 file changed, 0 insertions(+), 199 deletions(-)

diff --git a/st-alpha-0.8.1.diff b/st-alpha-0.8.1.diff @@ -1,199 +0,0 @@ -diff --git a/config.def.h b/config.def.h -index 82b1b09..2c721e8 100644 ---- a/config.def.h -+++ b/config.def.h -@@ -82,6 +82,9 @@ char *termname = "st-256color"; - */ - unsigned int tabspaces = 8; - -+/* bg opacity */ -+unsigned int alpha = 0xcc; -+ - /* Terminal colors (16 first used in escape sequence) */ - static const char *colorname[] = { - /* 8 normal colors */ -@@ -109,6 +112,7 @@ static const char *colorname[] = { - /* more colors can be added after 255 to use with DefaultXX */ - "#cccccc", - "#555555", -+ "black", - }; - - -@@ -117,7 +121,7 @@ static const char *colorname[] = { - * foreground, background, cursor, reverse cursor - */ - unsigned int defaultfg = 7; --unsigned int defaultbg = 0; -+unsigned int defaultbg = 257; - static unsigned int defaultcs = 256; - static unsigned int defaultrcs = 257; - -diff --git a/config.mk b/config.mk -index 039c42c..b1fa717 100644 ---- a/config.mk -+++ b/config.mk -@@ -11,10 +11,10 @@ X11INC = /usr/X11R6/include - X11LIB = /usr/X11R6/lib - - # includes and libs --INCS = -I$(X11INC) \ -+INCS = -I. -I/usr/include -I${X11INC} \ - `pkg-config --cflags fontconfig` \ - `pkg-config --cflags freetype2` --LIBS = -L$(X11LIB) -lm -lrt -lX11 -lutil -lXft \ -+LIBS = -L/usr/lib -lc -L${X11LIB} -lm -lrt -lX11 -lutil -lXft -lXrender\ - `pkg-config --libs fontconfig` \ - `pkg-config --libs freetype2` - -diff --git a/st.h b/st.h -index dac64d8..433c74f 100644 ---- a/st.h -+++ b/st.h -@@ -119,5 +119,6 @@ extern char *worddelimiters; - extern int allowaltscreen; - extern char *termname; - extern unsigned int tabspaces; -+extern unsigned int alpha; - extern unsigned int defaultfg; - extern unsigned int defaultbg; -diff --git a/x.c b/x.c -index c0bd890..0562571 100644 ---- a/x.c -+++ b/x.c -@@ -48,6 +48,10 @@ typedef struct { - #define XK_NO_MOD 0 - #define XK_SWITCH_MOD (1<<13) - -+/* alpha */ -+#define OPAQUE 0Xff -+#define USE_ARGB (alpha != OPAQUE && opt_embed == NULL) -+ - /* function definitions used in config.h */ - static void clipcopy(const Arg *); - static void clippaste(const Arg *); -@@ -98,6 +102,7 @@ typedef struct { - XSetWindowAttributes attrs; - int scr; - int isfixed; /* is fixed geometry? */ -+ int depth; /* bit depth */ - int l, t; /* left and top offset */ - int gm; /* geometry mask */ - } XWindow; -@@ -686,7 +691,7 @@ xresize(int col, int row) - - XFreePixmap(xw.dpy, xw.buf); - xw.buf = XCreatePixmap(xw.dpy, xw.win, win.w, win.h, -- DefaultDepth(xw.dpy, xw.scr)); -+ xw.depth); - XftDrawChange(xw.draw, xw.buf); - xclear(0, 0, win.w, win.h); - -@@ -746,6 +751,13 @@ xloadcols(void) - else - die("could not allocate color %d\n", i); - } -+ -+ /* set alpha value of bg color */ -+ if (USE_ARGB) { -+ dc.col[defaultbg].color.alpha = (0xffff * alpha) / OPAQUE; -+ dc.col[defaultbg].pixel &= 0x00111111; -+ dc.col[defaultbg].pixel |= alpha << 24; -+ } - loaded = 1; - } - -@@ -767,6 +779,17 @@ xsetcolorname(int x, const char *name) - return 0; - } - -+void -+xtermclear(int col1, int row1, int col2, int row2) -+{ -+ XftDrawRect(xw.draw, -+ &dc.col[IS_SET(MODE_REVERSE) ? defaultfg : defaultbg], -+ borderpx + col1 * win.cw, -+ borderpx + row1 * win.ch, -+ (col2-col1+1) * win.cw, -+ (row2-row1+1) * win.ch); -+} -+ - /* - * Absolute coordinates. - */ -@@ -1004,7 +1027,40 @@ xinit(int cols, int rows) - if (!(xw.dpy = XOpenDisplay(NULL))) - die("can't open display\n"); - xw.scr = XDefaultScreen(xw.dpy); -- xw.vis = XDefaultVisual(xw.dpy, xw.scr); -+ xw.depth = (USE_ARGB) ? 32: XDefaultDepth(xw.dpy, xw.scr); -+ if (!USE_ARGB) -+ xw.vis = XDefaultVisual(xw.dpy, xw.scr); -+ else { -+ XVisualInfo *vis; -+ XRenderPictFormat *fmt; -+ int nvi; -+ int i; -+ -+ XVisualInfo tpl = { -+ .screen = xw.scr, -+ .depth = 32, -+ .class = TrueColor -+ }; -+ -+ vis = XGetVisualInfo(xw.dpy, -+ VisualScreenMask | VisualDepthMask | VisualClassMask, -+ &tpl, &nvi); -+ xw.vis = NULL; -+ for (i = 0; i < nvi; i++) { -+ fmt = XRenderFindVisualFormat(xw.dpy, vis[i].visual); -+ if (fmt->type == PictTypeDirect && fmt->direct.alphaMask) { -+ xw.vis = vis[i].visual; -+ break; -+ } -+ } -+ -+ XFree(vis); -+ -+ if (!xw.vis) { -+ fprintf(stderr, "Couldn't find ARGB visual.\n"); -+ exit(1); -+ } -+ } - - /* font */ - if (!FcInit()) -@@ -1014,7 +1070,11 @@ xinit(int cols, int rows) - xloadfonts(usedfont, 0); - - /* colors */ -- xw.cmap = XDefaultColormap(xw.dpy, xw.scr); -+ if (!USE_ARGB) -+ xw.cmap = XDefaultColormap(xw.dpy, xw.scr); -+ else -+ xw.cmap = XCreateColormap(xw.dpy, XRootWindow(xw.dpy, xw.scr), -+ xw.vis, None); - xloadcols(); - - /* adjust fixed window geometry */ -@@ -1037,16 +1097,15 @@ xinit(int cols, int rows) - if (!(opt_embed && (parent = strtol(opt_embed, NULL, 0)))) - parent = XRootWindow(xw.dpy, xw.scr); - xw.win = XCreateWindow(xw.dpy, parent, xw.l, xw.t, -- win.w, win.h, 0, XDefaultDepth(xw.dpy, xw.scr), InputOutput, -+ win.w, win.h, 0, xw.depth, InputOutput, - xw.vis, CWBackPixel | CWBorderPixel | CWBitGravity - | CWEventMask | CWColormap, &xw.attrs); - - memset(&gcvalues, 0, sizeof(gcvalues)); - gcvalues.graphics_exposures = False; -- dc.gc = XCreateGC(xw.dpy, parent, GCGraphicsExposures, -- &gcvalues); -- xw.buf = XCreatePixmap(xw.dpy, xw.win, win.w, win.h, -- DefaultDepth(xw.dpy, xw.scr)); -+ xw.buf = XCreatePixmap(xw.dpy, xw.win, win.w, win.h, xw.depth); -+ dc.gc = XCreateGC(xw.dpy, (USE_ARGB) ? xw.buf: parent, -+ GCGraphicsExposures, &gcvalues); - XSetForeground(xw.dpy, dc.gc, dc.col[defaultbg].pixel); - XFillRectangle(xw.dpy, xw.buf, dc.gc, 0, 0, win.w, win.h); -