[IMP] focus management in date field

bzr revid: xmo@openerp.com-20120620113402-lacdu8fvq9bwrcl6
This commit is contained in:
Xavier Morel 2012-06-20 13:34:02 +02:00
parent 6a4adf2a3b
commit ed0a94f0d7
1 changed files with 11 additions and 6 deletions

View File

@ -1621,12 +1621,14 @@ openerp.web.DateTimeWidget = openerp.web.OldWidget.extend({
showButtonPanel: true showButtonPanel: true
}); });
this.$element.find('img.oe_datepicker_trigger').click(function() { this.$element.find('img.oe_datepicker_trigger').click(function() {
if (!self.readonly && !self.picker('widget').is(':visible')) { if (self.readonly || self.picker('widget').is(':visible')) {
self.picker('setDate', self.value ? openerp.web.auto_str_to_date(self.value) : new Date()); self.$input.focus();
self.$input_picker.show(); return;
self.picker('show');
self.$input_picker.hide();
} }
self.picker('setDate', self.value ? openerp.web.auto_str_to_date(self.value) : new Date());
self.$input_picker.show();
self.picker('show');
self.$input_picker.hide();
}); });
this.set_readonly(false); this.set_readonly(false);
this.value = false; this.value = false;
@ -1636,7 +1638,10 @@ openerp.web.DateTimeWidget = openerp.web.OldWidget.extend({
}, },
on_picker_select: function(text, instance) { on_picker_select: function(text, instance) {
var date = this.picker('getDate'); var date = this.picker('getDate');
this.$input.val(date ? this.format_client(date) : '').change(); this.$input
.val(date ? this.format_client(date) : '')
.change()
.focus();
}, },
set_value: function(value) { set_value: function(value) {
this.value = value; this.value = value;