var x11 = require('../../lib'); x11.createClient(function(err, display) { var visual; var rgbaVisuals = Object.keys(display.screen[0].depths[32]); for (v in rgbaVisuals) { var vid = rgbaVisuals[v]; if (display.screen[0].depths[32][vid].class === 4) { visual = vid; break; } } if (visual === undefined) { console.log('No RGBA visual found'); return; } var X = display.client; var root = display.screen[0].root; var wid = X.AllocID(); var white = display.screen[0].white_pixel; var black = display.screen[0].black_pixel; var cmid = X.AllocID(); var depth = 32; X.CreateColormap(cmid, root, visual, 0); // 0=AllocNone, 1 AllocAll X.CreateWindow(wid, root, 10, 10, 168, 195, 1, depth, 1, visual, { eventMask: x11.eventMask.Exposure, colormap: cmid, backgroundPixel: 0, borderPixel: 0 }); X.MapWindow(wid); var gc = X.AllocID(); X.require('render', function(err, Render) { var pict = X.AllocID(); Render.CreatePicture(pict, wid, Render.rgba32); var gradients = []; function randomLinear() { var stops = []; for (var i=0; i<3; ++i) stops.push(Math.random()); stops.sort(); var colors = []; for (var i=0; i