See code sample below. After calling reset() on a form, rather than resetting hidden fields to their original values as the JavaScript reset() method on a traditional HTML form would, these values are instead wiped to empty strings. Is this a bug, or intended behaviour? I don't like it, as it means I have to manually re-instate initial values after a reset(), and to me, "reset" means "reset to initial state", not "wipe all values".

Code:
Ext.form.FormPanel({
    id: 'my-form',
    items: [{
        id: 'my-hidden-field',
        xtype: 'hidden',
        inputType: 'hidden',
        value: 'foobar'
    }],
    listeners: {
        beforeshow: function(form) {
            console.log(Ext.getCmp('my-hidden-field').getValue()); // --> 'foobar'
            form.getForm().reset();
            console.log(Ext.getCmp('my-hidden-field').getValue()); // --> '' <-- WTF?
    }
}