terminal: add ctrl-shift-l to refresh xterm.js rendering
This is a temporary workaround for
https://github.com/xtermjs/xterm.js/issues/3878.
Bug: b/236205389
Change-Id: I7a669258e9c4e7958a04498abea590e535cb3a55
Reviewed-on: https://chromium-review.googlesource.com/c/apps/libapps/+/3868649
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Joel Hockey <joelhockey@chromium.org>
diff --git a/terminal/js/terminal_emulator.js b/terminal/js/terminal_emulator.js
index b821926..bf9c2c0 100644
--- a/terminal/js/terminal_emulator.js
+++ b/terminal/js/terminal_emulator.js
@@ -655,6 +655,20 @@
set(modifiers | Modifier.Shift, keyCode, func);
};
+ // Temporary shortcut to refresh the rendering in case of rendering errors.
+ // TODO(lxj): remove after this is fixed:
+ // https://github.com/xtermjs/xterm.js/issues/3878
+ set(Modifier.Ctrl | Modifier.Shift, keyCodes.L,
+ /** @suppress {missingProperties} */
+ () => {
+ this.scheduleRefreshFont_();
+ // Refresh the cursor layer.
+ if (this.enableWebGL_) {
+ this.term?._core?._renderService?._renderer?._renderLayers[1]
+ ?._clearAll();
+ }
+ },
+ );
// Ctrl+/
set(Modifier.Ctrl, 191, (ev) => {