summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMeiMei <30769358+mei23@users.noreply.github.com>2019-02-03 19:33:23 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2019-02-03 19:33:23 +0900
commit64c1075b06e2de944aa2151ca0d0936cad1c02bb (patch)
treea8a63df65f33547f849b89de1afd8539633e5f51
parentNew translations ja-JP.yml (Korean) (#4110) (diff)
downloadsharkey-64c1075b06e2de944aa2151ca0d0936cad1c02bb.tar.gz
sharkey-64c1075b06e2de944aa2151ca0d0936cad1c02bb.tar.bz2
sharkey-64c1075b06e2de944aa2151ca0d0936cad1c02bb.zip
Remember the media playback volume (#4089)
* Remember the media playback volume * fix
-rw-r--r--src/client/app/common/views/components/media-banner.vue13
-rw-r--r--src/client/app/desktop/views/components/media-video-dialog.vue11
-rw-r--r--src/client/app/store.ts1
3 files changed, 21 insertions, 4 deletions
diff --git a/src/client/app/common/views/components/media-banner.vue b/src/client/app/common/views/components/media-banner.vue
index 17e4dd6041..8a6f377f01 100644
--- a/src/client/app/common/views/components/media-banner.vue
+++ b/src/client/app/common/views/components/media-banner.vue
@@ -11,6 +11,7 @@
:title="media.name"
controls
ref="audio"
+ @volumechange="volumechange"
preload="metadata" />
</div>
<a class="download" v-else
@@ -40,7 +41,17 @@ export default Vue.extend({
return {
hide: true
};
- }
+ },
+ mounted() {
+ const audioTag = this.$refs.audio as HTMLAudioElement;
+ audioTag.volume = this.$store.state.device.mediaVolume;
+ },
+ methods: {
+ volumechange() {
+ const audioTag = this.$refs.audio as HTMLAudioElement;
+ this.$store.commit('device/set', { key: 'mediaVolume', value: audioTag.volume });
+ },
+ },
})
</script>
diff --git a/src/client/app/desktop/views/components/media-video-dialog.vue b/src/client/app/desktop/views/components/media-video-dialog.vue
index cb112e5266..3c682ecefb 100644
--- a/src/client/app/desktop/views/components/media-video-dialog.vue
+++ b/src/client/app/desktop/views/components/media-video-dialog.vue
@@ -1,7 +1,7 @@
<template>
<div class="mk-media-video-dialog">
<div class="bg" @click="close"></div>
- <video :src="video.url" :title="video.name" controls autoplay ref="video"/>
+ <video :src="video.url" :title="video.name" controls autoplay ref="video" @volumechange="volumechange"/>
</div>
</template>
@@ -18,8 +18,9 @@ export default Vue.extend({
duration: 100,
easing: 'linear'
});
- const videoTag = this.$refs.video as HTMLVideoElement
+ const videoTag = this.$refs.video as HTMLVideoElement;
if (this.start) videoTag.currentTime = this.start
+ videoTag.volume = this.$store.state.device.mediaVolume;
},
methods: {
close() {
@@ -30,7 +31,11 @@ export default Vue.extend({
easing: 'linear',
complete: () => this.destroyDom()
});
- }
+ },
+ volumechange() {
+ const videoTag = this.$refs.video as HTMLVideoElement;
+ this.$store.commit('device/set', { key: 'mediaVolume', value: videoTag.volume });
+ },
}
});
</script>
diff --git a/src/client/app/store.ts b/src/client/app/store.ts
index 46655b7bd5..8cde2d3595 100644
--- a/src/client/app/store.ts
+++ b/src/client/app/store.ts
@@ -56,6 +56,7 @@ const defaultDeviceSettings = {
themes: [],
enableSounds: true,
soundVolume: 0.5,
+ mediaVolume: 0.5,
lang: null,
preventUpdate: false,
debug: false,