From 6c9e176249b35eb2ceb23504b5b6a43b5caba87a Mon Sep 17 00:00:00 2001 From: Preston Date: Mon, 11 Jan 2021 15:45:46 -0500 Subject: [PATCH] Prevent display from sleeping when video is playing --- .../ft-video-player/ft-video-player.js | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/renderer/components/ft-video-player/ft-video-player.js b/src/renderer/components/ft-video-player/ft-video-player.js index 63fc5221..ab29039f 100644 --- a/src/renderer/components/ft-video-player/ft-video-player.js +++ b/src/renderer/components/ft-video-player/ft-video-player.js @@ -61,6 +61,7 @@ export default Vue.extend({ data: function () { return { id: '', + powerSaveBlocker: null, volume: 1, player: null, useDash: false, @@ -115,6 +116,10 @@ export default Vue.extend({ } }, computed: { + usingElectron: function () { + return this.$store.getters.getUsingElectron + }, + defaultPlayback: function () { return this.$store.getters.getDefaultPlayback }, @@ -235,6 +240,22 @@ export default Vue.extend({ this.player.on('error', function (error, message) { v.$emit('error', error.target.player.error_) }) + + this.player.on('play', function () { + if (this.usingElectron) { + const { powerSaveBlocker } = require('electron') + + this.powerSaveBlocker = powerSaveBlocker.start('prevent-display-sleep') + } + }) + + this.player.on('pause', function () { + if (this.usingElectron && this.powerSaveBlocker !== null) { + const { powerSaveBlocker } = require('electron') + powerSaveBlocker.stop(this.powerSaveBlocker) + this.powerSaveBlocker = null + } + }) } },