diff options
| author | Géry Debongnie <ged@odoo.com> | 2014-06-27 12:05:34 +0200 |
|---|---|---|
| committer | Géry Debongnie <ged@odoo.com> | 2014-06-27 12:05:34 +0200 |
| commit | 512f7acfdccd4208c9da4d95727e0d8d22889e55 (patch) | |
| tree | 2436c6f912dc921aa568e4f350c971434a8b1079 /addons/web/static/src | |
| parent | 3c1c6888baf4dfd2f774a65a7b57316156bf9a98 (diff) | |
[IMP] autocomplete now display separators
separators given in the search view are now displayed
in the autocomplete widget
Diffstat (limited to 'addons/web/static/src')
| -rw-r--r-- | addons/web/static/src/css/base.css | 8 | ||||
| -rw-r--r-- | addons/web/static/src/css/base.sass | 8 | ||||
| -rw-r--r-- | addons/web/static/src/js/search.js | 23 |
3 files changed, 36 insertions, 3 deletions
diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css index dab2e482a18..c14100a7d5f 100644 --- a/addons/web/static/src/css/base.css +++ b/addons/web/static/src/css/base.css @@ -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; } diff --git a/addons/web/static/src/css/base.sass b/addons/web/static/src/css/base.sass index 523ee846622..e3a84a8f78c 100644 --- a/addons/web/static/src/css/base.sass +++ b/addons/web/static/src/css/base.sass @@ -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 diff --git a/addons/web/static/src/js/search.js b/addons/web/static/src/js/search.js index a8d1571527a..eabc6a9c104 100644 --- a/addons/web/static/src/js/search.js +++ b/addons/web/static/src/js/search.js @@ -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(); }, |
