Skip to content
Snippets Groups Projects
Commit c3c3ef4b authored by srosse's avatar srosse
Browse files

OO-3731: prevent activation loop to disposed the survey controller

parent 8c6150a8
No related branches found
No related tags found
No related merge requests found
...@@ -277,6 +277,10 @@ public class BreadcrumbedStackedPanel extends Panel implements StackedPanel, Bre ...@@ -277,6 +277,10 @@ public class BreadcrumbedStackedPanel extends Panel implements StackedPanel, Bre
} }
return controller; return controller;
} }
public boolean hasController(Controller controller) {
return getIndex(controller) >= 0;
}
@Override @Override
public void popContent() { public void popContent() {
......
...@@ -221,12 +221,15 @@ public class QualityHomeController extends BasicController implements Activateab ...@@ -221,12 +221,15 @@ public class QualityHomeController extends BasicController implements Activateab
} }
private void doOpenUserParticipations(UserRequest ureq) { private void doOpenUserParticipations(UserRequest ureq) {
stackPanel.popUpToRootController(ureq); // reuse existing list controller allow full screen mode et prevent unwanted disposed controllers
OLATResourceable ores = OresHelper.createOLATResourceableInstance(ORES_MY_TYPE, 0l); if(!stackPanel.hasController(executorParticipationListCtrl)) {
WindowControl bwControl = addToHistory(ureq, ores, null); stackPanel.popUpToRootController(ureq);
executorParticipationListCtrl = new ExecutorParticipationsListController(ureq, bwControl, secCallback); OLATResourceable ores = OresHelper.createOLATResourceableInstance(ORES_MY_TYPE, 0l);
listenTo(executorParticipationListCtrl); WindowControl bwControl = addToHistory(ureq, ores, null);
stackPanel.pushController(translate("breadcrumb.executor.participations"), executorParticipationListCtrl); executorParticipationListCtrl = new ExecutorParticipationsListController(ureq, bwControl, secCallback);
listenTo(executorParticipationListCtrl);
stackPanel.pushController(translate("breadcrumb.executor.participations"), executorParticipationListCtrl);
}
} }
private void doOpenSuggestion(UserRequest ureq) { private void doOpenSuggestion(UserRequest ureq) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment