From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate001.proxmox.com (gate001.proxmox.com [IPv6:2a0f:8001:1:32::40]) by lore.proxmox.com (Postfix) with ESMTPS id A33791FF0C2 for ; Thu, 22 Oct 2026 16:00:37 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id D21AC21684; Thu, 22 Oct 2026 16:00:35 +0200 (CEST) From: Dominik Csapak To: pve-devel@lists.proxmox.com Subject: [PATCH manager] fix #8184: ui: settings: add 'remote resizing' option to noVNC defaults Date: Thu, 22 Oct 2026 16:00:18 +0200 Message-ID: <20261022140030.176756-1-d.csapak@proxmox.com> X-Mailer: git-send-email 2.47.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.353 Adjusted score from AWL reputation of From: address DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment (newer systems) RCVD_IN_DNSWL_MED -2.3 Sender listed at https://www.dnswl.org/, medium trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Message-ID-Hash: JIQM2UIPDW3R7GQODZFVAGTONGSS2CVV X-Message-ID-Hash: JIQM2UIPDW3R7GQODZFVAGTONGSS2CVV X-MailFrom: d.csapak@proxmox.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox VE development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: This option was introduced after the 'my settings' window was implemented, so add it. Since the number of options would clutter the screen when using radio buttons, use a standard drop down instead. Use '__default__' as default value to stay consistent with other dropdowns. (The previous 'auto' value was never saved in the browser local storage anyway). While at it, use gettext for the text so they can be translated. Signed-off-by: Dominik Csapak --- www/manager6/window/Settings.js | 45 ++++++++++----------------------- 1 file changed, 13 insertions(+), 32 deletions(-) diff --git a/www/manager6/window/Settings.js b/www/manager6/window/Settings.js index 77c86c2a..98670865 100644 --- a/www/manager6/window/Settings.js +++ b/www/manager6/window/Settings.js @@ -34,8 +34,8 @@ Ext.define('PVE.window.Settings', { var username = sp.get('login-username') || Proxmox.Utils.noneText; me.lookupReference('savedUserName').setValue(Ext.String.htmlEncode(username)); - var vncMode = sp.get('novnc-scaling') || 'auto'; - me.lookupReference('noVNCScalingGroup').setValue({ noVNCScalingField: vncMode }); + var vncMode = sp.get('novnc-scaling') || '__default__'; + me.lookupReference('noVNCScaling').setValue(vncMode); let summarycolumns = sp.get('summarycolumns', 'auto'); me.lookup('summarycolumns').setValue(summarycolumns); @@ -394,42 +394,23 @@ Ext.define('PVE.window.Settings', { title: gettext('noVNC Settings'), items: [ { - xtype: 'radiogroup', + xtype: 'proxmoxKVComboBox', fieldLabel: gettext('Scaling mode'), - reference: 'noVNCScalingGroup', - height: '15px', // renders faster with value assigned - layout: { - type: 'hbox', - }, - items: [ - { - xtype: 'radiofield', - name: 'noVNCScalingField', - inputValue: 'auto', - boxLabel: 'Auto', - }, - { - xtype: 'radiofield', - name: 'noVNCScalingField', - inputValue: 'scale', - boxLabel: 'Local Scaling', - margin: '0 0 0 10', - }, - { - xtype: 'radiofield', - name: 'noVNCScalingField', - inputValue: 'off', - boxLabel: 'Off', - margin: '0 0 0 10', - }, + reference: 'noVNCScaling', + width: '100%', + comboItems: [ + ['__default__', Proxmox.Utils.defaultText], + ['scale', gettext('Local Scaling')], + ['remote', gettext('Remote Resizing')], + ['off', gettext('Off')], ], listeners: { - change: function (el, { noVNCScalingField }) { + change: function (el, value) { let provider = Ext.state.Manager.getProvider(); - if (noVNCScalingField === 'auto') { + if (!value || value === '__default__') { provider.clear('novnc-scaling'); } else { - provider.set('novnc-scaling', noVNCScalingField); + provider.set('novnc-scaling', value); } }, }, -- 2.47.3