diff --git a/src/core/classes/page-items-list-manager.ts b/src/core/classes/page-items-list-manager.ts index d7f4afd20..bd374577a 100644 --- a/src/core/classes/page-items-list-manager.ts +++ b/src/core/classes/page-items-list-manager.ts @@ -154,12 +154,10 @@ export abstract class CorePageItemsListManager { // Navigate to item. const params = this.getItemQueryParams(item); + const reset = this.resetNavigation(); const pathPrefix = selectedItemPath ? selectedItemPath.split('/').fill('../').join('') : ''; - await CoreNavigator.navigate(pathPrefix + itemPath, { - params, - reset: CoreScreen.isTablet, - }); + await CoreNavigator.navigate(pathPrefix + itemPath, { params, reset }); } /** @@ -200,6 +198,19 @@ export abstract class CorePageItemsListManager { : null; } + /** + * Check whether to reset navigation when selecting an item. + * + * @returns boolean Whether navigation should be reset. + */ + protected resetNavigation(): boolean { + if (!CoreScreen.isTablet) { + return false; + } + + return !this.splitView?.isNested; + } + /** * Get the item that should be selected by default. */