Finiashed adding overlay that displays title (#789)
This commit is contained in:
parent
fe5b4321e8
commit
79a1555e2c
|
@ -16375,6 +16375,15 @@
|
||||||
"es5-shim": "^4.5.1"
|
"es5-shim": "^4.5.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"videojs-overlay": {
|
||||||
|
"version": "2.1.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/videojs-overlay/-/videojs-overlay-2.1.4.tgz",
|
||||||
|
"integrity": "sha512-eonf+la2WHZJUvaZXtX1UtpwNRe8Zq5HUkBXgDX9zKOFQ9ppMio7LbYMBVKpei6BcqOOgdNVit1h7NGe6ySe3w==",
|
||||||
|
"requires": {
|
||||||
|
"global": "^4.3.2",
|
||||||
|
"video.js": "^6 || ^7"
|
||||||
|
}
|
||||||
|
},
|
||||||
"videojs-replay": {
|
"videojs-replay": {
|
||||||
"version": "1.1.0",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/videojs-replay/-/videojs-replay-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/videojs-replay/-/videojs-replay-1.1.0.tgz",
|
||||||
|
|
|
@ -30,6 +30,7 @@
|
||||||
"videojs-abloop": "^1.2.0",
|
"videojs-abloop": "^1.2.0",
|
||||||
"videojs-contrib-quality-levels": "^2.0.9",
|
"videojs-contrib-quality-levels": "^2.0.9",
|
||||||
"videojs-http-source-selector": "^1.1.6",
|
"videojs-http-source-selector": "^1.1.6",
|
||||||
|
"videojs-overlay": "^2.1.4",
|
||||||
"videojs-replay": "^1.1.0",
|
"videojs-replay": "^1.1.0",
|
||||||
"videojs-vtt-thumbnails-freetube": "0.0.15",
|
"videojs-vtt-thumbnails-freetube": "0.0.15",
|
||||||
"vue": "^2.6.12",
|
"vue": "^2.6.12",
|
||||||
|
|
|
@ -5,6 +5,8 @@ import $ from 'jquery'
|
||||||
import videojs from 'video.js'
|
import videojs from 'video.js'
|
||||||
import qualitySelector from '@silvermine/videojs-quality-selector'
|
import qualitySelector from '@silvermine/videojs-quality-selector'
|
||||||
import fs from 'fs'
|
import fs from 'fs'
|
||||||
|
import 'videojs-overlay/dist/videojs-overlay'
|
||||||
|
import 'videojs-overlay/dist/videojs-overlay.css'
|
||||||
import 'videojs-vtt-thumbnails-freetube'
|
import 'videojs-vtt-thumbnails-freetube'
|
||||||
import 'videojs-contrib-quality-levels'
|
import 'videojs-contrib-quality-levels'
|
||||||
import 'videojs-http-source-selector'
|
import 'videojs-http-source-selector'
|
||||||
|
@ -206,6 +208,8 @@ export default Vue.extend({
|
||||||
this.player.on('volumechange', this.updateVolume)
|
this.player.on('volumechange', this.updateVolume)
|
||||||
this.player.controlBar.getChild('volumePanel').on('mousewheel', this.mouseScrollVolume)
|
this.player.controlBar.getChild('volumePanel').on('mousewheel', this.mouseScrollVolume)
|
||||||
|
|
||||||
|
this.player.on('fullscreenchange', this.fullscreenOverlay)
|
||||||
|
|
||||||
const v = this
|
const v = this
|
||||||
|
|
||||||
this.player.on('ready', function () {
|
this.player.on('ready', function () {
|
||||||
|
@ -526,6 +530,35 @@ export default Vue.extend({
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
fullscreenOverlay: function () {
|
||||||
|
const v = this
|
||||||
|
const title = document.title.replace('- FreeTube', '')
|
||||||
|
|
||||||
|
if (this.player.isFullscreen()) {
|
||||||
|
this.player.ready(function () {
|
||||||
|
v.player.overlay({
|
||||||
|
overlays: [{
|
||||||
|
showBackground: false,
|
||||||
|
content: title,
|
||||||
|
start: 'mousemove',
|
||||||
|
end: 'userinactive'
|
||||||
|
}]
|
||||||
|
})
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.player.ready(function () {
|
||||||
|
v.player.overlay({
|
||||||
|
overlays: [{
|
||||||
|
showBackground: false,
|
||||||
|
content: ' ',
|
||||||
|
start: 'play',
|
||||||
|
end: 'loadstart'
|
||||||
|
}]
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
keyboardShortcutHandler: function (event) {
|
keyboardShortcutHandler: function (event) {
|
||||||
const activeInputs = $('.ft-input')
|
const activeInputs = $('.ft-input')
|
||||||
|
|
||||||
|
@ -599,7 +632,7 @@ export default Vue.extend({
|
||||||
break
|
break
|
||||||
case 40:
|
case 40:
|
||||||
// Down Arrow Key
|
// Down Arrow Key
|
||||||
// Descrease Volume
|
// Decrease Volume
|
||||||
event.preventDefault()
|
event.preventDefault()
|
||||||
this.changeVolume(-0.05)
|
this.changeVolume(-0.05)
|
||||||
break
|
break
|
||||||
|
@ -611,7 +644,7 @@ export default Vue.extend({
|
||||||
break
|
break
|
||||||
case 39:
|
case 39:
|
||||||
// Right Arrow Key
|
// Right Arrow Key
|
||||||
// Fast Foward by 5 seconds
|
// Fast Forward by 5 seconds
|
||||||
event.preventDefault()
|
event.preventDefault()
|
||||||
this.changeDurationBySeconds(5)
|
this.changeDurationBySeconds(5)
|
||||||
break
|
break
|
||||||
|
|
|
@ -2020,3 +2020,8 @@ video::-webkit-media-text-track-display {
|
||||||
position: relative;
|
position: relative;
|
||||||
top: -1px;
|
top: -1px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.vjs-overlay {
|
||||||
|
font-size: xx-large;
|
||||||
|
max-width: 100% !important;
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue