WIM (WoW Instant Messenger) v3

17M Downloads

Small bug and small feature, but great update for Season of Discovery

eusi opened this issue ยท 8 comments

commented
  1. "Click to update..." does not show the location after you have clicked (however "/who player" works reliably in general)
    2024-02-19 08_43_57-Window

  2. On the same dialog if you do a right-click you should see the link of warcraftlogs for vanilla in addition for SoD.

(XX stands for eu, us etc)

Thanks!

P.S. I am not sure if some of the other links could be deleted, like WoWArmory etc (since does not exist any longer)

commented

I already started with a potential fix for my ticket (links are corrected), but I have one issue: who-command is not reliable?

On my fork, if I press on the button, it is doing a /who (you can see the yellow text with p.name, level, location etc. in the chat but the registered eventHandler (that should grab the infos and push it to the WIM frame) is never called... I don't know why, thought this should work. I mean, at least you see the yellow text in the chat now, but would be better to see the location in the WIM window (as expected).

My fork/branch: eusi@3678a90

Maybe someone can help?

commented

I should update the tooltip to remove the update location... WIM used to do who lookups to obtain this information, but Blizzard removed the ability for addons to do this, blocking the action, so it was removed. You can of course continue to do it manually. WIM will pull this information from wherever it can, party members, guild members, raid, etc. Outside of that, this feature is dead unfortunately.

If you add the links to your fork you can always create a pull request and I'll merge it into the project.

commented

I should update the tooltip to remove the update location... WIM used to do who lookups to obtain this information, but Blizzard removed the ability for addons to do this, blocking the action, so it was removed. You can of course continue to do it manually. WIM will pull this information from wherever it can, party members, guild members, raid, etc. Outside of that, this feature is dead unfortunately.

Thanks for your reply!

Do you think my way via _G.C_FriendList.SendWho("n-"..self.theUser) and the registered eventHandlerWho() won't work to get the location? Am I doing something wrong there?

commented

Does it work?

https://wowpedia.fandom.com/wiki/API_C_FriendList.SendWho

Maybe initiated by a click. But the hardware requirement can make it unstable.

commented

Fixed it, it is working now!!

If you click on the "location"-button (left click), it updates the user-object, so it shows the location correct and also updates the class name, guild name, level etc.
And if you do a right click I updated the list with links (new entry is called "Warcraftlogs SoD", while the regular I named to "Warcraftlogs Retail" - we could also name the SoD one "Warcraftlogs Vanilla" and the regular one to just "Warcraftlogs"). As you like. Will create a pull request soon.

commented

When I have a moment to review and test it.

commented

I reviewed it and made a minor change. I added a second parameter to WIM's SendWho method to invoke blizzard's who lookup. The problem is that it was throwing a blocked error whenever a new window was opened. So now when initiated through shortcut, it explicitly requests the blizzard's who call to be invoked.

It isn't the most ideal solution but it works. The limitations are that if you have FriendsList open it will redirect the user to the who frame and then close it. And if it isn't open, you'll still hear the window close as it opens and closes very quickly.

Honestly though, for this use case, I think it is OK.

Thank you for your contribution.

commented

@Pazza May I ask by when we can expect the following pull request to be merged (which fixes this issue) and a new version of the addon to be released?

#70

Thanks