Skip to content

chore: update to be midnight compatible#3

Merged
srenauld merged 1 commit intomasterfrom
chore/update-to-midnight
Apr 5, 2026
Merged

chore: update to be midnight compatible#3
srenauld merged 1 commit intomasterfrom
chore/update-to-midnight

Conversation

@j-mes
Copy link
Copy Markdown
Collaborator

@j-mes j-mes commented Mar 12, 2026

BearEmotes PR Notes

Scope

This update keeps the BearEmotes emote pack intact and ports over the newer runtime behavior from the newer TwitchEmotes addon where it improves compatibility and stability.

No Bear emote entries were replaced with Twitch emotes.

Code Changes

  • Updated BearEmotes/BearEmotes.lua to match newer chat handling behavior used by TwitchEmotes.
  • Added Midnight-aware message sanitizing before send so clickable emotes are stripped safely before chat is sent.
  • Switched chat send handling to use ChatFrame.OnEditBoxPreSendText on Midnight builds and C_ChatInfo.SendChatMessage on non-Midnight builds.
  • Added chat frame hyperlink hover support so inserted clickable emotes show the emote token on hover.
  • Added chat frame setup that tracks CHAT_FRAMES instead of assuming NUM_CHAT_WINDOWS.
  • Added WIM autocomplete wiring parity from TwitchEmotes when autocomplete is enabled.
  • Fixed the statistics update wiring so accept_stat_updates and BearUpdateEmoteStats are resolved correctly instead of hitting the previous broken local-scope behavior.
  • Fixed autocomplete list generation to start at index 1 instead of 0.
  • Fixed the favourites UI so category checkboxes are actually created and reused instead of only creating the container frame.
  • Added addon API helpers for external packs/categories: BearEmoticons_RegisterPack, BearEmotes:AddCategory, and BearEmotes:AddEmote.

UI / Metadata Changes

  • Updated BearEmotes/UI/BearEmotes.xml to register in the modern Settings panel when available, with fallback to the legacy Interface Options panel.
  • Updated the usage-data button to safely close whichever settings frame is active before opening stats.
  • Added a visible search label to BearEmotes/UI/BearEmoteStats.xml.
  • Updated BearEmotes/BearEmotes.toc for the newer interface version and added BearEmoteStatistics to SavedVariables.
  • Refreshed the addon notes/icon metadata to reflect the newer Midnight-compatible behavior.
  • Synced BearEmotes bundled libraries with the newer TwitchEmotes copies where they were newer.
  • Updated BearEmotes/libs/LibUIDropDownMenu/LibUIDropDownMenu.lua to the newer upstream revision used by TwitchEmotes.
  • Updated BearEmotes/libs/Lib-EditBox-AutoComplete/Lib-EditBox-AutoComplete.lua to the newer TwitchEmotes logic, while keeping the Bear-specific ElvUI helper function names.

Bear-Specific Fixes

  • Fixed BearEmotes/DropdownItems.lua so each dropdown category now has a category title entry.
  • This prevents the first real Bear emote in each category from being skipped by the dropdown renderer.

Stats / Animation Changes

  • Rebased BearEmotes/BearEmotesAnimator.lua on the newer animation loop behavior from TwitchEmotes.
  • Added support for the newer animated-emote frame math, including ping-pong animation metadata.
  • Reworked BearEmotes/BearEmoteStatistics.lua to support filtered stat lists, a search box, and safer one-time UI element creation.
  • Added a search filter to the stats window so sent/seen emotes can be filtered live.

@j-mes j-mes requested a review from srenauld March 12, 2026 19:09
@srenauld srenauld merged commit 0d3ee78 into master Apr 5, 2026
1 check failed
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.

2 participants