diff --git a/addons/board/static/src/css/dashboard.css b/addons/board/static/src/css/dashboard.css
deleted file mode 100644
index 2d6a7c8e43c..00000000000
--- a/addons/board/static/src/css/dashboard.css
+++ /dev/null
@@ -1,148 +0,0 @@
-@charset "UTF-8";
-.openerp .oe_dashboard_layout_1 .oe_dashboard_column.index_0 {
- width: 100%;
-}
-.openerp .oe_dashboard_layout_1 .oe_dashboard_column.index_1, .openerp .oe_dashboard_layout_1 .oe_dashboard_column.index_2 {
- display: none;
-}
-.openerp .oe_dashboard_layout_1-1 .oe_dashboard_column {
- width: 50%;
-}
-.openerp .oe_dashboard_layout_1-1 .oe_dashboard_column.index_2 {
- display: none;
-}
-.openerp .oe_dashboard_layout_1-1-1 .oe_dashboard_column {
- width: 33%;
-}
-.openerp .oe_dashboard_layout_2-1 .oe_dashboard_column.index_0 {
- width: 70%;
-}
-.openerp .oe_dashboard_layout_2-1 .oe_dashboard_column.index_1 {
- width: 30%;
-}
-.openerp .oe_dashboard_layout_2-1 .oe_dashboard_column.index_2 {
- display: none;
-}
-.openerp .oe_dashboard_layout_1-2 .oe_dashboard_column.index_0 {
- width: 30%;
-}
-.openerp .oe_dashboard_layout_1-2 .oe_dashboard_column.index_1 {
- width: 70%;
-}
-.openerp .oe_dashboard_layout_1-2 .oe_dashboard_column.index_2 {
- display: none;
-}
-.openerp .oe_dashboard_layout_selector ul {
- white-space: nowrap;
-}
-.openerp .oe_dashboard_layout_selector li {
- margin: 0;
- padding: 0;
- list-style-type: none;
- float: left;
-}
-.openerp .oe_dashboard_layout_selector li .oe_dashboard_selected_layout {
- margin-left: -30px;
- vertical-align: bottom;
- margin-bottom: 10px;
-}
-.openerp .oe_dashboard_links {
- text-align: right;
- margin: 0 4px 6px 0;
-}
-.openerp .oe_dashboard {
- width: 100%;
-}
-.openerp .oe_dashboard .oe_action {
- margin: 0 8px 8px 0;
- background-color: white;
- border: 1px solid;
- border-color: #e5e5e5 #dbdbdb #d2d2d2;
- -moz-border-radius: 3px;
- -webkit-border-radius: 3px;
- border-radius: 3px;
- -moz-box-shadow: 0 0 2px rgba(0, 0, 0, 0.2);
- -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.2);
- box-shadow: 0 0 2px rgba(0, 0, 0, 0.2);
-}
-.oe_dashboard .oe_action input:focus{
- outline: none;
- border: 1px solid #21b799;
-}
-.openerp .oe_dashboard .oe_action .oe_header {
- font-size: 16px;
- vertical-align: middle;
- margin: 0;
- padding: 12px;
- -moz-border-radius: 3px 3px 0 0;
- -webkit-border-radius: 3px 3px 0 0;
- border-radius: 3px 3px 0 0;
-}
-.openerp .oe_dashboard .oe_action .oe_header:hover {
- cursor: move;
-}
-.openerp .oe_dashboard .oe_action .oe_header .oe_icon {
- float: right;
- cursor: pointer;
- color: #b3b3b3;
-}
-.openerp .oe_dashboard .oe_action .oe_header .oe_icon:hover {
- color: #666;
- text-decoration: none;
-}
-.openerp .oe_dashboard .oe_action .oe_header .oe_close:after {
- content: "×";
- margin-left: 4px;
-}
-.openerp .oe_dashboard .oe_action .oe_header .oe_minimize:after {
- content: "-";
- margin-left: 4px;
-}
-.openerp .oe_dashboard .oe_action .oe_header .oe_maximize:after {
- content: "+";
- margin-left: 4px;
-}
-.openerp .oe_dashboard .oe_action .oe_header .oe_header_text {
- visibility: hidden;
- cursor: text;
-}
-.openerp .oe_dashboard .oe_action .oe_header span {
- cursor: pointer;
-}
-.openerp .oe_dashboard .oe_action .oe_header_empty {
- padding-top: 0;
- padding-bottom: 2px;
-}
-.openerp .oe_dashboard .oe_action .oe_button_create {
- margin-left: 4px;
- padding: 0 4px 0 4px;
- height: 16px !important;
-}
-.openerp .oe_dashboard .oe_action .oe_content {
- padding: 0 12px 12px 12px;
-}
-.openerp .oe_dashboard .oe_action .oe_content .oe-view-manager {
- display: block;
-}
-.openerp .oe_dashboard .oe_action .oe_content .oe-view-manager-content {
- display: block;
- position: static;
-}
-.openerp .oe_dashboard .oe_action .oe_content .oe-view-manager-view-kanban {
- position: static;
-}
-.openerp .oe_dashboard .oe_action .oe_content .oe_list_content > thead {
- border-bottom: 1px;
-}
-.openerp .oe_dashboard .oe_action .oe_content .oe_list_content > tbody tr:nth-child(odd) {
- background: transparent;
-}
-.openerp .oe-search-options .add-to-dashboard button {
- margin: 3px 25px;
- display: none;
-}
-.openerp .oe-search-options .add-to-dashboard input {
- width: calc(100% - 50px);
- margin: 3px 25px;
- display: none;
-}
diff --git a/addons/board/static/src/css/dashboard.sass b/addons/board/static/src/css/dashboard.sass
deleted file mode 100644
index e0abfd28b38..00000000000
--- a/addons/board/static/src/css/dashboard.sass
+++ /dev/null
@@ -1,128 +0,0 @@
-@charset "utf-8"
-
-@mixin radius($radius: 5px)
- -moz-border-radius: $radius
- -webkit-border-radius: $radius
- border-radius: $radius
-
-@mixin box-shadow($bsval: 0px 1px 4px #777)
- -moz-box-shadow: $bsval
- -webkit-box-shadow: $bsval
- box-shadow: $bsval
-
-.openerp
- .oe_dashboard_layout_1 .oe_dashboard_column
- &.index_0
- width: 100%
- &.index_1, &.index_2
- display: none
- .oe_dashboard_layout_1-1 .oe_dashboard_column
- width: 50%
- &.index_2
- display: none
- .oe_dashboard_layout_1-1-1 .oe_dashboard_column
- width: 33%
- .oe_dashboard_layout_2-1 .oe_dashboard_column
- &.index_0
- width: 70%
- &.index_1
- width: 30%
- &.index_2
- display: none
- .oe_dashboard_layout_1-2 .oe_dashboard_column
- &.index_0
- width: 30%
- &.index_1
- width: 70%
- &.index_2
- display: none
- .oe_dashboard_layout_selector
- ul
- white-space: nowrap
- li
- margin: 0
- padding: 0
- list-style-type: none
- float: left
- .oe_dashboard_selected_layout
- margin-left: -30px
- vertical-align: bottom
- margin-bottom: 10px
- .oe_dashboard_links
- text-align: right
- margin: 0 4px 6px 0
- .oe_dashboard
- width: 100%
- .oe_action
- margin: 0 8px 8px 0
- background-color: white
- border: 1px solid
- border-color: #e5e5e5 #dbdbdb #d2d2d2
- @include radius(3px)
- @include box-shadow(0 0 2px rgba(0,0,0,0.2))
- .oe_header
- font-size: 16px
- vertical-align: middle
- margin: 0
- padding: 12px
- @include radius(3px 3px 0 0)
-
- //border-bottom: 1px dotted #dbdbdb
- //@include radius(2px 2px 0 0)
- //@include vertical-gradient(#FCFCFC, #DEDEDE)
- &:hover
- cursor: move
- .oe_icon
- float: right
- cursor: pointer
- color: #b3b3b3
- &:hover
- color: #666
- text-decoration: none
- .oe_close:after
- content: "×"
- margin-left: 4px
- .oe_minimize:after
- content: "-"
- margin-left: 4px
- .oe_maximize:after
- content: "+"
- margin-left: 4px
- .oe_header_text
- visibility: hidden
- cursor: text
- span
- cursor: pointer
- .oe_header_empty
- padding-top: 0
- padding-bottom: 2px
- .oe_button_create
- margin-left: 4px
- padding: 0 4px 0 4px
- height: 16px !important
- .oe_content
- padding: 0 12px 12px 12px
- .oe-view-manager
- display: block
- .oe-view-manager-content
- display: block
- position: static
- .oe-view-manager-view-kanban
- position: static
- .oe_list_content
- > thead
- border-bottom: 1px
- > tbody
- tr:nth-child(odd)
- background: transparent
-
-
- .oe-search-options
- .add-to-dashboard
- button
- margin: 3px 25px
- display: none
- input
- width: calc(100% - 50px)
- margin: 3px 25px
- display: none
diff --git a/addons/board/static/src/js/dashboard.js b/addons/board/static/src/js/dashboard.js
index 5320893b15e..f77e43e89ef 100644
--- a/addons/board/static/src/js/dashboard.js
+++ b/addons/board/static/src/js/dashboard.js
@@ -33,7 +33,7 @@ var DashBoard = form_common.FormWidget.extend({
start: function() {
var self = this;
this._super.apply(this, arguments);
- this.$el.addClass('o-dashboard');
+ this.$el.addClass('o_dashboard');
this.$('.oe_dashboard_column').sortable({
connectWith: '.oe_dashboard_column',
@@ -341,14 +341,15 @@ FavoriteMenu.include({
if (am && am.get_inner_widget() instanceof ViewManager) {
this.view_manager = am.get_inner_widget();
this.add_to_dashboard_available = true;
- this.$('.favorites-menu').append(QWeb.render('SearchView.addtodashboard'));
- var $add_to_dashboard = this.$('.add-to-dashboard');
- this.$add_dashboard_btn = $add_to_dashboard.eq(2).find('button');
- this.$add_dashboard_input = $add_to_dashboard.eq(1).find('input');
- this.$add_dashboard_link = $add_to_dashboard.first();
+ this.$('.o_favorites_menu').append(QWeb.render('SearchView.addtodashboard'));
+ this.$add_to_dashboard = this.$('.o_add_to_dashboard');
+ this.$add_dashboard_btn = this.$add_to_dashboard.eq(1).find('button');
+ this.$add_dashboard_input = this.$add_to_dashboard.eq(0).find('input');
+ this.$add_dashboard_link = this.$('.o_add_to_dashboard_link');
var title = this.searchview.get_title();
this.$add_dashboard_input.val(title);
this.$add_dashboard_link.click(function () {
+ event.preventDefault();
self.toggle_dashboard_menu();
});
this.$add_dashboard_btn.click(this.proxy('add_dashboard'));
@@ -356,11 +357,10 @@ FavoriteMenu.include({
},
toggle_dashboard_menu: function (is_open) {
this.$add_dashboard_link
- .toggleClass('closed-menu', !(_.isUndefined(is_open)) ? !is_open : undefined)
- .toggleClass('open-menu', is_open);
- this.$add_dashboard_btn.toggle(is_open);
- this.$add_dashboard_input.toggle(is_open);
- if (this.$add_dashboard_link.hasClass('open-menu')) {
+ .toggleClass('o-closed-menu', !(_.isUndefined(is_open)) ? !is_open : undefined)
+ .toggleClass('o_open_menu', is_open);
+ this.$add_to_dashboard.toggle(is_open);
+ if (this.$add_dashboard_link.hasClass('o_open_menu')) {
this.$add_dashboard_input.focus();
}
},
diff --git a/addons/board/static/src/less/dashboard.less b/addons/board/static/src/less/dashboard.less
new file mode 100644
index 00000000000..af427036a9d
--- /dev/null
+++ b/addons/board/static/src/less/dashboard.less
@@ -0,0 +1,140 @@
+.o_dashboard {
+ // Dashboard layout
+ .oe_dashboard_layout_1 .oe_dashboard_column {
+ &.index_0 {
+ width: 100%;
+ }
+ &.index_1, &.index_2 {
+ display: none;
+ }
+ }
+ .oe_dashboard_layout_1-1 .oe_dashboard_column {
+ width: 50%;
+ &.index_2 {
+ display: none;
+ }
+ }
+ .oe_dashboard_layout_1-1-1 .oe_dashboard_column {
+ width: 33%;
+ }
+ .oe_dashboard_layout_2-1 .oe_dashboard_column {
+ &.index_0 {
+ width: 70%;
+ }
+ &.index_1 {
+ width: 30%;
+ }
+ &.index_2 {
+ display: none;
+ }
+ }
+ .oe_dashboard_layout_1-2 .oe_dashboard_column {
+ &.index_0 {
+ width: 30%;
+ }
+ &.index_1 {
+ width: 70%;
+ }
+ &.index_2 {
+ display: none;
+ }
+ }
+
+ // Layout selector
+ .oe_dashboard_links {
+ text-align: right;
+ margin: 0 4px 6px 0;
+ }
+
+ // Dashboard content
+ .oe_dashboard {
+ width: 100%;
+ .oe_action {
+ margin: 0 8px 8px 0;
+ background-color: white;
+ border: 1px solid;
+ border-color: #e5e5e5 #dbdbdb #d2d2d2;
+ margin: 0 8px 8px 0;
+ .oe_header {
+ font-size: 16px;
+ vertical-align: middle;
+ margin: 0;
+ padding: 12px;
+ &:hover {
+ cursor: move;
+ }
+ .oe_icon {
+ float: right;
+ cursor: pointer;
+ color: #b3b3b3;
+ &:hover {
+ color: #666;
+ text-decoration: none;
+ }
+ }
+ .oe_close:after {
+ content: "×";
+ margin-left: 4px;
+ }
+ .oe_minimize:after {
+ content: "-";
+ margin-left: 4px;
+ }
+ .oe_maximize:after {
+ content: "+";
+ margin-left: 4px;
+ }
+ .oe_header_text {
+ width: auto;
+ visibility: hidden;
+ display: inline-block;
+ cursor: text;
+ }
+ span {
+ cursor: pointer;
+ }
+ }
+ .oe_header_empty {
+ padding-top: 0;
+ padding-bottom: 2px;
+ }
+ .oe_button_create {
+ margin-left: 4px;
+ padding: 0 4px 0 4px;
+ height: 16px !important;
+ }
+ .oe_content {
+ padding: 0 12px 12px 12px;
+ }
+
+ // Override border of many2manytags defined for form_views
+ .o_kanban_view .o_kanban_record .oe_kanban_list_many2many .o_form_field_many2manytags {
+ border: none;
+ }
+ }
+ }
+}
+
+// Layout selector modal
+.oe_dashboard_layout_selector {
+ ul {
+ white-space: nowrap;
+ }
+ li {
+ margin: 0;
+ padding: 0;
+ list-style-type: none;
+ float: left;
+ }
+ .oe_dashboard_selected_layout {
+ margin-left: -30px;
+ vertical-align: bottom;
+ margin-bottom: 10px;
+ }
+}
+
+// Favorites menu in control panel
+.o_add_to_dashboard {
+ display: none; // hidden by default
+ .o-search-options-dropdown-custom-li;
+}
diff --git a/addons/board/static/src/xml/board.xml b/addons/board/static/src/xml/board.xml
index 0c22f273b9a..f0830b83974 100644
--- a/addons/board/static/src/xml/board.xml
+++ b/addons/board/static/src/xml/board.xml
@@ -60,8 +60,14 @@
-
-
-
+
+
+
+
+
+
+
diff --git a/addons/board/views/board.xml b/addons/board/views/board.xml
index 5bf2e75125e..adb12b7001b 100644
--- a/addons/board/views/board.xml
+++ b/addons/board/views/board.xml
@@ -3,7 +3,7 @@
-
+
diff --git a/addons/google_spreadsheet/static/src/js/search.js b/addons/google_spreadsheet/static/src/js/search.js
index 030c84b1a84..abed0a383a3 100644
--- a/addons/google_spreadsheet/static/src/js/search.js
+++ b/addons/google_spreadsheet/static/src/js/search.js
@@ -34,7 +34,7 @@ FavoriteMenu.include({
});
if (am && am.get_inner_widget() instanceof ViewManager) {
this.view_manager = am.get_inner_widget();
- this.$('.favorites-menu').append(QWeb.render('SearchView.addtogooglespreadsheet'));
+ this.$('.o_favorites_menu').append(QWeb.render('SearchView.addtogooglespreadsheet'));
this.$('.add-to-spreadsheet').click(this.add_to_spreadsheet.bind(this));
}
},
diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css
index 37e68889f01..7852f764c19 100644
--- a/addons/web/static/src/css/base.css
+++ b/addons/web/static/src/css/base.css
@@ -1289,13 +1289,6 @@
top: 3px;
content: "";
}
-.openerp .oe-search-options .open-menu a:before {
- font-family: FontAwesome;
- position: absolute;
- left: 9px;
- top: 3px;
- content: "";
-}
.openerp .oe-search-options .oe-select-group {
margin: 3px 25px;
}
@@ -1506,16 +1499,16 @@
.openerp .oe_pivot .dropdown-menu .pivot-dropdown-submenu:hover > .dropdown-menu {
display: block;
}
-.openerp .o-dashboard .oe_pivot th {
+.openerp .o_dashboard .oe_pivot th {
border-top: 1px solid #bfbfb6;
}
-.openerp .o-dashboard .oe_pivot th, .openerp .o-dashboard .oe_pivot .oe-closed, .openerp .o-dashboard .oe_pivot .oe-opened {
+.openerp .o_dashboard .oe_pivot th, .openerp .o_dashboard .oe_pivot .oe-closed, .openerp .o_dashboard .oe_pivot .oe-opened {
border-left: 1px solid #bfbfb6;
}
-.openerp .o-dashboard .oe_graph svg {
+.openerp .o_dashboard .oe_graph svg {
min-height: 250px;
}
-.openerp .o-dashboard .oe_graph .nv-pieLabels {
+.openerp .o_dashboard .oe_graph .nv-pieLabels {
display: none;
}
.openerp .oe_graph {
diff --git a/addons/web/static/src/css/base.sass b/addons/web/static/src/css/base.sass
index fa4ea1c1ab6..d8248feb9ad 100644
--- a/addons/web/static/src/css/base.sass
+++ b/addons/web/static/src/css/base.sass
@@ -1095,21 +1095,6 @@ $sheet-padding: 16px
.filters-menu
.divider
display: list-item
- .closed-menu
- a:before
- font-family: FontAwesome
- position: absolute
- left: 12px
- top: 3px
- content: "\f0da"
- .open-menu
- a:before
- font-family: FontAwesome
- position: absolute
- left: 9px
- top: 3px
- content: "\f0d7"
-
.oe-select-group
margin: 3px 25px
.oe-add-group
@@ -1283,7 +1268,7 @@ $sheet-padding: 16px
.pivot-dropdown-submenu:hover
> .dropdown-menu
display: block
- .o-dashboard
+ .o_dashboard
.oe_pivot
th
border-top: 1px solid #bfbfb6
diff --git a/addons/web/static/src/js/views/search_menus.js b/addons/web/static/src/js/views/search_menus.js
index a2f6c8970ef..faa67d890c2 100644
--- a/addons/web/static/src/js/views/search_menus.js
+++ b/addons/web/static/src/js/views/search_menus.js
@@ -68,10 +68,10 @@ return Widget.extend({
},
toggle_save_menu: function (is_open) {
this.$save_search
- .toggleClass('closed-menu', !(_.isUndefined(is_open)) ? !is_open : undefined)
- .toggleClass('open-menu', is_open);
+ .toggleClass('o_closed_menu', !(_.isUndefined(is_open)) ? !is_open : undefined)
+ .toggleClass('o_open_menu', is_open);
this.$save_name.toggle(is_open);
- if (this.$save_search.hasClass('open-menu')) {
+ if (this.$save_search.hasClass('o_open_menu')) {
this.$save_name.find('input').first().focus();
}
},
@@ -320,10 +320,10 @@ return Widget.extend({
},
toggle_custom_filter_menu: function (is_open) {
this.$add_filter
- .toggleClass('closed-menu', !(_.isUndefined(is_open)) ? !is_open : undefined)
- .toggleClass('open-menu', is_open);
+ .toggleClass('o_closed_menu', !(_.isUndefined(is_open)) ? !is_open : undefined)
+ .toggleClass('o_open_menu', is_open);
this.$add_filter_menu.toggle(is_open);
- if (this.$add_filter.hasClass('closed-menu') && (!this.propositions.length)) {
+ if (this.$add_filter.hasClass('o_closed_menu') && (!this.propositions.length)) {
this.append_proposition();
}
this.$('.oe-filter-condition').toggle(is_open);
@@ -428,10 +428,10 @@ return Widget.extend({
},
toggle_add_menu: function (is_open) {
this.$add_group
- .toggleClass('closed-menu', !(_.isUndefined(is_open)) ? !is_open : undefined)
- .toggleClass('open-menu', is_open);
+ .toggleClass('o_closed_menu', !(_.isUndefined(is_open)) ? !is_open : undefined)
+ .toggleClass('o_open_menu', is_open);
this.$add_group_menu.toggle(is_open);
- if (this.$add_group.hasClass('open-menu')) {
+ if (this.$add_group.hasClass('o_open_menu')) {
this.$group_selector.focus();
}
},
diff --git a/addons/web/static/src/less/enterprise_compatibility.less b/addons/web/static/src/less/enterprise_compatibility.less
index 8d97c3b74d3..cd2468336a1 100644
--- a/addons/web/static/src/less/enterprise_compatibility.less
+++ b/addons/web/static/src/less/enterprise_compatibility.less
@@ -292,3 +292,39 @@
}
}
}
+
+// Search options dropdowns
+.o-search-options-dropdown-custom-li() {
+ margin: 3px 25px;
+ width: auto;
+ max-width: 250px;
+
+}
+// Open and closed carets in dropdowns
+.o_closed_menu {
+ position: relative;
+ a:before {
+ .o-caret-right;
+ .o-position-absolute(@top: 50%, @left: 12px);
+ margin-top: (-@caret-width-base);
+ }
+}
+.o_open_menu {
+ position: relative;
+ a:before {
+ .o-caret-down;
+ .o-position-absolute(@top: 50%, @left: 9px);
+ margin-top: (-@caret-width-base);
+ }
+}
+
+// Favorites Menu -> Add to my dashboard
+.o_favorites_menu {
+ .o_add_to_dashboard_input {
+ .form-control();
+ }
+ .o_add_to_dashboard_button {
+ .btn();
+ .btn-default();
+ }
+}
diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml
index 35ae0919bf6..46805fe2c5e 100644
--- a/addons/web/static/src/xml/base.xml
+++ b/addons/web/static/src/xml/base.xml
@@ -1638,7 +1638,7 @@
Filters
@@ -1649,7 +1649,7 @@
@@ -1665,9 +1665,9 @@
-