[pve-devel] [PATCH manager 4/5] add xtermjs flag to VNCConsole iframe
Thomas Lamprecht
t.lamprecht at proxmox.com
Mon Dec 4 09:48:06 CET 2017
On 12/01/2017 09:29 AM, Dominik Csapak wrote:
> so that we can open an xtermjs iframe instead of novnc
>
> Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
> ---
> www/manager6/VNCConsole.js | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/www/manager6/VNCConsole.js b/www/manager6/VNCConsole.js
> index 4b1b39ef..1e976e1d 100644
> --- a/www/manager6/VNCConsole.js
> +++ b/www/manager6/VNCConsole.js
> @@ -10,6 +10,8 @@ Ext.define('PVE.noVncConsole', {
>
> layout: 'fit',
>
> + xtermjs: false,
> +
> border: false,
>
> initComponent : function() {
> @@ -31,11 +33,13 @@ Ext.define('PVE.noVncConsole', {
> // at same time (to avoid performance problems)
> var box = Ext.create('Ext.ux.IFrame', { itemid : "vncconsole" });
>
> + var type = me.xtermjs ? 'xtermjs' : 'novnc';
> +
> Ext.apply(me, {
> items: box,
> listeners: {
> activate: function() {
> - var url = '/?console=' + me.consoleType + '&novnc=1&node=' + me.nodename + '&resize=scale';
> + var url = '/?console=' + me.consoleType + '&' + type + '=1&node=' + me.nodename + '&resize=scale';
> if (me.vmid) {
> url += '&vmid='+ me.vmid;
> }
> @@ -49,6 +53,11 @@ Ext.define('PVE.noVncConsole', {
> me.on('afterrender', function() {
> me.focus();
> });
> +
> + // this triggers the window.unload event of the frame
And why is that good or needed for the xtermjs type addition above?
I saw in the xtermjs source code that it has a handler (stopTerminal)
for this event registered, so I'd rather use something like:
// trigger window.unload event, so console (e.g., xtermjs) can gracefully stop
Or, if disliked, I'd add at least some note in the commit message.
Besides that:
Reviewed-by: Thomas Lamprecht <t.lamprecht at proxmox.com>
> + me.on('beforedestroy', function() {
> + box.load('about:blank');
> + });
> }
> });
>
>
More information about the pve-devel
mailing list