@@ -99,23 +99,25 @@ FocusScope {
99 function itemPressedAndHeld(index, result, resultsModel, limitedCategoryItemCount, categoryId) {
99 function itemPressedAndHeld(index, result, resultsModel, limitedCategoryItemCount, categoryId) {
100 clearMaybePreviewData();
100 clearMaybePreviewData();
102− if (scope.preview(result, categoryId)) {
103− openPreview(index, resultsModel, limitedCategoryItemCount, categoryId);
102+ openPreview(result, index, resultsModel, limitedCategoryItemCount, categoryId);
107− function openPreview(index, resultsModel, limitedCategoryItemCount, categoryId) {
105+ function openPreview(result, index, resultsModel, limitedCategoryItemCount, categoryId) {
106+ var previewStack = scope.preview(result, categoryId);
108− if (limitedCategoryItemCount > 0) {
108+ if (limitedCategoryItemCount > 0) {
109− previewLimitModel.model = resultsModel;
109+ previewLimitModel.model = resultsModel;
110− previewLimitModel.limit = limitedCategoryItemCount;
110+ previewLimitModel.limit = limitedCategoryItemCount;
111− subPageLoader.model = previewLimitModel;
111+ subPageLoader.model = previewLimitModel;
112− } else {
112+ } else {
113− subPageLoader.model = resultsModel;
113+ subPageLoader.model = resultsModel;
115+ subPageLoader.initialIndex = -1;
116+ subPageLoader.initialIndex = index;
117+ subPageLoader.categoryId = categoryId;
118+ subPageLoader.previewStack = previewStack;
119+ subPageLoader.openSubPage("preview");
115− subPageLoader.initialIndex = -1;
116− subPageLoader.initialIndex = index;
117− subPageLoader.categoryId = categoryId;
118− subPageLoader.openSubPage("preview");
121 Binding {
123 Binding {
@@ -163,7 +165,8 @@ FocusScope {
163 onHideDash: subPageLoader.closeSubPage()
165 onHideDash: subPageLoader.closeSubPage()
164 onPreviewRequested: { // (QVariant const& result)
166 onPreviewRequested: { // (QVariant const& result)
165 if (result === scopeView.maybePreviewResult) {
167 if (result === scopeView.maybePreviewResult) {
166− openPreview(scopeView.maybePreviewIndex,
169+ scopeView.maybePreviewIndex,
167 scopeView.maybePreviewResultsModel,
170 scopeView.maybePreviewResultsModel,
168 scopeView.maybePreviewLimitedCategoryItemCount,
171 scopeView.maybePreviewLimitedCategoryItemCount,
169 scopeView.maybePreviewCategoryId);
172 scopeView.maybePreviewCategoryId);
@@ -758,6 +761,7 @@ FocusScope {
758 property var scope: scopeView.scope
761 property var scope: scopeView.scope
759 property var scopeStyle: scopeView.scopeStyle
762 property var scopeStyle: scopeView.scopeStyle
760 property int initialIndex: -1
763 property int initialIndex: -1
764+ property var previewStack;
761 property string categoryId
765 property string categoryId
762 property var model: null
766 property var model: null
@@ -791,6 +795,8 @@ FocusScope {
791 item.initialIndex = Qt.binding(function() { return subPageLoader.initialIndex; } )
795 item.initialIndex = Qt.binding(function() { return subPageLoader.initialIndex; } )
792 item.model = Qt.binding(function() { return subPageLoader.model; } )
796 item.model = Qt.binding(function() { return subPageLoader.model; } )
793 item.categoryId = Qt.binding(function() { return subPageLoader.categoryId; } )
797 item.categoryId = Qt.binding(function() { return subPageLoader.categoryId; } )
798+ item.initialIndexPreviewStack = subPageLoader.previewStack;
799+ subPageLoader.previewStack = null;
795 open = true;
801 open = true;