[x] PR title descriptive (can be used in release notes)
Description
Fixes various issues with fullscreen popups triggered from the template action:
Fixes an issue where a child pop-up on a full screen pop-up closes only on the second attempt (#2195)
Allows navigating back to close a fullscreen pop-up (previously this would navigate to the page in history preceding the template that launched the pop-up. This seems desirable to me but can be discussed, perhaps this should be exposed as a parameter that authors can set.
Currently, this new implementation of fullscreen pop-ups can be triggered using the parameter fullscreen_alt passed to the pop_up action, e.g. click | pop_up: a_template_name | fullscreen_alt: true. This is in order to preserve existing functionality for deployments that already use the fullscreen property. I would welcome suggestions of how we might go about making the migration to using the new logic, or else supporting both options with a nicer syntax.
Dev notes
We currently have two distinct methods triggered by the pop_up action:
If not fullscreen, the pop_up action calls templateNavService.handlePopupAction()
If fullscreen, the pop_up action calls templateService.runStandaloneTemplate()
The runStandaloneTemplate() method is used elsewhere in the code, so we don't want to replace it, but it makes sense to me for the pop_up template action to use the handlePopUp() method with a fullscreen param. This PR therefore tries to incorporate some of the functionality of the former method into the latter, in particular so that navigation functions as expected.
PR Checklist
Description
Fixes various issues with fullscreen popups triggered from the template action:
Currently, this new implementation of fullscreen pop-ups can be triggered using the parameter
fullscreen_alt
passed to thepop_up
action, e.g.click | pop_up: a_template_name | fullscreen_alt: true
. This is in order to preserve existing functionality for deployments that already use thefullscreen
property. I would welcome suggestions of how we might go about making the migration to using the new logic, or else supporting both options with a nicer syntax.Dev notes
We currently have two distinct methods triggered by the
pop_up
action:pop_up
action callstemplateNavService.handlePopupAction()
pop_up
action callstemplateService.runStandaloneTemplate()
TherunStandaloneTemplate()
method is used elsewhere in the code, so we don't want to replace it, but it makes sense to me for thepop_up
template action to use thehandlePopUp()
method with a fullscreen param. This PR therefore tries to incorporate some of the functionality of the former method into the latter, in particular so that navigation functions as expected.Testing
See debug_fullscreen_pop_up_1
Git Issues
Closes #2195
Screenshots/Videos