[FIX] web, hr_timesheet_sheet: make m2o friendly-usable outside of views

Before this commit, m2o external button was always floating outside the
m2o main DOM element, on the right. This induced problems when using the
m2o outside of views (like in Odoo Studio). Now, the m2o design is made
so that this button is inside the m2o, except in form views where we
expect the button to overflow in the tables' right paddings.
This commit is contained in:
qsm-odoo
2017-10-12 13:39:17 +02:00
parent b8dac2ff32
commit 03ef19e40c
5 changed files with 14 additions and 26 deletions
@@ -28,9 +28,6 @@
.oe_timesheet_button_add {
margin-left: 8px;
}
.o_with_button + .oe_timesheet_button_add {
margin-left: 45px;
}
}
.oe_timesheet_weekly_today {
@@ -47,7 +44,7 @@
> div {
.o-flex-display();
.o-align-items(center);
.o_field_many2one {
min-width: 200px;
margin: 0;
@@ -62,9 +59,6 @@
.o-flex(0, 0, auto);
margin-left: 8px;
}
.o_with_button + .oe_timesheet_button_add {
margin-left: 45px;
}
}
}
}
@@ -422,7 +422,7 @@ var FieldMany2One = AbstractField.extend({
_updateExternalButton: function () {
var has_external_button = !this.nodeOptions.no_open && !this.floating && this.isSet();
this.$external_button.toggle(has_external_button);
this.$el.toggleClass('o_with_button', has_external_button);
this.$el.toggleClass('o_with_button', has_external_button); // Should not be required anymore but kept for compatibility
},
+1 -9
View File
@@ -49,7 +49,7 @@
// Dropdowns input (many2one, ...)
.o_input_dropdown {
.o-flex(1, 0, auto);
.o-flex(1, 1, auto);
position: relative;
width: 100%;
@@ -185,14 +185,6 @@
color: @brand-success;
}
// Many2One
&.o_field_many2one {
.o-inline-flex-display();
> span, > button {
.o-flex(0, 0, auto);
}
}
// Handle widget
&.o_row_handle {
cursor: ns-resize;
+11 -6
View File
@@ -64,12 +64,6 @@
.o-align-self(center);
}
}
.o_row .o_field_many2one, .o_field_many2one.oe_inline {
&.o_with_button:not(:last-child) { // If invisible element as last child, this line has no effect but that's not very important
margin-right: (35px + (@odoo-form-spacing-unit/2));
}
}
}
.o_row > div > .o_field_widget {
@@ -338,6 +332,17 @@
}
}
:not(.o_row) > .o_field_widget,
.o_row > .o_field_widget:last-child { // Note: this does not take care
// of an invisible last-child but
// it does not really matter
// Makes extra buttons (e.g. m2o external button) overflow on the
// right padding of the parent element
.o_input_dropdown {
.o-flex(1, 0, auto);
}
}
&.o_label_nowrap .o_form_label {
white-space: nowrap;
}
@@ -153,9 +153,6 @@
.o_field_widget {
min-width: 0;
}
.o_with_button .o_input_dropdown {
width: 1%; // Hack so that the sibling button is not overlapped
}
.o_input_dropdown, .o_datepicker {
> .o_input {
padding-right: 15px; // To prevent caret overlapping