[FIX] add scrollbar to filters menu if needed (web client)

the filters menu can quickly grow if the user adds many conditions.
Once it grows out of the screen, the lower buttons can not be reached
anymore.  This patch adds a vertical scrollbar to fix this issue.  It
has to use some javascript to update its max-height property.
This commit is contained in:
Géry Debongnie
2014-11-12 09:26:30 +01:00
parent 30e21de532
commit 16b26e3883
3 changed files with 13 additions and 1 deletions
+5 -1
View File
@@ -532,7 +532,7 @@
background-image: -webkit-radial-gradient(circle, #eee 0%, #ccc 40%, #bbb 100%);
background-image: -moz-radial-gradient(#eee 0%, #ccc 40%, #bbb 100%);
background-image: -ms-radial-gradient(#eee 0%, #ccc 40%, #bbb 100%);
background-image: radial-gradient(circle, #eeeeee 0%, #cccccc 40%, #bbbbbb 100%);
background-image: radial-gradient(circle, #eee 0%, #ccc 40%, #bbb 100%);
}
.openerp .oe_kanban_status_green {
background: green;
@@ -1361,6 +1361,10 @@
.openerp .oe-search-options .divider {
display: none;
}
.openerp .oe-search-options .filters-menu {
overflow: auto;
overflow-x: hidden;
}
.openerp .oe-search-options .filters-menu .divider {
display: list-item;
}
+2
View File
@@ -1162,6 +1162,8 @@ $sheet-padding: 16px
.divider
display: none
.filters-menu
overflow: auto
overflow-x: hidden
.divider
display: list-item
.closed-menu
+6
View File
@@ -1441,6 +1441,10 @@ instance.web.search.FilterMenu = instance.web.Widget.extend({
prop.$el.hide();
});
},
update_max_height: function () {
var max_height = $(window).height() - this.$menu[0].getBoundingClientRect().top - 10;
this.$menu.css('max-height', max_height);
},
toggle_custom_filter_menu: function (is_open) {
this.$add_filter
.toggleClass('closed-menu', !is_open)
@@ -1450,6 +1454,7 @@ instance.web.search.FilterMenu = instance.web.Widget.extend({
this.append_proposition();
}
this.$('.oe-filter-condition').toggle(is_open);
this.update_max_height();
},
append_proposition: function () {
var self = this;
@@ -1458,6 +1463,7 @@ instance.web.search.FilterMenu = instance.web.Widget.extend({
self.propositions.push(prop);
prop.insertBefore(self.$add_filter_menu);
self.$apply_filter.prop('disabled', false);
self.update_max_height();
return prop;
});
},