diff --git a/resource/interface/client/alert.lua b/resource/interface/client/alert.lua index 3543ba9..9ffc5b4 100644 --- a/resource/interface/client/alert.lua +++ b/resource/interface/client/alert.lua @@ -1,4 +1,10 @@ local alert = nil +local keepInput = IsNuiFocusKeepingInput() + +local function resetFocus() + SetNuiFocus(false, false) + SetNuiFocusKeepInput(keepInput) +end ---@class AlertDialogProps ---@field header string; @@ -13,7 +19,10 @@ function lib.alertDialog(data) if alert then return end alert = promise.new() + keepInput = IsNuiFocusKeepingInput() + SetNuiFocus(true, true) + SetNuiFocusKeepInput(false) SendNUIMessage({ action = 'sendAlert', data = data @@ -26,7 +35,7 @@ function lib.closeAlertDialog() if not alert then return end alert:resolve(nil) alert = nil - SetNuiFocus(false, false) + resetFocus() SendNUIMessage({ action = 'closeAlertDialog' }) @@ -35,10 +44,10 @@ end RegisterNUICallback('closeAlert', function(data, cb) cb(1) - SetNuiFocus(false, false) + resetFocus() local promise = alert alert = nil promise:resolve(data) end) -RegisterNetEvent('ox_lib:alertDialog', lib.alertDialog) \ No newline at end of file +RegisterNetEvent('ox_lib:alertDialog', lib.alertDialog)