var values = facet.values;
if (_.isEmpty(this.attrs.context) && values.length === 1) {
var c = {};
- c['default_' + this.attrs.name] = values.at(0).get('value');
+ var v = values.at(0);
+ if (v.get('operator') !== 'ilike') {
+ c['default_' + this.attrs.name] = v.get('value');
+ }
return c;
}
return this._super(facet);
ev.preventDefault();
return;
}
+ // ENTER is caugth at KeyUp rather than KeyDown to avoid firing
+ // before all regular keystrokes have been processed
+ if (ev.which === $.ui.keyCode.ENTER) {
+ if (self.current_result && self.get_search_string().length) {
+ self.select_item(ev);
+ }
+ return;
+ }
if (!self.searching) {
self.searching = true;
return;
});
this.$input.on('keydown', function (ev) {
switch (ev.which) {
+ // TAB and direction keys are handled at KeyDown because KeyUp
+ // is not guaranteed to fire.
+ // See e.g. https://github.com/aef-/jquery.masterblaster/issues/13
case $.ui.keyCode.TAB:
- case $.ui.keyCode.ENTER:
if (self.current_result && self.get_search_string().length) {
self.select_item(ev);
}