git ssb

0+

alanz / patchwork



forked from Matt McKegg / patchwork

Tree: 96020cb99ffeaf0eff3ad6dbd5ac52bfb640217f

Files: 96020cb99ffeaf0eff3ad6dbd5ac52bfb640217f / lib / expander-hook.js

735 bytesRaw
1module.exports = ExpanderHook
2
3function ExpanderHook (needsExpand) {
4 return expander.bind(null, needsExpand)
5}
6
7function expander (needsExpand, element) {
8 var handler = { handleEvent, needsExpand, element }
9 handleEvent.call(handler)
10
11 if (element.querySelector('img')) {
12 // just in case images are still loading
13 setTimeout(handleEvent.bind(handler), 200)
14 element.addEventListener('mouseover', handler)
15 return element.removeEventListener.bind(element, 'mouseover', handler)
16 }
17}
18
19function handleEvent (ev) {
20 var { needsExpand, element } = this
21 if (!needsExpand()) {
22 if (element.firstElementChild && element.firstElementChild.clientHeight > element.clientHeight) {
23 needsExpand.set(true)
24 }
25 }
26}
27

Built with git-ssb-web