Xterm.js в UWP WebView - вставьте программно - PullRequest
0 голосов
/ 21 октября 2019

Я работаю над терминальным приложением на основе Xterm.js, которое работает в UWP WebView. Все работает хорошо, и я могу вставить любой текст в терминал, используя Ctrl + V - похоже, что он автоматически обрабатывается Xterm.js.

Но я не могу реализовать пункт меню «Вставить». Я пытался сделать что-то вроде:

var value = await _webView.InvokeScriptAsync("eval", new []{"document.execCommand('paste')"});

(согласно https://developer.mozilla.org/en-US/docs/Web/API/Document/execCommand), но не повезло. Ничего не вставляется, и вызов возвращает пустую строку.

Есть идеи, как реализовать вставку из меню приложения UWP? Спасибо!

1 Ответ

1 голос
/ 21 октября 2019

Это не проблема с WebView, потому что я нашел его из github по адресу xterm.js.

Вы можете рассмотреть возможность публикации объекта Terminal, например прикрепления его к окну. объект, чтобы к нему можно было публично получить доступ извне, затем используйте _webView.InvokeScriptAsync("eval",new string[] { "window.term.paste("some string") "}); для вставки.

Если вы не хотите открывать объект терминала, вы можете обернуть метод вставки как открытую функцию и затем вызватьэто через InvokeScriptAsync.

С уважением.

...