| 111 | } |
| 112 | |
| 113 | async function setFullscreen(player) { |
| 114 | if (!(await api.settings.getAsync('autofull'))) return; |
| 115 | if ( |
| 116 | window.fullScreen || |
| 117 | (window.innerWidth === window.screen.width && window.innerHeight === window.screen.height) |
| 118 | ) { |
| 119 | con.info('Browser already in fullscreen'); |
| 120 | } else { |
| 121 | let playerEl = player; |
| 122 | |
| 123 | const ids = ['player', 'vstr', 'vplayer', 'mgvideo', 'myVideo', 'b-video-wrapper', 'vilos']; |
| 124 | |
| 125 | const classes = ['AT-player', 'plyr', 'AkiraPlayer', 'video-js']; |
| 126 | |
| 127 | let found = false; |
| 128 | |
| 129 | for (const i in ids) { |
| 130 | const playerTemp = document.getElementById(ids[i]); |
| 131 | if (playerTemp !== null) { |
| 132 | found = true; |
| 133 | playerEl = playerTemp; |
| 134 | break; |
| 135 | } |
| 136 | } |
| 137 | |
| 138 | for (const i in classes) { |
| 139 | const classTemp = document.getElementsByClassName(classes[i]).item(0); |
| 140 | if (classTemp !== null) { |
| 141 | found = true; |
| 142 | playerEl = classTemp; |
| 143 | break; |
| 144 | } |
| 145 | } |
| 146 | |
| 147 | if (!found) { |
| 148 | const vHeight = playerEl.offsetHeight; |
| 149 | const vWidth = playerEl.offsetWidth; |
| 150 | |
| 151 | while ( |
| 152 | playerEl.parentElement && |
| 153 | vHeight === playerEl.parentElement.offsetHeight && |
| 154 | vWidth === playerEl.parentElement.offsetWidth |
| 155 | ) { |
| 156 | playerEl = playerEl.parentElement; |
| 157 | found = true; |
| 158 | } |
| 159 | } |
| 160 | |
| 161 | if (!found && !player.getAttribute('controls')) { |
| 162 | if (document.addEventListener) { |
| 163 | document.addEventListener('fullscreenchange', exitHandler, false); |
| 164 | document.addEventListener('mozfullscreenchange', exitHandler, false); |
| 165 | document.addEventListener('MSFullscreenChange', exitHandler, false); |
| 166 | document.addEventListener('webkitfullscreenchange', exitHandler, false); |
| 167 | } |
| 168 | |
| 169 | function exitHandler() { |
| 170 | if ( |