Index: binaries/data/mods/mod/gui/modio/modio.js
===================================================================
--- binaries/data/mods/mod/gui/modio/modio.js
+++ binaries/data/mods/mod/gui/modio/modio.js
@@ -158,7 +158,9 @@
function displayMods()
{
let modsAvailableList = Engine.GetGUIObjectByName("modsAvailableList");
- let selectedMod = modsAvailableList.list[modsAvailableList.selected];
+ let index = modsAvailableList.multiSelected.length ? modsAvailableList.multiSelected[0] : -1;
+ let selectedMod = modsAvailableList.list[index];
+ modsAvailableList.multiSelected = [];
modsAvailableList.selected = -1;
let displayedMods = clone(g_ModsAvailableOnline);
@@ -187,6 +189,7 @@
function clearModList()
{
let modsAvailableList = Engine.GetGUIObjectByName("modsAvailableList");
+ modsAvailableList.multiSelected = [];
modsAvailableList.selected = -1;
for (let listIdx of Object.keys(modsAvailableList).filter(key => key.startsWith("list")))
modsAvailableList[listIdx] = [];
@@ -196,10 +199,11 @@
{
let modsAvailableList = Engine.GetGUIObjectByName("modsAvailableList");
- if (modsAvailableList.selected == -1)
+ if (!modsAvailableList.multiSelected.length)
return undefined;
- return +modsAvailableList.list[modsAvailableList.selected];
+ let index = modsAvailableList.multiSelected.length ? modsAvailableList.multiSelected[0] : -1;
+ return +modsAvailableList.list[index];
}
function showModDescription()
Index: binaries/data/mods/mod/gui/modio/modio.xml
===================================================================
--- binaries/data/mods/mod/gui/modio/modio.xml
+++ binaries/data/mods/mod/gui/modio/modio.xml
@@ -41,6 +41,7 @@
sortable="true"
selected_column="name"
selected_column_order="1"
+ multiSelection_enabled="false"
font="sans-stroke-13"
>
showModDescription();
Index: binaries/data/mods/mod/gui/modmod/modmod.xml
===================================================================
--- binaries/data/mods/mod/gui/modmod/modmod.xml
+++ binaries/data/mods/mod/gui/modmod/modmod.xml
@@ -57,7 +57,7 @@