var dragging = false var drawing = true var erasing = false var focused var canvas, tools, palette, controls, brush, mode, current_tool, current_canvas function init () { build() bind() } function build () { shader.init() // shader.run(canvas) shader.animate() canvas.append(canvas_rapper) brush.append(brush_rapper) palette.append(palette_rapper) controls.circle.focus() // controls.shader.focus() brush.bg = colors.red brush.generate() brush.build() } function bind () { canvas.bind() palette.bind() brush.bind() controls.bind() keys.bind() window.addEventListener('mouseup', function(){ dragging = erasing = false if (current_tool.name != 'shader' && current_tool.name != 'load' && current_tool.name != 'save') { cursor_input.focus() } }); window.addEventListener('mousedown', function(e){ if (current_tool.name == "shader") { return } cursor_input.focus() }) document.addEventListener('DOMContentLoaded', function(){ if (current_tool.name != 'shader') { cursor_input.focus() } document.body.classList.remove('loading') }) } function int_key (f) { return function (key, keyCode) { var n = parseInt(key) ! isNaN(n) && f(n) } } init()