diff --git a/game/engines/default/engine/ui/ImageList.lua b/game/engines/default/engine/ui/ImageList.lua
index 84c93c2128adf6b66945460a0421fe3f079ed7bf..957dc85705cf458a73de043ccf195ff64e3b2d9e 100644
--- a/game/engines/default/engine/ui/ImageList.lua
+++ b/game/engines/default/engine/ui/ImageList.lua
@@ -99,7 +99,7 @@ function _M:generate()
 
 		self.sel_j = util.bound(self.scroll + math.floor(by / (self.tile_h + self.padding)), 1, self.max)
 		self.sel_i = util.bound(1 + math.floor(bx / (self.tile_w + self.padding)), 1, self.nb_w)
-		if button == "left" and event == "button" then self:onUse(button) end
+		if (button == "left" or button == "right") and event == "button" then self:onUse(button) end
 		self:onSelect()
 	end)
 	self.key:addBinds{
@@ -176,7 +176,7 @@ function _M:onUse(button, forcectrl)
 			if not (forcectrl == true or (forcectrl == nil and core.key.modState("ctrl"))) then self:clearSelection() end
 			item.selected = not item.selected
 		end
-		self.fct(item)
+		self.fct(item, button)
 	end
 end