webui: navigation: do not remember selected childs of menu item

Remove behavior which navigated to previously selected child if navigating
to its parent.

It makes navigation more consistent.

Reviewed-By: David Kupka <dkupka@redhat.com>
Reviewed-By: Thierry Bordaz <tbordaz@redhat.com>
This commit is contained in:
Petr Vobornik 2015-04-29 17:46:41 +02:00
parent 6bcb90ef36
commit 8f60139520

View File

@ -402,39 +402,28 @@ define([
_navigate_to_menu_item: function(menu_item) { _navigate_to_menu_item: function(menu_item) {
var child; if (menu_item.entity) {
// entity pages
// always go deeper if child previuosly selected routing.navigate([
if (menu_item.selected_child) { 'entity',
child = this.menu.items.get(menu_item.selected_child); menu_item.entity,
if (child) { menu_item.facet,
this._navigate_to_menu_item(child); menu_item.pkeys,
} menu_item.args]);
} } else if (menu_item.facet) {
if (!child) { // concrete facets
if(menu_item.entity) { routing.navigate(['generic', menu_item.facet, menu_item.args]);
// entity pages } else {
routing.navigate([ // categories, select first posible child, it may be the last
'entity', var children = this.menu.query({parent: menu_item.name });
menu_item.entity, if (children.total) {
menu_item.facet, var success = false;
menu_item.pkeys, for (var i=0; i<children.total;i++) {
menu_item.args]); success = this._navigate_to_menu_item(children[i]);
} else if (menu_item.facet) { if (success) break;
// concrete facets
routing.navigate(['generic', menu_item.facet, menu_item.args]);
} else {
// categories, select first posible child, it may be the last
var children = this.menu.query({parent: menu_item.name });
if (children.total) {
var success = false;
for (var i=0; i<children.total;i++) {
success = this._navigate_to_menu_item(children[i]);
if (success) break;
}
} else {
return false;
} }
} else {
return false;
} }
} }