Browse Source

Dbe is not required anymore.

master
Christoph Lohmann 12 years ago
parent
commit
0e232a4115
1 changed files with 15 additions and 7 deletions
  1. +15
    -7
      st.c

+ 15
- 7
st.c View File

@ -203,7 +203,7 @@ typedef struct {
Display *dpy; Display *dpy;
Colourmap cmap; Colourmap cmap;
Window win; Window win;
XdbeBackBuffer buf;
Drawable buf;
Atom xembed, wmdeletewin; Atom xembed, wmdeletewin;
XIM xim; XIM xim;
XIC xic; XIC xic;
@ -414,6 +414,8 @@ static char *opt_embed = NULL;
static char *opt_class = NULL; static char *opt_class = NULL;
static char *opt_font = NULL; static char *opt_font = NULL;
bool usedbe = False;
static char *usedfont = NULL; static char *usedfont = NULL;
static int usedfontsize = 0; static int usedfontsize = 0;
@ -2500,7 +2502,8 @@ xinit(void) {
| ButtonMotionMask | ButtonPressMask | ButtonReleaseMask; | ButtonMotionMask | ButtonPressMask | ButtonReleaseMask;
attrs.colormap = xw.cmap; attrs.colormap = xw.cmap;
parent = opt_embed ? strtol(opt_embed, NULL, 0) : XRootWindow(xw.dpy, xw.scr);
parent = opt_embed ? strtol(opt_embed, NULL, 0) : \
XRootWindow(xw.dpy, xw.scr);
xw.win = XCreateWindow(xw.dpy, parent, xw.fx, xw.fy, xw.win = XCreateWindow(xw.dpy, parent, xw.fx, xw.fy,
xw.w, xw.h, 0, XDefaultDepth(xw.dpy, xw.scr), InputOutput, xw.w, xw.h, 0, XDefaultDepth(xw.dpy, xw.scr), InputOutput,
xw.vis, xw.vis,
@ -2509,12 +2512,16 @@ xinit(void) {
&attrs); &attrs);
/* double buffering */ /* double buffering */
if(!XdbeQueryExtension(xw.dpy, &major, &minor))
die("Xdbe extension is not present\n");
xw.buf = XdbeAllocateBackBufferName(xw.dpy, xw.win, XdbeBackground);
if(XdbeQueryExtension(xw.dpy, &major, &minor)) {
xw.buf = XdbeAllocateBackBufferName(xw.dpy, xw.win,
XdbeBackground);
usedbe = True;
} else {
xw.buf = xw.win;
}
/* Xft rendering context */ /* Xft rendering context */
xw.draw = XftDrawCreate(xw.dpy, xw.buf, xw.vis, xw.cmap);
xw.draw = XftDrawCreate(xw.dpy, xw.win, xw.vis, xw.cmap);
/* input methods */ /* input methods */
if((xw.xim = XOpenIM(xw.dpy, NULL, NULL, NULL)) == NULL) { if((xw.xim = XOpenIM(xw.dpy, NULL, NULL, NULL)) == NULL) {
@ -2822,7 +2829,8 @@ draw(void) {
XdbeSwapInfo swpinfo[1] = {{xw.win, XdbeCopied}}; XdbeSwapInfo swpinfo[1] = {{xw.win, XdbeCopied}};
drawregion(0, 0, term.col, term.row); drawregion(0, 0, term.col, term.row);
XdbeSwapBuffers(xw.dpy, swpinfo, 1);
if(usedbe)
XdbeSwapBuffers(xw.dpy, swpinfo, 1);
} }
void void


Loading…
Cancel
Save