Merge pull request #1840 from seltonmt012/fix/menu-focus-timer

fix(esx_menu_dialog, esx_menu_list): do not grab NUI focus after the menu closed
This commit is contained in:
_Not_
2026-08-14 19:40:12 -05:00
committed by GitHub
2 changed files with 8 additions and 10 deletions
+4 -8
View File
@@ -1,10 +1,6 @@
local Timeouts, OpenedMenus, MenuType = {}, {}, "dialog" local OpenedMenus, MenuType = {}, "dialog"
local function openMenu(namespace, name, data) local function openMenu(namespace, name, data)
for i = 1, #Timeouts, 1 do
ESX.ClearTimeout(Timeouts[i])
end
OpenedMenus[namespace .. "_" .. name] = true OpenedMenus[namespace .. "_" .. name] = true
SendNUIMessage({ SendNUIMessage({
@@ -14,11 +10,11 @@ local function openMenu(namespace, name, data)
data = data, data = data,
}) })
local timeoutId = ESX.SetTimeout(200, function() ESX.SetTimeout(200, function()
if next(OpenedMenus) then
SetNuiFocus(true, true) SetNuiFocus(true, true)
end
end) end)
table.insert(Timeouts, timeoutId)
end end
local function closeMenu(namespace, name) local function closeMenu(namespace, name)
+2
View File
@@ -12,7 +12,9 @@ CreateThread(function()
data = data, data = data,
}) })
SetTimeout(200, function() SetTimeout(200, function()
if next(OpenedMenus) then
SetNuiFocus(true, true) SetNuiFocus(true, true)
end
end) end)
end end