summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js
diff options
context:
space:
mode:
authorFabien Meghazi <fme@openerp.com>2012-08-06 12:32:42 +0200
committerFabien Meghazi <fme@openerp.com>2012-08-06 12:32:42 +0200
commitb950d2c785a7a2df53ec9bf07c445c73a17f7580 (patch)
tree4d511097005254b198d0d7e6123613cbc28650ad /addons/web/static/src/js
parent5b960994db3a864a3a8402d4142e77f8ccfb430d (diff)
[FIX] Fixed breadcrumb's history_back
bzr revid: fme@openerp.com-20120806103242-p3mhze2rgmmwchdx
Diffstat (limited to 'addons/web/static/src/js')
-rw-r--r--addons/web/static/src/js/views.js14
1 files changed, 7 insertions, 7 deletions
diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js
index 1324b564456..ae46d3d9ff1 100644
--- a/addons/web/static/src/js/views.js
+++ b/addons/web/static/src/js/views.js
@@ -74,10 +74,15 @@ instance.web.ActionManager = instance.web.Widget.extend({
return false;
}
var title = last.get_title();
- if (title.length > 1) {
+ if (_.isArray(title) && title.length > 1) {
return this.select_breadcrumb(this.breadcrumbs.length - 1, title.length - 2);
+ } else if (this.breadcrumbs.length === 1) {
+ // Only one single titled item in breadcrumb, most of the time you want to trigger back to home
+ return false;
} else {
- return this.select_breadcrumb(this.breadcrumbs.length - 2);
+ var prev = this.breadcrumbs[this.breadcrumbs.length - 2];
+ title = prev.get_title();
+ return this.select_breadcrumb(this.breadcrumbs.length - 2, _.isArray(title) ? title.length - 1 : undefined);
}
},
on_breadcrumb_clicked: function(ev) {
@@ -100,11 +105,6 @@ instance.web.ActionManager = instance.web.Widget.extend({
}
}
var item = this.breadcrumbs[index];
- if (!item) {
- // TODO fme: this will probably happens when an action contains only one form view (does not impact wizards)
- console.warn("Could not select breadcrumb at index", index);
- return false;
- }
item.show(subindex);
this.inner_widget = item.widget;
return true;