[FIX] *: missing base.ready() waiting for frontend tours
Frontend tours have to wait for base.ready() before starting otherwise they can find DOM elements whose event handlers have not been attached yet. Note that this is a workaround to ignore these real "bugs" as users should not be able to see buttons they can't click at once but there is no safe and small fix which will resolve that. The time between the DOM becomes visible and handlers are attached is small enough to ignore this bug for now anyway.
This commit is contained in:
@@ -2,9 +2,13 @@ odoo.define('survey.tour_test_survey', function (require) {
|
||||
'use strict';
|
||||
|
||||
var tour = require('web_tour.tour');
|
||||
var base = require("web_editor.base");
|
||||
|
||||
|
||||
tour.register('test_survey', { test: true, url: '/survey/start/user-feedback-form-1/phantom' },
|
||||
tour.register('test_survey', {
|
||||
test: true,
|
||||
url: '/survey/start/user-feedback-form-1/phantom',
|
||||
wait_for: base.ready()
|
||||
},
|
||||
[
|
||||
// Page-1
|
||||
{
|
||||
|
||||
@@ -2,9 +2,12 @@ odoo.define('website.tour.rte', function (require) {
|
||||
'use strict';
|
||||
|
||||
var tour = require("web_tour.tour");
|
||||
var local_storage = require('web.local_storage');
|
||||
var base = require("web_editor.base");
|
||||
|
||||
tour.register('rte_translator', { test: true },
|
||||
tour.register('rte_translator', {
|
||||
test: true,
|
||||
wait_for: base.ready()
|
||||
},
|
||||
[
|
||||
{
|
||||
content: "click on Add a language",
|
||||
|
||||
@@ -2,8 +2,13 @@ odoo.define('website_event_sale.tour', function (require) {
|
||||
'use strict';
|
||||
|
||||
var tour = require('web_tour.tour');
|
||||
var base = require("web_editor.base");
|
||||
|
||||
tour.register('event_buy_tickets', { test: true, url: '/event' },
|
||||
tour.register('event_buy_tickets', {
|
||||
test: true,
|
||||
url: '/event',
|
||||
wait_for: base.ready()
|
||||
},
|
||||
[
|
||||
{
|
||||
content: "Go to the `Events` page",
|
||||
|
||||
@@ -2,8 +2,13 @@ odoo.define('website_sale.tour', function (require) {
|
||||
'use strict';
|
||||
|
||||
var tour = require("web_tour.tour");
|
||||
var base = require("web_editor.base");
|
||||
|
||||
tour.register('shop_buy_product', { test: true, url: '/shop' },
|
||||
tour.register('shop_buy_product', {
|
||||
test: true,
|
||||
url: '/shop',
|
||||
wait_for: base.ready()
|
||||
},
|
||||
[
|
||||
{
|
||||
content: "search ipod",
|
||||
|
||||
@@ -3,6 +3,7 @@ odoo.define('website_sale.test', function (require) {
|
||||
|
||||
require("website_sale.tour");
|
||||
var tour = require("web_tour.tour");
|
||||
var base = require("web_editor.base");
|
||||
|
||||
var steps = tour.tours.shop_buy_product.steps;
|
||||
for (var k=0; k<steps.length; k++) {
|
||||
@@ -15,7 +16,11 @@ for (var k=0; k<steps.length; k++) {
|
||||
}
|
||||
}
|
||||
|
||||
tour.register('shop_customize', { test: true, url: '/shop' },
|
||||
tour.register('shop_customize', {
|
||||
test: true,
|
||||
url: '/shop',
|
||||
wait_for: base.ready()
|
||||
},
|
||||
[
|
||||
{
|
||||
content: "open customize menu",
|
||||
|
||||
Reference in New Issue
Block a user