Skip to content

Feat/multiple visiblity options#276

Open
Phylo wants to merge 2 commits intoEllesmereGaming:mainfrom
Phylo:feat/MultipleVisiblityOptions
Open

Feat/multiple visiblity options#276
Phylo wants to merge 2 commits intoEllesmereGaming:mainfrom
Phylo:feat/MultipleVisiblityOptions

Conversation

@Phylo
Copy link
Copy Markdown

@Phylo Phylo commented Apr 10, 2026

This is allowing the choosing of multiple Visibility options for Action bars, Resource Bars, and Unit Frames.

it's an attempt at adding a common component the EllesmereUI_VisibilityModes so that any of the modules can reference it to use as their visibility options and keep the logic the same between all the modules.

Phylo added 2 commits April 9, 2026 16:31
Add multi-select visibility modes (including When Skyriding/When Mounted) and replace single-mode dropdowns with checkbox dropdowns in the UI. Refactor visibility runtime: CheckVisibilityMode now accepts a table of modes, detects mount/glide state, and evaluates combined modes; new VIS_MODE_ITEMS and updated VIS_ORDER/VIS_VALUES to include skyriding/mounted. Options code updated with GetVisModes/ApplyVisModes/ToggleVisMode and helpers to keep legacy boolean flags in sync; selected bar is persisted to EAB.db.profile.selectedBar and visibility changes trigger EAB:ApplyAlwaysHidden/RefreshMouseover/ApplyCombatVisibility. ActionBars core cleaned up: removed legacy VisibilityCompat, adjusted BAR_CONFIG (removed native dispatch flags), improved secure handler layout encoding (pass mainbar-offset and set per-button _childupdate-offset), and switched ActionBarParent/OverrideActionBar visibility to attribute drivers to avoid taint. Also added event hooks for mount/glide/auras/page changes, tightened defaults (mountedEnabled), and various taint/cleanup fixes when reparenting Blizzard buttons.
Introduce a centralized visibility modes utility and migrate action bars, resource bars, and unit frames to use it. Adds EllesmereUI_VisibilityModes.lua which provides GetVisibilityModes, CreateVisibilityModeHelpers and ShouldFadeOutOnMouseLeave to support multi-select visibility, legacy fallbacks and shared mouseover fade logic. Update EllesmereUI.lua to improve skyriding/dragonriding/gliding detection and expose both isSkyriding and isGliding states. Replace duplicated visibility parsing/apply logic across EUI modules (ActionBars, ResourceBars, UnitFrames), wire checkbox-dropdowns to the new helpers, add small event defers for mount state updates, and preserve backward compatibility with legacy fields. Also update the .toc to include the new file.
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.

1 participant