Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: formatting, fixes and improvements #202

Closed
wants to merge 33 commits into from

Conversation

paulbuechner
Copy link

Hey Sellorio,

I've made some fixes and improvements. I initially based the changes on @aurelion314 branch as he seemed to be maintaining the project lately. We did discuss and reviewed the changes and came to the conclusion to directly make this PR here because Mike currently doesn't has access to the game and doesn't want to block the updates I've made.

For more information on the discussion see here.

This PR includes the following features, fixes, and improvements:

Features:

Bug Fixes:

Chore:

Cheers 😊

fixes #177, #199
closes #188

aurelion314 and others added 30 commits November 18, 2022 20:23
chore: update vscode globals recognition

fix(formatting): unset max line length

- remove tab indents in favor of spaces

chore: update .editorconfig
- fix `Mega Macro` title to no longer get hidden behind top frame bar
- adjust size of `Save` and `Cancel` buttons (grow buttons to make use of unused whitespace between them)
- fix `FramePortrait` placement
- fix `Lock/Unlock` button size to correctly match frame border height
- update xml intentation to use spaces (be consistent across other files)
*feat(conditionals): add linting support for new `known` and `unknown` conditionals (Sellorio#199)
*refactor: EventFrame to support fixed update intervalls
*fix: temporarily disable range-based hotkey coloring (Sellorio#176)
*fix: temporarily disable MainMenuBar (ActionBar) tooltips (Sellorio#131, Sellorio#172, Sellorio#173)
*chore: minor improvements
*ci: version bump
…onditionals

*fix: use UTF-8 strlen to determine wordlength

fixes: Sellorio#199
- allow for OptionalWordModifier using channeling
- add nochanneling conditional
- remove channelling conditional (typo)
@sellorio2
Copy link

What's the status of the temporary workarounds? Stuff that disables ranged coloring and tooltips?

@paulbuechner
Copy link
Author

Regarding the temporary fixes, I haven't found any solution to fix them, hence "temporary fixes".

#200: This is an issue other addons experiencing too, e.g. here
#176: Disabled for now

@sellorio2
Copy link

I came back to WoW today and I ran into a bug in the addon that makes it unusable so I'm testing this branch :) Switching to/from dragonflying mount completely breaks mega macro lol

@sellorio2
Copy link

Hmm the issue still exists with this version.

@paulbuechner
Copy link
Author

paulbuechner commented Apr 2, 2023

Hmm the issue still exists with this version.

In my opinion, when disabling mainbar tooltips, this is happening less than before. (At least in my case)
Also, it feels like this it is happening when mounting off directly into combat... Mounting off with no enemies nearby won't break it.

@sellorio2
Copy link

sellorio2 commented Apr 5, 2023

I'm trying to investigate the main issue (at least as far as what's blocking me from using the addon). Which is the Interface Action Blocked issue. I would love any help/info you have about it.

So far this is what I have:

  • Probably triggered by an initial error.

4x [ADDON_ACTION_FORBIDDEN] AddOn 'MegaMacro' tried to call the protected function 'UseAction()'.
[string "@!BugGrabber/BugGrabber.lua"]:480: in function <!BugGrabber/BugGrabber.lua:480>
[string "=[C]"]: in function UseAction' [string "@FrameXML/SecureTemplates.lua"]:364: in function handler'
[string "@FrameXML/SecureTemplates.lua"]:690: in function <FrameXML/SecureTemplates.lua:672>
[string "@FrameXML/SecureTemplates.lua"]:704: in function <FrameXML/SecureTemplates.lua:697>
[string "@FrameXML/SecureTemplates.lua"]:746: in function SecureActionButton_OnClick' [string "@FrameXML/ActionButton.lua"]:89: in function TryUseActionButton'
[string "@FrameXML/ActionButton.lua"]:124: in function `ActionButtonDown'
[string "ACTIONBUTTON2"]:2: in function <[string "ACTIONBUTTON2"]:1>

  • After the error, activating anything on the action bar using a keybinding causes the error.
  • Interstingly, the 1 slot on the action bar appears to be unaffected. I even had slot 2 working in one test for a bit til it stopped working. It appears that the failure is triggered in slot 3 while using dragonflight mount and only affects slot 2 after dismounting (at which point it is permanently affected until /reload)
  • Clicking the buttons works
  • Manually calling the click commands in the stub macros works
  • Clearing the wow native macro's content does not stop the Blocked Interface Action popup but probably at that point the damage is done.
  • Appears to be related to starting combat by using an ability bound to the Dragonflying action bar since all my tests required this to happen before the initial error and followup issues popped up.
  • Short combat (one-shotting a critter) doesn't appear to be enough to trigger the issue but this is hardly definitive useful information.

@sellorio2
Copy link

Bartender4 seems to work, more testing required but it looks like until further notice this addon only works with BT4 and maybe ElvUI (although we've had support issues on there too).

@paulbuechner
Copy link
Author

I have collected some resources of other addons suffering from similar issues, which I linked at the top:

@sellorio2
Copy link

I'm inclined to not merge this in since it will impact Bartender4 users (like myself) adversely and won't fix the critical issues with native ui.

For the range blinking. I was thinking the logic could be changed to cache the range test using the current range timer but set the action bar appearance every frame. Currently the timer controls both range test and ui changes which can cause conflicts with underlying logic.

@paulbuechner
Copy link
Author

Sure! I agree that significant issues should be addressed at least until the next release. But if you're fine with the current features the PR is introducing, you could open a development branch, where we can merge this for now.

@JoeLatte88
Copy link

JoeLatte88 commented Apr 18, 2023

could some of the issue be related to GameTooltip? I was looking through the code, noticed we were using GameTooltip and it's functions, then I went through some of the API changes which were part of 10.0.2 and beyond and noticed this in .0.2 updates:

Tooltip Changes - GameTooltip frames no longer expose native methods for retrieving or populating tooltip contents. Instead, a new C_TooltipInfo namespace has been added which provides APIs for retrieving structured data for use in tooltips and a new set of tooltip-related mixins have been added to populate tooltips from these APIs.

https://wowpedia.fandom.com/wiki/Patch_10.0.2/API_changes

- TODO: `IconBrowser` migration
@paulbuechner
Copy link
Author

Hey @JoeLatte88, as far as I can tell these changes only apply when wanting to retrieve information from the tooltip and not when populating it. I think the API Changelog is a bit misleading there, as it states:

"[..] a new set of tooltip-related mixins have been added to populate tooltips from these APIs."

This means, that some additional Setters were introduced (not that existing ones were removed)

- workaround for GetActionInfo not returning the correct values
@Sellorio Sellorio closed this Oct 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Icon not working on some bars
5 participants