diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/views/Control/SerialOverLan/SerialOverLanConsole.vue | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/views/Control/SerialOverLan/SerialOverLanConsole.vue b/src/views/Control/SerialOverLan/SerialOverLanConsole.vue index a0e47870..738065b7 100644 --- a/src/views/Control/SerialOverLan/SerialOverLanConsole.vue +++ b/src/views/Control/SerialOverLan/SerialOverLanConsole.vue @@ -27,6 +27,7 @@ import { AttachAddon } from 'xterm-addon-attach'; import { FitAddon } from 'xterm-addon-fit'; import { Terminal } from 'xterm'; +import { throttle } from 'lodash'; import IconLaunch from '@carbon/icons-vue/es/launch/20'; import StatusIcon from '@/components/Global/StatusIcon'; @@ -42,6 +43,11 @@ export default { default: true, }, }, + data() { + return { + resizeConsoleWindow: null, + }; + }, computed: { hostStatus() { return this.$store.getters['global/hostStatus']; @@ -61,6 +67,9 @@ export default { mounted() { this.openTerminal(); }, + beforeDestroy() { + window.removeEventListener('resize', this.resizeConsoleWindow); + }, methods: { openTerminal() { const token = this.$store.getters['authentication/token']; @@ -93,6 +102,11 @@ export default { term.open(this.$refs.panel); fitAddon.fit(); + this.resizeConsoleWindow = throttle(() => { + fitAddon.fit(); + }, 1000); + window.addEventListener('resize', this.resizeConsoleWindow); + try { ws.onopen = function () { console.log('websocket console0/ opened'); |