30 lines
796 B
Plaintext
30 lines
796 B
Plaintext
<script>
|
|
import { winset } from 'util/byond'
|
|
import { resize } from 'util/dragresize'
|
|
|
|
component.exports = {
|
|
oninit () {
|
|
const onresize = resize.bind(this)
|
|
const onrelease = () => this.set({ resize: false, x: null, y: null })
|
|
|
|
this.observe('config.fancy', (newkey, oldkey, keypath) => {
|
|
winset(this.get('config.window'), 'can-resize', !newkey)
|
|
|
|
if (newkey) {
|
|
document.addEventListener('mousemove', onresize)
|
|
document.addEventListener('mouseup', onrelease)
|
|
} else {
|
|
document.removeEventListener('mousemove', onresize)
|
|
document.removeEventListener('mouseup', onrelease)
|
|
}
|
|
})
|
|
|
|
this.on('resize', () => this.toggle('resize'))
|
|
}
|
|
}
|
|
</script>
|
|
|
|
{{#if config.fancy}}
|
|
<div class='resize' on-mousedown='resize'></div>
|
|
{{/if}}
|