1 | import { temporarilyNotSupport } from '../../utils';
|
2 | import { CallbackManager } from '../../utils/handler';
|
3 | const callbackManager = new CallbackManager();
|
4 | const resizeListener = () => {
|
5 | callbackManager.trigger({
|
6 | windowWidth: window.screen.width,
|
7 | windowHeight: window.screen.height
|
8 | });
|
9 | };
|
10 |
|
11 |
|
12 |
|
13 | export const setWindowSize = temporarilyNotSupport('setWindowSize');
|
14 |
|
15 |
|
16 |
|
17 | export const onWindowResize = callback => {
|
18 | callbackManager.add(callback);
|
19 | if (callbackManager.count() === 1) {
|
20 | window.addEventListener('resize', resizeListener);
|
21 | }
|
22 | };
|
23 |
|
24 |
|
25 |
|
26 | export const offWindowResize = callback => {
|
27 | callbackManager.remove(callback);
|
28 | if (callbackManager.count() === 0) {
|
29 | window.removeEventListener('resize', resizeListener);
|
30 | }
|
31 | };
|