diff --git a/src/components/media_modal/media_modal.js b/src/components/media_modal/media_modal.js index 9160151545..95c3b4a95f 100644 --- a/src/components/media_modal/media_modal.js +++ b/src/components/media_modal/media_modal.js @@ -24,24 +24,34 @@ const MediaModal = { return this.currentMedia ? fileTypeService.fileType(this.currentMedia.mimetype) : null } }, + created () { + document.addEventListener('keyup', e => { + if (e.keyCode === 27 && this.showing) { // escape + this.hide() + } + }) + }, methods: { hide () { this.$store.dispatch('closeMediaViewer') }, onVideoDataLoad (e) { + if (!e.srcElement) { + return + } if (typeof e.srcElement.webkitAudioDecodedByteCount !== 'undefined') { // non-zero if video has audio track if (e.srcElement.webkitAudioDecodedByteCount > 0) { - this.loopVideo = this.loopVideo && !this.$store.state.config.loopVideoSilentOnly + this.loopVideo = this.$store.state.config.loopVideo && !this.$store.state.config.loopVideoSilentOnly } } else if (typeof e.srcElement.mozHasAudio !== 'undefined') { // true if video has audio track if (e.srcElement.mozHasAudio) { - this.loopVideo = this.loopVideo && !this.$store.state.config.loopVideoSilentOnly + this.loopVideo = this.$store.state.config.loopVideo && !this.$store.state.config.loopVideoSilentOnly } } else if (typeof e.srcElement.audioTracks !== 'undefined') { if (e.srcElement.audioTracks.length > 0) { - this.loopVideo = this.loopVideo && !this.$store.state.config.loopVideoSilentOnly + this.loopVideo = this.$store.state.config.loopVideo && !this.$store.state.config.loopVideoSilentOnly } } } diff --git a/src/components/media_modal/media_modal.vue b/src/components/media_modal/media_modal.vue index 6e291ac576..c8b4c30677 100644 --- a/src/components/media_modal/media_modal.vue +++ b/src/components/media_modal/media_modal.vue @@ -7,8 +7,8 @@ :src="currentMedia.url" @click.stop="" controls autoplay - :loop="loopVideo" - @loadeddata="onVideoDataLoad"> + @loadeddata="onVideoDataLoad" + :loop="loopVideo"> diff --git a/src/modules/media_viewer.js b/src/modules/media_viewer.js index 27714bae14..a24b408d70 100644 --- a/src/modules/media_viewer.js +++ b/src/modules/media_viewer.js @@ -28,7 +28,6 @@ const mediaViewer = { }, setCurrent ({ commit, state }, current) { const index = state.media.indexOf(current) - console.log(index, current) commit('setCurrent', index || 0) }, closeMediaViewer ({ commit }) {