summaryrefslogtreecommitdiff
path: root/addons/website/static/src
diff options
context:
space:
mode:
authorSiddarth Gajjar <sga@odoo.com>2020-10-16 11:58:12 +0000
committerSiddarth Gajjar <sga@odoo.com>2020-12-10 08:41:35 +0000
commitd44339190ba90c3a3564cc30b78477a1724efaee (patch)
tree187eda621a41c06616677d269ec8996e202a1493 /addons/website/static/src
parent90a178da9f535a7aad59033d697323dc32623b8b (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.js10
-rw-r--r--addons/website/static/src/js/utils.js5
-rw-r--r--addons/website/static/src/scss/website.ui.scss29
-rw-r--r--addons/website/static/src/scss/website.wysiwyg.scss21
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;
+ }
}