Fix dirty state update of editable combobox

Editable combobox didn't update it's dirty state correctly. CB had it's own
internal value changed event, which was incorrectly used. It was removed and
widget's value_changed event was used instead.
This commit is contained in:
Petr Vobornik committed 2013-03-06 12:55:27 +01:00
1 parent 32a7801cf4
commit 86f24dab43
2 files changed
+3 -25

No files matched your search

+2 -22
View File
@@ -714,26 +714,6 @@ IPA.select_field = function(spec) {
return that;
};
IPA.combobox_field = function(spec) {
spec = spec || {};
var that = IPA.field(spec);
that.widgets_created = function() {
that.field_widgets_created();
that.widget.input_field_changed.attach(that.on_input_field_changed);
};
that.on_input_field_changed = function() {
that.validate();
};
return that;
};
IPA.link_field = function(spec) {
spec = spec || {};
@@ -935,9 +915,9 @@ IPA.field_builder = function(spec) {
IPA.field_factories['checkbox'] = IPA.checkbox_field;
IPA.field_factories['checkboxes'] = IPA.checkboxes_field;
IPA.field_factories['combobox'] = IPA.combobox_field;
IPA.field_factories['combobox'] = IPA.field;
IPA.field_factories['enable'] = IPA.enable_field;
IPA.field_factories['entity_select'] = IPA.combobox_field;
IPA.field_factories['entity_select'] = IPA.field;
IPA.field_factories['field'] = IPA.field;
IPA.field_factories['link'] = IPA.link_field;
IPA.field_factories['multivalued'] = IPA.multivalued_field;
+1 -3
View File
@@ -2080,7 +2080,6 @@ IPA.combobox_widget = function(spec) {
that.size = spec.size || 5;
that.empty_option = spec.empty_option === undefined ? true : spec.empty_option;
that.options = spec.options || [];
that.input_field_changed = IPA.observer();
that.z_index = spec.z_index ? spec.z_index + 9000000 : 9000000;
that.create = function(container) {
@@ -2237,7 +2236,6 @@ IPA.combobox_widget = function(spec) {
return false;
}
that.input_field_changed.notify([], that);
return true;
};
@@ -2245,7 +2243,7 @@ IPA.combobox_widget = function(spec) {
if (!that.editable || that.read_only) {
e.preventDefault();
} else {
that.input_field_changed.notify([], that);
that.value_changed.notify([], that);
}
};