this adds font-settings to the 'My Settings' window and makes that bigger Signed-off-by: Dominik Csapak <d.csa...@proxmox.com> --- www/manager6/window/Settings.js | 84 +++++++++++++++++++++++++++++++++++------ 1 file changed, 72 insertions(+), 12 deletions(-)
diff --git a/www/manager6/window/Settings.js b/www/manager6/window/Settings.js index 9a33850f..ce805365 100644 --- a/www/manager6/window/Settings.js +++ b/www/manager6/window/Settings.js @@ -1,7 +1,7 @@ Ext.define('PVE.window.Settings', { extend: 'Ext.window.Window', - width: '400px', + width: '800px', title: gettext('My Settings'), iconCls: 'fa fa-gear', modal: true, @@ -16,21 +16,39 @@ Ext.define('PVE.window.Settings', { }], layout: { - type: 'vbox', - align: 'center' + type: 'hbox', + align: 'top' }, controller: { xclass: 'Ext.app.ViewController', - control: { - '#': { - show: function() { - var me = this; - var sp = Ext.state.Manager.getProvider(); + init: function(view) { + var me = this; + var sp = Ext.state.Manager.getProvider(); + + var username = sp.get('login-username') || Proxmox.Utils.noneText; + me.lookupReference('savedUserName').setValue(username); + + var settings = ['fontSize', 'fontFamily', 'letterSpacing', 'lineHeight']; + settings.forEach(function(setting) { + var val = localStorage.getItem('pve-xterm-' + setting); + if (val !== undefined && val !== null) { + var field = view.down('#xtermjs field[name='+ setting + ']'); + field.setValue(val); + } + }); + }, - var username = sp.get('login-username') || Proxmox.Utils.noneText; - me.lookupReference('savedUserName').setValue(username); + control: { + '#xtermjs field': { + change: function(field, value) { + var setting = field.name; + if (localStorage && value) { + localStorage.setItem('pve-xterm-' + setting, value); + } else if (localStorage) { + localStorage.removeItem('pve-xterm-' + setting); + } } }, 'button[name=reset]': { @@ -102,8 +120,9 @@ Ext.define('PVE.window.Settings', { items: [{ xtype: 'fieldset', - width: '90%', - title: gettext('Browser Settings'), + width: '50%', + title: gettext('Webinterface Settings'), + margin: '5', layout: { type: 'vbox', align: 'left' @@ -184,6 +203,47 @@ Ext.define('PVE.window.Settings', { name: 'reset' } ] + },{ + xtype: 'fieldset', + itemId: 'xtermjs', + width: '50%', + margin: '5', + title: gettext('xterm.js Settings'), + layout: { + type: 'vbox', + algin: 'left' + }, + defaults: { + width: '100%', + margin: '0 0 10 0' + }, + items: [ + { + xtype: 'textfield', + name: 'fontFamily', + emptyText: Proxmox.Utils.defaultText, + fieldLabel: gettext('Font-Family') + }, + { + xtype: 'proxmoxintegerfield', + emptyText: Proxmox.Utils.defaultText, + name: 'fontSize', + minValue: 1, + fieldLabel: gettext('Font-Size') + }, + { + xtype: 'numberfield', + name: 'letterSpacing', + emptyText: Proxmox.Utils.defaultText, + fieldLabel: gettext('Letter Spacing') + }, + { + xtype: 'numberfield', + name: 'lineHeight', + emptyText: Proxmox.Utils.defaultText, + fieldLabel: gettext('Line Height') + } + ] }], onShow: function() { -- 2.11.0 _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel