diff --git a/addons/point_of_sale/static/src/xml/Screens/PaymentScreen/PaymentScreen.xml b/addons/point_of_sale/static/src/xml/Screens/PaymentScreen/PaymentScreen.xml
index be1507ed101..a06e09db484 100644
--- a/addons/point_of_sale/static/src/xml/Screens/PaymentScreen/PaymentScreen.xml
+++ b/addons/point_of_sale/static/src/xml/Screens/PaymentScreen/PaymentScreen.xml
@@ -8,14 +8,14 @@
-
- Back
+
+ Back
Payment
- Validate
-
+ Validate
+
diff --git a/addons/point_of_sale/static/src/xml/Screens/TicketScreen/TicketScreen.xml b/addons/point_of_sale/static/src/xml/Screens/TicketScreen/TicketScreen.xml
index abdba9bb63e..638db944fba 100644
--- a/addons/point_of_sale/static/src/xml/Screens/TicketScreen/TicketScreen.xml
+++ b/addons/point_of_sale/static/src/xml/Screens/TicketScreen/TicketScreen.xml
@@ -6,7 +6,7 @@
-
+
diff --git a/addons/pos_restaurant/__manifest__.py b/addons/pos_restaurant/__manifest__.py
index d4b234ee9d5..ad766ec99d5 100644
--- a/addons/pos_restaurant/__manifest__.py
+++ b/addons/pos_restaurant/__manifest__.py
@@ -42,6 +42,7 @@ This module adds several features to the Point of Sale that are specific to rest
'static/src/xml/Screens/SplitBillScreen/SplitOrderline.xml',
'static/src/xml/Screens/ReceiptScreen/OrderReceipt.xml',
'static/src/xml/Screens/ProductScreen/Orderline.xml',
+ 'static/src/xml/Screens/PaymentScreen/PaymentScreen.xml',
'static/src/xml/Screens/PaymentScreen/PaymentScreenElectronicPayment.xml',
'static/src/xml/Screens/FloorScreen/FloorScreen.xml',
'static/src/xml/Screens/FloorScreen/EditBar.xml',
diff --git a/addons/pos_restaurant/static/src/css/restaurant.css b/addons/pos_restaurant/static/src/css/restaurant.css
index d2741781513..72ec46cef06 100644
--- a/addons/pos_restaurant/static/src/css/restaurant.css
+++ b/addons/pos_restaurant/static/src/css/restaurant.css
@@ -541,6 +541,7 @@
height: 100%;
width: 100%;
text-align: right;
+ white-space: nowrap;
}
.ticket-screen .tip-cell input {
diff --git a/addons/pos_restaurant/static/src/js/Screens/TicketScreen.js b/addons/pos_restaurant/static/src/js/Screens/TicketScreen.js
index 83ca91882bf..c2bb21333a9 100644
--- a/addons/pos_restaurant/static/src/js/Screens/TicketScreen.js
+++ b/addons/pos_restaurant/static/src/js/Screens/TicketScreen.js
@@ -20,10 +20,16 @@ odoo.define('pos_restaurant.TicketScreen', function (require) {
}
}
get filterOptions() {
- return [...super.filterOptions, 'Tipping'];
+ var filterOptions = super.filterOptions;
+ if (this.env.pos.config.set_tip_after_payment) {
+ var idx = filterOptions.indexOf('Payment');
+ filterOptions[idx] = 'Open';
+ }
+ return [...filterOptions, 'Tipping'];
}
get _screenToStatusMap() {
return Object.assign(super._screenToStatusMap, {
+ PaymentScreen: this.env.pos.config.set_tip_after_payment ? 'Open' : super._screenToStatusMap.PaymentScreen,
TipScreen: 'Tipping',
});
}
diff --git a/addons/pos_restaurant/static/src/xml/Screens/PaymentScreen/PaymentScreen.xml b/addons/pos_restaurant/static/src/xml/Screens/PaymentScreen/PaymentScreen.xml
new file mode 100644
index 00000000000..7a460e5ed9b
--- /dev/null
+++ b/addons/pos_restaurant/static/src/xml/Screens/PaymentScreen/PaymentScreen.xml
@@ -0,0 +1,24 @@
+
+
+
+
+
+ env.pos.config.set_tip_after_payment and !currentOrder.is_paid()
+
+
+
+
+ Keep Open
+
+ $0
+
+
+
+
+ Close Tab
+
+ $0
+
+
+
+
diff --git a/addons/pos_restaurant/static/src/xml/Screens/TipScreen.xml b/addons/pos_restaurant/static/src/xml/Screens/TipScreen.xml
index a6d52581f70..9142977513e 100644
--- a/addons/pos_restaurant/static/src/xml/Screens/TipScreen.xml
+++ b/addons/pos_restaurant/static/src/xml/Screens/TipScreen.xml
@@ -19,7 +19,7 @@
Add a tip
- Validate
+ Settle