This widget, as I envision it, would behave accordingly:
- When the user clicks the widget, a list of web maps would open (at minimum, a list of map titles, but enhancements could include thumbnails, etc.)
- When the user clicks one of the maps from the list, that map would open at the same extents.
- If this widget is also included on the new map that opens, then the process could be repeated infinitely, bouncing back and forth, or moving on as necessary, without ever having to search for the same location again.
This functionality would allow each web map to be very simple, and pre-configured for a specific purpose, but would allow the user to choose whichever configuration they would like to see at any point. This would allow the developer to avoid having to add lots of optional layers to map apps, so that the user can choose to see additional data. It would instead be accomplished by simply switching to the map that is built to simply show that data optimally.
The setup for this widget would provide a table with two columns: Map title, and map URL. The program functionality would be to capture the map extents, then add them to the chosen map URL as parameters, so that it opens at the same extents. I believe all the basic functionality exists in ArcGIS Online and Portal web app parameters, so it's just a matter of capturing extents, and formatting the corresponding parameters to append to each URL.
Another variation to this concept (a second widget, or an optional implementation) would be to keep the same web app, but switch the web map service that it displays while keeping extents. I think this would be more complex, and might need some fundamental changes to AGOL and Portal. So, for now this "idea" would apply only to switching web apps by URL.