github.com/ferranbt/nomad@v0.9.3-0.20190607002617-85c449b7667c/ui/app/mixins/window-resizable.js (about) 1 import Mixin from '@ember/object/mixin'; 2 import { run } from '@ember/runloop'; 3 import { assert } from '@ember/debug'; 4 import $ from 'jquery'; 5 6 export default Mixin.create({ 7 windowResizeHandler() { 8 assert('windowResizeHandler needs to be overridden in the Component', false); 9 }, 10 11 setupWindowResize: function() { 12 run.scheduleOnce('afterRender', this, () => { 13 this.set('_windowResizeHandler', this.windowResizeHandler.bind(this)); 14 $(window).on('resize', this._windowResizeHandler); 15 }); 16 }.on('didInsertElement'), 17 18 removeWindowResize: function() { 19 $(window).off('resize', this._windowResizeHandler); 20 }.on('willDestroyElement'), 21 });