43 Commits

Author SHA1 Message Date
Brues 5ed1d98ecc Raid Pets and Optimized Chat Bubble Styling
commit f19d7402810637fc32460864104cb792ac5af863
Author: Brues <5278969+brues-code@users.noreply.github.com>
Date:   Wed Jul 22 01:05:52 2026 -0500

    remove comment

commit 60f4968f06d19d42bdc6347f98ff4d5a34785e97
Author: Brues <5278969+brues-code@users.noreply.github.com>
Date:   Wed Jul 22 01:05:06 2026 -0500

    Bump ClassicAPI minimum version to 10705

    Update the minimum required ClassicAPI version from 10704 (1.7.4) to 10705 (1.7.5).

commit 088dba4c23f4aa7ce98b9ce9d75bc5892cd40520
Author: Brues <5278969+brues-code@users.noreply.github.com>
Date:   Wed Jul 22 01:04:04 2026 -0500

    Add raid-pet frames: an independent, roster-driven pet grid

    New "raidpet" unitframe type that shows raid members' pets (raidpet1..40)
    in their own movable block (pfRaidPetCluster), off by default. It's a
    flat pool of frames laid out by pfUI.uf.raid:LayoutPets straight from the
    raid roster -- cell N shows raidpet<N> -- so it's fully decoupled from how
    the raid grid arranges its own slots.

    Layout is independent of the raid grid: raidpet carries its own
    width/height plus a Layout section (raidlayout / raidpadding / raidfill),
    and its own Collapse Empty Slots toggle that packs only the pets that
    exist into the leading cells. The raid grid gets the same collapse option
    (sequential slot assignment in AddUnitToGroup instead of by subgroup).
    Collapsed pets re-pack on roster changes and on UNIT_PET so summons and
    dismisses track live without polling.

    Also:
    - unitframes: a "raidpet" branch in UpdateVisibility (hide when the pet is
      out of range or its raid<N> owner is gone), and fix cache_raid so the
      "pfRaid" prefix check doesn't misread pfRaidPet<n> frames (char 7 is
      non-numeric -> nil compare crash).
    - New "Owner Name" text option: on any pet frame (raidpet/partypet/pet) it
      shows the owner's class-colored name so you can tell whose pet it is.
    - unlock: a pfRaidPet drag cluster, a numeric-suffix guard so pfRaid no
      longer matches (and crashes on) pet frames, and RaidPet config mappings.
    - config/gui/translations for all of the above.

commit 52f02c8963fe7ec90f36100ebe069c7807529301
Author: Brues <5278969+brues-code@users.noreply.github.com>
Date:   Mon Jul 20 23:09:06 2026 -0500

    Enumerate chat bubbles via ClassicAPI instead of scanning WorldFrame

    ClassicAPI's C_ChatBubbles.GetAllChatBubbles() walks the engine's own
    bubble list and returns the exact set of live bubble frames, with real
    GetRegions(), so the decoration idiom works unchanged. Replace the
    WorldFrame:GetChildren() sweep and drop the IsBubble heuristic (unnamed
    frame whose first region is the ChatBubble-Background texture) -- the API
    only ever hands back bubbles, so that guess is both redundant and more
    fragile than the engine list. Cheaper too: it iterates only live bubbles
    rather than every world child on each chat event.
2026-07-23 23:08:05 -05:00
Brues 710be52f35 phase 3 removing tbc
Drop the now-vestigial expansion plumbing.

- Delete modules/thirdparty-tbc.lua + its xml Include
- Strip 10 tbc-tagged CreateConfig calls in modules/gui.lua
- Drop the expansion arg from CreateConfig() signature + the disabled-
  entry rendering path that depended on it
- Drop the showdisabled GUI toggle + its default
- Simplify pfUI:RegisterModule / pfUI:RegisterSkin to (name, func) only
- Strip the leading version arg ("vanilla:tbc", etc.) from all 114
  Register call sites
- Delete the pfUI.expansion variable
2026-05-25 18:50:53 -05:00
Brues 58609b8c5c phase 1 removing tbc 2026-05-25 18:16:02 -05:00
Meow 34f5c3eb02 Version 6.1.0 - Raid/Party Frame Fixes
Bugfixes:
- Fixed 40-yard range check not working for raid/party frames
- Fixed aggro indicator not displaying properly on raid/party frames
- Improved aggro cache to only cache positive results for instant detection
- Fixed HP/Mana not updating with "Use Raid Frames for group" enabled
- Added SuperWoW nil-check for SpellInfo
- Added missing events: PARTY_MEMBER_ENABLE, PARTY_MEMBER_DISABLE, PLAYER_UPDATE_RESTING

