… | |
… | |
1097 | XFillRectangle (dpy, bg_pixmap, gc, 0, 0, window_width, window_height); |
1097 | XFillRectangle (dpy, bg_pixmap, gc, 0, 0, window_width, window_height); |
1098 | ret = true; |
1098 | ret = true; |
1099 | bool need_blur = root_effects.need_blur (); |
1099 | bool need_blur = root_effects.need_blur (); |
1100 | bool need_tint = root_effects.need_tint (); |
1100 | bool need_tint = root_effects.need_tint (); |
1101 | |
1101 | |
1102 | if (!(bg_flags & BG_CLIENT_RENDER)) |
|
|
1103 | { |
|
|
1104 | if (need_blur) |
1102 | if (need_blur) |
|
|
1103 | { |
|
|
1104 | if (blur_pixmap (bg_pixmap, window_width, window_height, false, |
|
|
1105 | root_effects.h_blurRadius, root_effects.v_blurRadius)) |
|
|
1106 | need_blur = false; |
|
|
1107 | } |
|
|
1108 | if (need_tint) |
|
|
1109 | { |
|
|
1110 | if (tint_pixmap (bg_pixmap, window_width, window_height, false, |
|
|
1111 | root_effects.tint, root_effects.tint_set, root_effects.shade)) |
|
|
1112 | need_tint = false; |
|
|
1113 | } |
|
|
1114 | if (need_tint) |
|
|
1115 | { |
|
|
1116 | XImage *ximage = XGetImage (dpy, bg_pixmap, 0, 0, bg_pmap_width, bg_pmap_height, AllPlanes, ZPixmap); |
|
|
1117 | if (ximage) |
1105 | { |
1118 | { |
1106 | if (blur_pixmap (bg_pixmap, window_width, window_height, false, |
1119 | /* our own client-side tinting */ |
1107 | root_effects.h_blurRadius, root_effects.v_blurRadius)) |
1120 | tint_ximage (ximage, root_effects.tint, root_effects.tint_set, root_effects.shade); |
1108 | need_blur = false; |
1121 | |
|
|
1122 | XPutImage (dpy, bg_pixmap, gc, ximage, 0, 0, 0, 0, ximage->width, ximage->height); |
|
|
1123 | XDestroyImage (ximage); |
1109 | } |
1124 | } |
1110 | if (need_tint) |
|
|
1111 | { |
|
|
1112 | if (tint_pixmap (bg_pixmap, window_width, window_height, false, |
|
|
1113 | root_effects.tint, root_effects.tint_set, root_effects.shade)) |
|
|
1114 | need_tint = false; |
|
|
1115 | } |
1125 | } |
1116 | if (need_tint) |
|
|
1117 | { |
|
|
1118 | XImage *ximage = XGetImage (dpy, bg_pixmap, 0, 0, bg_pmap_width, bg_pmap_height, AllPlanes, ZPixmap); |
|
|
1119 | if (ximage) |
|
|
1120 | { |
|
|
1121 | /* our own client-side tinting */ |
|
|
1122 | tint_ximage (ximage, root_effects.tint, root_effects.tint_set, root_effects.shade); |
|
|
1123 | |
|
|
1124 | XPutImage (dpy, bg_pixmap, gc, ximage, 0, 0, 0, 0, ximage->width, ximage->height); |
|
|
1125 | XDestroyImage (ximage); |
|
|
1126 | } |
|
|
1127 | } |
|
|
1128 | } /* server side rendering completed */ |
|
|
1129 | |
1126 | |
1130 | XFreeGC (dpy, gc); |
1127 | XFreeGC (dpy, gc); |
1131 | } |
1128 | } |
1132 | |
1129 | |
1133 | if (recoded_root_pmap != root_pixmap) |
1130 | if (recoded_root_pmap != root_pixmap) |