瀏覽代碼

ResizeObserver

master
Roderic Day 5 年之前
父節點
當前提交
e96b672342
共有 1 個檔案被更改,包括 7 行新增1 行删除
  1. +7
    -1
      pico.js

+ 7
- 1
pico.js 查看文件

@@ -181,6 +181,7 @@ const hotKey = (e) => {
}
}
const Video = {
keepRatio: {observe: () => {}},
appendStream: ({username, stream}) => ({dom}) => {
dom.autoplay = true
dom.muted = (username === State.username)
@@ -189,7 +190,7 @@ const Video = {
},
view({attrs}) {
const rpc = State.rpcs[attrs.username] || {iceConnectionState: m.trust(' ')}
return m('.video-container',
return m('.video-container', {oncreate: ({dom}) => Video.keepRatio.observe(dom)},
m('.video-meta',
m('.video-source', attrs.username),
m('.video-state', rpc.iceConnectionState),
@@ -198,6 +199,11 @@ const Video = {
)
},
}
if(window.ResizeObserver) {
const doOne = ({target}) => target.style.width = `${target.clientHeight}px`
const doAll = (entries) => entries.forEach(doOne)
Video.keepRatio = new ResizeObserver(doAll)
}
const Media = {
videoSources: ['camera', 'screen', 'none'],
audioDefaults: {

Loading…
取消
儲存