Index: binaries/data/mods/public/gui/pregame/MainMenuItems.js =================================================================== --- binaries/data/mods/public/gui/pregame/MainMenuItems.js +++ binaries/data/mods/public/gui/pregame/MainMenuItems.js @@ -24,15 +24,23 @@ "tooltip": colorizeHotkey(translate("%(hotkey)s: View the structure tree of civilizations featured in 0 A.D."), "structree"), "hotkey": "structree", "onPress": () => { - Engine.PushGuiPage("page_structree.xml"); - } + let callback = data => { + if (data.nextPage) + Engine.PushGuiPage(data.nextPage, { "civ": data.civ }, callback); + }; + Engine.PushGuiPage("page_structree.xml", {}, callback); + }, }, { "caption": translate("History"), "tooltip": colorizeHotkey(translate("%(hotkey)s: Learn about the many civilizations featured in 0 A.D."), "civinfo"), "hotkey": "civinfo", "onPress": () => { - Engine.PushGuiPage("page_civinfo.xml"); + let callback = data => { + if (data.nextPage) + Engine.PushGuiPage(data.nextPage, { "civ": data.civ }, callback); + }; + Engine.PushGuiPage("page_civinfo.xml", {}, callback); } } ] Index: binaries/data/mods/public/gui/session/hotkeys/misc.xml =================================================================== --- binaries/data/mods/public/gui/session/hotkeys/misc.xml +++ binaries/data/mods/public/gui/session/hotkeys/misc.xml @@ -29,15 +29,15 @@ - openGameSummary(); + toggleGameSummary(); - openStrucTree("page_civinfo.xml"); + toggleStrucTree("page_civinfo.xml"); - openStrucTree("page_structree.xml"); + toggleStrucTree("page_structree.xml"); Index: binaries/data/mods/public/gui/session/menu.js =================================================================== --- binaries/data/mods/public/gui/session/menu.js +++ binaries/data/mods/public/gui/session/menu.js @@ -119,13 +119,13 @@ g_IsMenuOpen = !g_IsMenuOpen; } -function optionsMenuButton() +function toggleOptionsDialog() { closeOpenDialogs(); openOptions(); } -function lobbyDialogButton() +function toggleLobbyDialog() { if (!Engine.HasXmppClient()) return; @@ -1082,7 +1082,7 @@ * Allows players to see their own summary. * If they have shared ally vision researched, they are able to see the summary of there allies too. */ -function openGameSummary() +function toggleGameSummary() { closeOpenDialogs(); pauseGame(); @@ -1107,7 +1107,7 @@ resumeGameAndSaveSummarySelectedData); } -function openStrucTree(page) +function toggleStrucTree(page) { closeOpenDialogs(); pauseGame(); Index: binaries/data/mods/public/gui/session/menu.xml =================================================================== --- binaries/data/mods/public/gui/session/menu.xml +++ binaries/data/mods/public/gui/session/menu.xml @@ -50,7 +50,7 @@ tooltip_style="sessionToolTip" > Summary - openGameSummary(); + toggleGameSummary(); @@ -63,7 +63,7 @@ > Lobby Show the multiplayer lobby in a dialog window. - lobbyDialogButton(); + toggleLobbyDialog(); @@ -74,7 +74,7 @@ tooltip_style="sessionToolTip" > Options - optionsMenuButton(); + toggleOptionsDialog(); Index: binaries/data/mods/public/gui/session/top_panel/civ_icon.xml =================================================================== --- binaries/data/mods/public/gui/session/top_panel/civ_icon.xml +++ binaries/data/mods/public/gui/session/top_panel/civ_icon.xml @@ -6,6 +6,6 @@ tooltip_style="sessionToolTipBold" > - openStrucTree(g_CivInfo.page) + toggleStrucTree(g_CivInfo.page) Index: binaries/data/mods/public/gui/summary/summary.js =================================================================== --- binaries/data/mods/public/gui/summary/summary.js +++ binaries/data/mods/public/gui/summary/summary.js @@ -436,6 +436,12 @@ updateCountersTeam(teamCounterFn, panelInfo.counters, panelInfo.headings, index); } +function toggleSummary() +{ + if (g_GameData.gui.isInGame) + continueButton(); +} + function continueButton() { let summarySelectedData = { Index: binaries/data/mods/public/gui/summary/summary.xml =================================================================== --- binaries/data/mods/public/gui/summary/summary.xml +++ binaries/data/mods/public/gui/summary/summary.xml @@ -6,14 +6,11 @@