UI Improvements:
- Share/Hoverbind buttons now show warning when module is disabled
2026-01-08 12:25:18 +01:00
Meow 5d0e195d1e performance update
performance update
2026-01-03 12:58:31 +01:00
shagu 027730b53b unlock: add info about scrolling to change scale 2023-01-09 18:47:48 +01:00
shagu 1c980d3417 unlock: align mover frame levels to parent 2022-07-16 10:50:19 +02:00
shagu 0214eebf36 core: switch from mousedown to drag functions
Due to crashes/freezes while moving some frames, one possible
reason could be that pfUI was using OnMouseDown and OnMouseUp
to run its frame-moving code. I have noticed better performance
when using the intended functions, OnDragStart and OnDragStop
to move frames.

This commit changes every occurrence of such functions and splits
drag and click into seperate functions where required.
2022-05-07 21:35:52 +02:00
Maczuga d02fae4657 unlock: writable x and y coords popup
Example: https://cdn.discordapp.com/attachments/695634717613228043/823649632633749514/unknown.png

You cannot actually edit those boxes. There are 2 things being wrong with it:
1. It awaits an "Escape" button press to modify value, seems counterintuitive, addons like ElvUI do that on Enter press.
2. It does not update values. SetPoint uses previous values, new value is never being used.

This fixes the boxes and mimics the ElvUI behavior for Enter button being the "save" action.
2021-03-23 00:16:53 +01:00
shagu 164e308704 unlock: add config shortcut for focus castbar 2020-04-18 12:52:50 +02:00
shagu 3086acde21 unlock: ensure parent is set to UIParent on move 2020-04-02 16:10:55 +02:00
attackpure100 050790b7e9 tttarget: add tttarget unitframe and config 2019-12-26 10:08:23 +01:00
shagu 3334c7469f modules: make all modules aware of the new borders 2019-12-18 18:54:09 +01:00
shagu 842a0cd982 unlock: only open config gui on existing entries 2019-11-04 09:22:40 +01:00
shagu 5c5340104f unlock: skip visibility updates in combat lockdown 2019-08-02 17:18:06 +02:00
shagu ce9c61dd77 unlock: calculate position based on initial anchor 2019-07-30 19:18:15 +02:00
shagu e9237b59b2 core: use concrete string based client checks 2019-06-10 17:06:31 +02:00
shagu 7632f92dd1 core: use new media mechanism for all textures 2019-06-10 13:35:48 +02:00
shagu 93109c4d3e unlock: set automatic anchors when moving frames 2019-06-09 22:16:58 +02:00
shagu b56a20897d unlock: avoid nil anchors by removing frame reset 2019-05-09 21:10:05 +02:00
shagu 6c6aaacd83 unlock: cache zoom onupdate function 2019-04-22 13:26:43 +02:00
shagu 7bc60e723d core: whitelist a bunch of modules for tbc 2019-04-07 14:48:58 +02:00
shagu dc51778dc4 unlock: add anchors and use api to save position 2019-04-07 14:45:45 +02:00
shagu fc0e75ca83 unlock: fix configuration shortcuts in dock-frame 2019-03-31 14:59:21 +02:00
shagu bf77ea797f unlock: make popup text more visible 2019-03-31 14:59:20 +02:00
shagu dbc84b29b1 unlock: trigger move actions on reset 2019-01-03 19:42:34 +01:00
shagu 061ec1e72f translations: add new translation strings 2018-08-23 22:13:30 +02:00
shagu 6fe2ed38e2 unlock: use uppercase for n/a 2018-08-18 20:38:26 +02:00
shagu dd2a562813 unlock: delay dock updates when scaling changes 2018-08-18 17:34:23 +02:00
shagu e4251d35b6 unlock: add dock to unlock mode 2018-08-18 17:16:29 +02:00
shagu 211d0d789e unlock: update minimum transparency on draggers 2018-08-11 22:17:40 +02:00
shagu b374bee9bc unlock: entire rewrite of the unlock mode 2018-08-11 22:11:02 +02:00
shagu c5013c0272 unlock: clear all points on reset 2018-06-03 12:36:42 +02:00
shagu 7793c5ba16 api: crash fixes with bad movable table 2018-05-26 00:05:37 +02:00
shagu 4a3caa02ad unlock: reset frame position on middle click 2018-05-16 20:38:40 +02:00
shagu a211c9028f unlock: disable movable frames on exit 2018-05-15 18:27:53 +02:00
shagu 2455d8def3 api: move infobox into ui-widgets 2018-03-28 20:52:29 +02:00
shagu 63d863f03d unlock: let frames only snap to real pixels 2018-03-18 01:11:43 +01:00
shagu a3da6cf9c5 unlock: cleanup grid initialization code 2017-12-09 12:59:37 +01:00
Cameron Weaver (Clutch) 4acef543b4 mirrortimers: make them movable
unlock: only substring frame name if starts with pf
2017-09-28 00:19:25 +02:00
shagu ee37452615 unlock: allow to only move subgroups with ctrl 2017-09-08 18:47:37 +02:00
shagu 5832215f95 api: add translation mechanics 2017-06-24 14:43:19 +02:00
shagu 51f4bab41f gui: rewrite of the configuration interface 2017-06-16 14:48:20 +02:00