summaryrefslogtreecommitdiff
path: root/src/views/Control/SerialOverLan/SerialOverLanConsole.vue
diff options
context:
space:
mode:
Diffstat (limited to 'src/views/Control/SerialOverLan/SerialOverLanConsole.vue')
-rw-r--r--src/views/Control/SerialOverLan/SerialOverLanConsole.vue14
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');