forked from cybrespace/pinafore
		
	* remove will-change:transform from container * WIP: use img.decode() * more work on img.decode
		
			
				
	
	
		
			51 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
export function mouseover (node, callback) {
 | 
						|
  function onMouseEnter () {
 | 
						|
    callback(true) // eslint-disable-line
 | 
						|
  }
 | 
						|
  function onMouseLeave () {
 | 
						|
    callback(false) // eslint-disable-line
 | 
						|
  }
 | 
						|
  node.addEventListener('mouseenter', onMouseEnter)
 | 
						|
  node.addEventListener('mouseleave', onMouseLeave)
 | 
						|
  return {
 | 
						|
    destroy () {
 | 
						|
      node.removeEventListener('mouseenter', onMouseEnter)
 | 
						|
      node.removeEventListener('mouseleave', onMouseLeave)
 | 
						|
    }
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
export function focusWithCapture (node, callback) {
 | 
						|
  node.addEventListener('focus', callback, true)
 | 
						|
  return {
 | 
						|
    destroy () {
 | 
						|
      node.removeEventListener('focus', callback, true)
 | 
						|
    }
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
export function blurWithCapture (node, callback) {
 | 
						|
  node.addEventListener('blur', callback, true)
 | 
						|
  return {
 | 
						|
    destroy () {
 | 
						|
      node.removeEventListener('blur', callback, true)
 | 
						|
    }
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
export function selectionChange (node, callback) {
 | 
						|
  let events = ['keyup', 'click', 'focus', 'blur']
 | 
						|
  let listener = () => {
 | 
						|
    callback(node.selectionStart)
 | 
						|
  }
 | 
						|
  for (let event of events) {
 | 
						|
    node.addEventListener(event, listener)
 | 
						|
  }
 | 
						|
  return {
 | 
						|
    destroy () {
 | 
						|
      for (let event of events) {
 | 
						|
        node.removeEventListener(event, listener)
 | 
						|
      }
 | 
						|
    }
 | 
						|
  }
 | 
						|
}
 |