scalepreview is now part of selmon so we can change scalepreview on

demand for selmon only
This commit is contained in:
speedie 2023-01-13 16:04:23 +01:00
parent 3bc40cbbae
commit bddbfa000d

View file

@ -313,6 +313,7 @@ struct Monitor {
#endif #endif
#if USETAGPREVIEW #if USETAGPREVIEW
int previewshow; int previewshow;
int scalepreview;
Window tagwin; Window tagwin;
Pixmap *tagmap; Pixmap *tagmap;
#endif #endif
@ -1721,6 +1722,7 @@ createmon(void)
m->mastercount = mastercount; m->mastercount = mastercount;
m->stackcount = stackcount; m->stackcount = stackcount;
m->showbar = !hidebar; m->showbar = !hidebar;
m->scalepreview = scalepreview;
/* bar items */ /* bar items */
m->hidelayout = hidelayout; m->hidelayout = hidelayout;
@ -5725,7 +5727,7 @@ updatebars(void)
XClassHint ch = {"speedwm", "speedwm"}; XClassHint ch = {"speedwm", "speedwm"};
for (m = mons; m; m = m->next) { for (m = mons; m; m = m->next) {
#if USETAGPREVIEW #if USETAGPREVIEW
m->tagwin = XCreateWindow(dpy, root, m->wx + x_pad, bar->by + bh + y_pad + selmon->gapsizeov / 2, m->mw / scalepreview, m->mh / scalepreview, 0, m->tagwin = XCreateWindow(dpy, root, m->wx + x_pad, bar->by + bh + y_pad + selmon->gapsizeov / 2, m->mw / selmon->scalepreview, m->mh / selmon->scalepreview, 0,
depth, CopyFromParent, visual, CWOverrideRedirect|CWBackPixel|CWBorderPixel|CWColormap|CWEventMask, &wa); depth, CopyFromParent, visual, CWOverrideRedirect|CWBackPixel|CWBorderPixel|CWColormap|CWEventMask, &wa);
XDefineCursor(dpy, m->tagwin, cursor[CurNormal]->cursor); XDefineCursor(dpy, m->tagwin, cursor[CurNormal]->cursor);
XUnmapWindow(dpy, m->tagwin); XUnmapWindow(dpy, m->tagwin);
@ -6614,7 +6616,7 @@ showtagpreview(unsigned int i)
XSetWindowBackgroundPixmap(dpy, selmon->tagwin, selmon->tagmap[i]); XSetWindowBackgroundPixmap(dpy, selmon->tagwin, selmon->tagmap[i]);
XCopyArea(dpy, selmon->tagmap[i], selmon->tagwin, drw->gc, 0, 0, XCopyArea(dpy, selmon->tagmap[i], selmon->tagwin, drw->gc, 0, 0,
selmon->mw / scalepreview, selmon->mh / scalepreview, selmon->mw / selmon->scalepreview, selmon->mh / selmon->scalepreview,
0, 0); 0, 0);
XSync(dpy, False); XSync(dpy, False);
XMapRaised(dpy, selmon->tagwin); XMapRaised(dpy, selmon->tagwin);
@ -6663,9 +6665,9 @@ takepreview(void)
else else
imlib_copy_drawable_to_image(0, selmon->mx, selmon->my, selmon->mw ,selmon->mh, 0, 0, 1); imlib_copy_drawable_to_image(0, selmon->mx, selmon->my, selmon->mw ,selmon->mh, 0, 0, 1);
selmon->tagmap[i] = XCreatePixmap(dpy, selmon->tagwin, selmon->mw / scalepreview, selmon->mh / scalepreview, depth); selmon->tagmap[i] = XCreatePixmap(dpy, selmon->tagwin, selmon->mw / selmon->scalepreview, selmon->mh / selmon->scalepreview, depth);
imlib_context_set_drawable(selmon->tagmap[i]); imlib_context_set_drawable(selmon->tagmap[i]);
imlib_render_image_part_on_drawable_at_size(0, 0, selmon->mw, selmon->mh, 0, 0, selmon->mw / scalepreview, selmon->mh / scalepreview); imlib_render_image_part_on_drawable_at_size(0, 0, selmon->mw, selmon->mh, 0, 0, selmon->mw / selmon->scalepreview, selmon->mh / selmon->scalepreview);
imlib_free_image(); imlib_free_image();
} }
} }