On 9/13/19 3:16 PM, Aaron Lauterer wrote:
Signed-off-by: Aaron Lauterer <a.laute...@proxmox.com>
---
  www/manager6/Utils.js        | 18 ++++++++++++++++++
  www/manager6/qemu/Options.js | 13 +++++++++++++
  2 files changed, 31 insertions(+)

diff --git a/www/manager6/Utils.js b/www/manager6/Utils.js
index 6a489e7e..139200c3 100644
--- a/www/manager6/Utils.js
+++ b/www/manager6/Utils.js
@@ -334,6 +334,24 @@ Ext.define('PVE.Utils', { utilities: {
        }
      },
+ render_spice_enhancements: function(value) {
+       if (!value) {
+           return Proxmox.Utils.disabledText;
+       }
+       var props = PVE.Parser.parsePropertyString(value);
+       if (Ext.Object.isEmpty(props)) {
+           return Proxmox.Utils.disabledText;
+       }
+       var ret = [];
+       if (props.foldersharing === "1") {

I don't think '=== "1"' catches all cases here, USBEdit.js for example contains a check like this:

  if (/^usb3=(1|on|true)$/.test(data[i])) {
        ...
  }

while our JSONSchema parser even accepts "yes" in addition to the ones above.

Maybe a common Regex/helper like "parse_boolean" in JSONSchema.pm would be useful in JS too?


+           ret.push("Folder sharing enabled");

These...

+       }
+       if (props.videostreaming === "all" || props.videostreaming === 
"filter") {
+           ret.push("Video Streaming: " + props.videostreaming);

...need localization (gettext), since not language independent.

+       } > +        return ret.join(", ");
+    },
+
      // fixme: auto-generate this
      // for now, please keep in sync with PVE::Tools::kvmkeymaps
      kvm_keymaps: {
diff --git a/www/manager6/qemu/Options.js b/www/manager6/qemu/Options.js
index e1580060..96eb0499 100644
--- a/www/manager6/qemu/Options.js
+++ b/www/manager6/qemu/Options.js
@@ -281,6 +281,19 @@ Ext.define('PVE.qemu.Options', {
                    }
                } : undefined
            },
+           spice_enhancements: {
+               header: gettext('Spice Enhancements'),
+               defaultValue: false,
+               renderer:  PVE.Utils.render_spice_enhancements,
+               editor: caps.vms['VM.Config.Options'] ? {
+                   xtype: 'proxmoxWindowEdit',
+                   subject: gettext('Spice Enhancements'),

Just as a note, SPICE enhancements currently don't have a documentation available, but once they do, an "onlineHelp" would be useful here.

+                   items: {
+                       xtype: 'pveSpiceEnhancementSelector',
+                       name: 'spice_enhancements',
+                   }
+               } : undefined
+           },

Maybe disable this if VGA is not QXL (see also my note in 4/4).

            hookscript: {
                header: gettext('Hookscript')
            }


_______________________________________________
pve-devel mailing list
pve-devel@pve.proxmox.com
https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to