diff --git a/deluge/ui/web/js/deluge-all/add/OptionsTab.js b/deluge/ui/web/js/deluge-all/add/OptionsTab.js index 45363d68e..c1ff5bca8 100644 --- a/deluge/ui/web/js/deluge-all/add/OptionsTab.js +++ b/deluge/ui/web/js/deluge-all/add/OptionsTab.js @@ -85,7 +85,6 @@ Deluge.add.OptionsTab = Ext.extend(Ext.form.FormPanel, { xtype: 'radiogroup', columns: 1, vertical: true, - disabled: true, labelSeparator: '', items: [{ name: 'compact_allocation', diff --git a/deluge/ui/web/js/ext-extensions/form/RadioGroupFix.js b/deluge/ui/web/js/ext-extensions/form/RadioGroupFix.js index d5a9ce8b5..058cc012f 100644 --- a/deluge/ui/web/js/ext-extensions/form/RadioGroupFix.js +++ b/deluge/ui/web/js/ext-extensions/form/RadioGroupFix.js @@ -37,6 +37,11 @@ Ext.override(Ext.form.RadioGroup, { this.items.each(function(i) { this.relayEvents(i, ['check']); }, this); + if (this.lazyValue) { + this.setValue(this.value); + delete this.value; + delete this.lazyValue; + } Ext.form.RadioGroup.superclass.afterRender.call(this) }, @@ -45,17 +50,15 @@ Ext.override(Ext.form.RadioGroup, { }, getValue: function() { - //var v; return this.items.first().getGroupValue(); - //this.items.each(function(item) { - // v = item.getRawValue(); - // return !item.getValue(); - //}); - //return v; }, setValue: function(v) { - if (!this.items.each) return; + if (!this.items.each) { + this.value = v; + this.lazyValue = true; + return; + } this.items.each(function(item) { if (item.rendered) { var checked = (item.el.getValue() == String(v));