1 Commits

Author SHA1 Message Date
06b7f5fca0 Hook friends list show to NOT show while we're waiting for who
This way no window spop up :D
2025-05-20 20:12:59 +02:00
2 changed files with 46 additions and 6 deletions

2
Meta

Submodule Meta updated: e0b57e39fc...46ecd9a143

View File

@@ -213,7 +213,30 @@ shared.Whoer = {
)
)
end
return true
local err = NotifyZoneChanged(player, zone)
if err then print(string.format("Error notifying for %s: %s", tostring(name), tostring(err))) end
end
player.zone = zone
player.lastSeen = timestamp
HeimdallStinkies[name] = player
if not Heimdall_Data.who then Heimdall_Data.who = {} end
if not Heimdall_Data.who.data then Heimdall_Data.who.data = {} end
Heimdall_Data.who.data[name] = player
end
end
-- Turns out WA cannot do this (
-- aura_env.UpdateMacro()
-- We MAY not need this
-- _G["FriendsFrameCloseButton"]:Click()
end)
do
local function UpdateStinkies()
for name, player in pairs(HeimdallStinkies) do
if player.lastSeenInternal + Heimdall_Data.config.who.ttl < GetTime() then
NotifyGone(player)
--PlaySoundFile("Interface\\Sounds\\Uncloak.ogg", "Master")
HeimdallStinkies[name] = nil
end
end
if not Heimdall_Data.config.who.debug then
@@ -644,10 +667,27 @@ shared.Whoer = {
Heimdall_Data.who.data[name] = player
end
end
-- Turns out WA cannot do this (
-- aura_env.UpdateMacro()
_G["FriendsFrameCloseButton"]:Click()
end)
whoQueryIdx = whoQueryIdx + 1
if whoQueryIdx > #shared.WhoQueryService.queries then whoQueryIdx = 1 end
lastQuery = query
---@diagnostic disable-next-line: param-type-mismatch
SetWhoToUI(1)
SetWhoToUI(1)
SendWho(query.query)
whoWaiting = true
end
local function Tick()
DoQuery()
C_Timer.NewTimer(1, Tick, 1)
end
Tick()
local original_FriendsFrame_OnEvent = FriendsFrame_OnEvent
local function my_FriendsFrame_OnEvent(event)
if not (event == "WHO_LIST_UPDATE" and whoWaiting) then original_FriendsFrame_OnEvent() end
end
FriendsFrame_OnEvent = my_FriendsFrame_OnEvent
end
do
local function UpdateStinkies()