[IMP] autocomplete now display separators
separators given in the search view are now displayed in the autocomplete widget
This commit is contained in:
@@ -1620,6 +1620,14 @@
|
||||
background-color: #7c7bad;
|
||||
color: white;
|
||||
}
|
||||
.openerp .oe_searchview .oe-autocomplete ul li.oe-separator {
|
||||
margin-top: 2px;
|
||||
margin-bottom: 2px;
|
||||
border-top: 1px solid #afafb6;
|
||||
}
|
||||
.openerp .oe_searchview .oe-autocomplete ul li.oe-separator:last-child {
|
||||
display: none;
|
||||
}
|
||||
.openerp .oe_searchview_drawer_container {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
@@ -1332,6 +1332,14 @@ $sheet-padding: 16px
|
||||
li.oe-selection-focus
|
||||
background-color: #7c7bad
|
||||
color: white
|
||||
li.oe-separator
|
||||
margin-top: 2px
|
||||
margin-bottom: 2px
|
||||
border-top: 1px solid #afafb6
|
||||
li.oe-separator:last-child
|
||||
display: none
|
||||
|
||||
|
||||
.oe_searchview_drawer_container
|
||||
overflow: auto
|
||||
.oe_searchview_drawer
|
||||
|
||||
@@ -846,7 +846,9 @@ instance.web.SearchViewDrawer = instance.web.Widget.extend({
|
||||
}
|
||||
|
||||
switch (item.tag) {
|
||||
case 'separator': case 'newline':
|
||||
case 'separator':
|
||||
case 'newline':
|
||||
filters.push(new instance.web.search.Separator(this))
|
||||
break;
|
||||
case 'filter':
|
||||
filters.push(new instance.web.search.Filter(item, group));
|
||||
@@ -1311,6 +1313,13 @@ instance.web.search.Filter = instance.web.search.Input.extend(/** @lends instanc
|
||||
get_context: function () { },
|
||||
get_domain: function () { },
|
||||
});
|
||||
|
||||
instance.web.search.Separator = instance.web.search.Input.extend({
|
||||
complete: function () {
|
||||
return {is_separator: true};
|
||||
}
|
||||
});
|
||||
|
||||
instance.web.search.Field = instance.web.search.Input.extend( /** @lends instance.web.search.Field# */ {
|
||||
template: 'SearchView.field',
|
||||
default_operator: '=',
|
||||
@@ -2397,9 +2406,17 @@ instance.web.search.AutoComplete = instance.web.Widget.extend({
|
||||
var self = this;
|
||||
var $list = this.$('ul');
|
||||
$list.empty();
|
||||
var render_separator = false;
|
||||
results.forEach(function (result) {
|
||||
var $item = self.make_list_item(result).appendTo($list);
|
||||
result.$el = $item;
|
||||
if (result.is_separator) {
|
||||
if (render_separator)
|
||||
$list.append($('<li>').addClass('oe-separator'));
|
||||
render_separator = false;
|
||||
} else {
|
||||
var $item = self.make_list_item(result).appendTo($list);
|
||||
result.$el = $item;
|
||||
render_separator = true;
|
||||
}
|
||||
});
|
||||
this.show();
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user