Added stream disable to settings

This commit is contained in:
Joel Collins 2019-02-15 11:33:12 +00:00
parent ebb682976c
commit 0d55838b86
4 changed files with 42 additions and 8 deletions

View file

@ -1,7 +1,7 @@
<template> <template>
<div class="streamDisplay scrollTarget"> <div class="streamDisplay scrollTarget">
<img class="uk-align-center" v-on:dblclick="clickmonitor" v-if="$store.getters.ready" v-bind:src="streamImgUri" alt="Stream"> <img class="uk-align-center" v-on:dblclick="clickmonitor" v-if="showStream" v-bind:src="streamImgUri" alt="Stream">
<div v-else-if="$store.state.waiting" class="uk-position-center"> <div v-else-if="$store.state.waiting" class="uk-position-center">
<div uk-spinner="ratio: 4.5" ></div> <div uk-spinner="ratio: 4.5" ></div>
@ -32,6 +32,9 @@ export default {
}, },
computed: { computed: {
showStream: function () {
return this.$store.getters.ready && !this.$store.state.settings.disableStream
},
streamImgUri: function () { streamImgUri: function () {
return this.$store.getters.uri + "/stream" return this.$store.getters.uri + "/stream"
} }

View file

@ -1,8 +1,12 @@
<template> <template>
<div id="paneSettings"> <div id="paneSettings">
<h3>Settings</h3> <h3>Settings</h3>
<div class="uk-placeholder uk-text-center">Global settings coming soon...</div>
</div> <div class="uk-child-width-1-2" uk-grid>
<p><label><input v-model="disableStream" class="uk-checkbox" type="checkbox"> Disable stream</label></p>
<p><label><input v-model="autoGpuPreview" class="uk-checkbox" type="checkbox"> GPU preview</label></p>
</div>
</div> </div>
</template> </template>
@ -11,6 +15,26 @@
// Export main app // Export main app
export default { export default {
name: 'paneSettings', name: 'paneSettings',
computed: {
disableStream: {
get() {
return this.$store.state.settings.disableStream;
},
set(value) {
this.$store.commit("changeSetting", ['disableStream', value]);
}
},
autoGpuPreview: {
get() {
return this.$store.state.settings.autoGpuPreview;
},
set(value) {
this.$store.commit("changeSetting", ['autoGpuPreview', value]);
}
}
}
} }
</script> </script>

View file

@ -8,13 +8,13 @@
<li v-bind:class="disableIfDisconnected"><a href="#" uk-switcher-item="navigate" uk-icon="location" uk-tooltip="Navigate"></a></li> <li v-bind:class="disableIfDisconnected"><a href="#" uk-switcher-item="navigate" uk-icon="location" uk-tooltip="Navigate"></a></li>
<li v-bind:class="disableIfDisconnected"><a href="#" uk-switcher-item="capture" uk-icon="camera" uk-tooltip="Capture"></a></li> <li v-bind:class="disableIfDisconnected"><a href="#" uk-switcher-item="capture" uk-icon="camera" uk-tooltip="Capture"></a></li>
<li v-bind:class="disableIfDisconnected"><a href="#" uk-switcher-item="plugins" uk-icon="git-fork" uk-tooltip="Plugins"></a></li> <li v-bind:class="disableIfDisconnected"><a href="#" uk-switcher-item="plugins" uk-icon="git-fork" uk-tooltip="Plugins"></a></li>
<li v-bind:class="disableIfDisconnected"><a href="#" uk-switcher-item="settings" uk-icon="settings" uk-tooltip="Settings"></a></li> <li><a href="#" uk-switcher-item="settings" uk-icon="settings" uk-tooltip="Settings"></a></li>
</ul> </ul>
<ul class="uk-switcher uk-padding-small uk-flex uk-flex-1 panel-content"> <ul class="uk-switcher uk-padding-small uk-flex uk-flex-1 panel-content">
<li class="uk-width-expand"><paneConnect/></li> <li class="uk-width-expand"><paneConnect/></li>
<li v-if="$store.getters.ready" class="uk-width-expand"><paneNavigate/></li> <li class="uk-width-expand"><div v-if="$store.getters.ready"><paneNavigate/></div></li>
<li v-if="$store.getters.ready" class="uk-width-expand"><paneCapture/></li> <li class="uk-width-expand"><div v-if="$store.getters.ready"><paneCapture/></div></li>
<li v-if="$store.getters.ready" class="uk-width-expand"><panePlugins/></li> <li class="uk-width-expand"><div v-if="$store.getters.ready"><panePlugins/></div></li>
<li class="uk-width-expand"><paneSettings/></li> <li class="uk-width-expand"><paneSettings/></li>
</ul> </ul>
</div> </div>

View file

@ -16,7 +16,11 @@ export default new Vuex.Store({
error: '', error: '',
apiConfig: {}, apiConfig: {},
apiState: {}, apiState: {},
moveLock: false moveLock: false,
settings: {
disableStream: false,
autoGpuPreview: false
}
}, },
mutations: { mutations: {
@ -42,6 +46,9 @@ export default new Vuex.Store({
}, },
commitState(state, stateData) { commitState(state, stateData) {
state.apiState = stateData; state.apiState = stateData;
},
changeSetting(state, [key, value]) {
state.settings[key] = value;
} }
}, },