diff options
| author | Siddarth Gajjar <sga@odoo.com> | 2020-10-16 11:58:12 +0000 |
|---|---|---|
| committer | Siddarth Gajjar <sga@odoo.com> | 2020-12-10 08:41:35 +0000 |
| commit | d44339190ba90c3a3564cc30b78477a1724efaee (patch) | |
| tree | 187eda621a41c06616677d269ec8996e202a1493 /addons/website/static/src | |
| parent | 90a178da9f535a7aad59033d697323dc32623b8b (diff) | |
[IMP] website: improve autocomplete dropdown UI
- Before this commit, Autocomplete dropdown ui is not
compatible with existing editor ui.
- After this, Autocomplete dropdown UI for url and GMAP imrpoved.
closes odoo/odoo#60735
Taskid: 2352870
Closes: https://github.com/odoo/odoo/pull/60735
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
Diffstat (limited to 'addons/website/static/src')
| -rw-r--r-- | addons/website/static/src/js/editor/snippets.options.js | 10 | ||||
| -rw-r--r-- | addons/website/static/src/js/utils.js | 5 | ||||
| -rw-r--r-- | addons/website/static/src/scss/website.ui.scss | 29 | ||||
| -rw-r--r-- | addons/website/static/src/scss/website.wysiwyg.scss | 21 |
4 files changed, 60 insertions, 5 deletions
diff --git a/addons/website/static/src/js/editor/snippets.options.js b/addons/website/static/src/js/editor/snippets.options.js index 9b2940fcdf0..e6e075e1309 100644 --- a/addons/website/static/src/js/editor/snippets.options.js +++ b/addons/website/static/src/js/editor/snippets.options.js @@ -39,7 +39,15 @@ const UrlPickerUserValueWidget = InputUserValueWidget.extend({ this.containerEl.appendChild(linkButton); this.el.classList.add('o_we_large_input'); this.inputEl.classList.add('text-left'); - wUtils.autocompleteWithPages(this, $(this.inputEl)); + const options = { + position: { + collision: 'flip fit', + }, + classes: { + "ui-autocomplete": 'o_website_ui_autocomplete' + }, + } + wUtils.autocompleteWithPages(this, $(this.inputEl), options); }, //-------------------------------------------------------------------------- diff --git a/addons/website/static/src/js/utils.js b/addons/website/static/src/js/utils.js index 508f6ee53ad..f66f562b166 100644 --- a/addons/website/static/src/js/utils.js +++ b/addons/website/static/src/js/utils.js @@ -32,8 +32,9 @@ function loadAnchors(url) { * @param {ServicesMixin|Widget} self - an element capable to trigger an RPC * @param {jQuery} $input */ -function autocompleteWithPages(self, $input) { +function autocompleteWithPages(self, $input, options) { $.widget("website.urlcomplete", $.ui.autocomplete, { + options: options || {}, _create: function () { this._super(); this.widget().menu("option", "items", "> :not(.ui-autocomplete-category)"); @@ -50,7 +51,7 @@ function autocompleteWithPages(self, $input) { }); }, _renderSeparator: function (ul, item) { - return $("<li class='ui-autocomplete-category font-weight-bold text-capitalize m-2'>") + return $("<li class='ui-autocomplete-category font-weight-bold text-capitalize p-2'>") .append(`<div>${item.separator}</div>`) .appendTo(ul); }, diff --git a/addons/website/static/src/scss/website.ui.scss b/addons/website/static/src/scss/website.ui.scss index 7b589c5d22f..88596884fd0 100644 --- a/addons/website/static/src/scss/website.ui.scss +++ b/addons/website/static/src/scss/website.ui.scss @@ -475,3 +475,32 @@ body .modal { color: $info; } } + +.ui-autocomplete.o_website_ui_autocomplete { + max-width: 400px; + font-size: $o-we-sidebar-font-size; + border: none; + background-color: $o-we-sidebar-content-field-dropdown-bg; + box-shadow: $o-we-sidebar-content-field-dropdown-shadow; + > li { + border-bottom: $o-we-sidebar-content-field-border-width solid lighten($o-we-sidebar-content-field-dropdown-border-color, 15%); + border-radius: $o-we-sidebar-content-field-border-radius; + background-color: $o-we-sidebar-content-field-clickable-bg; + color: $o-we-sidebar-content-field-clickable-color; + &.ui-menu-item { + > div { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + line-height: 20px; + &.ui-state-active { + border: $o-we-sidebar-content-field-dropdown-border-width solid transparent; + background-color: $o-we-sidebar-content-field-dropdown-item-bg-hover; + } + } + } + &.ui-autocomplete-category { + background-color: $o-we-bg-lighter; + } + } +} diff --git a/addons/website/static/src/scss/website.wysiwyg.scss b/addons/website/static/src/scss/website.wysiwyg.scss index 2dc34645ed9..a0cdaaedf5d 100644 --- a/addons/website/static/src/scss/website.wysiwyg.scss +++ b/addons/website/static/src/scss/website.wysiwyg.scss @@ -209,9 +209,26 @@ $i: 1; .pac-container { // google map autosuggestion z-index: $zindex-modal-backdrop; // > $o-we-zindex - min-width: 400px; - + width: $o-we-sidebar-width !important; + font-size: $o-we-sidebar-font-size; + margin-left: -$o-we-sidebar-width/2; + border-top: none; + background-color: $o-we-sidebar-content-field-dropdown-bg; + box-shadow: $o-we-sidebar-content-field-dropdown-shadow; &:after { display: none; } + .pac-item { + border-top: $o-we-sidebar-content-field-border-width solid lighten($o-we-sidebar-content-field-dropdown-border-color, 15%); + border-radius: $o-we-sidebar-content-field-border-radius; + background-color: $o-we-sidebar-content-field-clickable-bg; + color: $o-we-sidebar-content-field-clickable-color; + &:hover { + background-color: $o-we-sidebar-content-field-dropdown-item-bg-hover; + cursor: pointer; + } + } + .pac-item-query { + color: $o-we-sidebar-content-field-clickable-color; + } } |
