ingame/skills/gamepad/gamepadskills.lua:32 -- GAMEPAD_SKILLS_ROOT_SCENE:RegisterCallback("StateChange", function(oldState, newState)
ZO_Gamepad_ParametricList_Screen.OnStateChanged(self, oldState, newState)
if newState == SCENE_SHOWING then
GAMEPAD_TOOLTIPS:SetBottomRailHidden(GAMEPAD_LEFT_TOOLTIP, true)
GAMEPAD_TOOLTIPS:SetBottomRailHidden(GAMEPAD_RIGHT_TOOLTIP, true)
self:SetMode(SKILL_LIST_BROWSE_MODE)
self:RefreshHeader(GetString(SI_MAIN_MENU_SKILLS))
self.assignableActionBar:RefreshAllButtons()
self:RefreshCategoryList()
self:RefreshPointsDisplay()
KEYBIND_STRIP:AddKeybindButtonGroup(self.categoryKeybindStripDescriptor)
TriggerTutorial(TUTORIAL_TRIGGER_COMBAT_SKILLS_OPENED)
if self.showAttributeDialog then
--Defer dialog call in case we're entering the scene from the base scene. This is to
--ensure the dialog's keybind layer is added after the other layers, and not before.
local function ShowDialog()
if SCENE_MANAGER:IsShowing("gamepad_skills_root") then
ZO_Dialogs_ShowGamepadDialog("GAMEPAD_SKILLS_ATTRIBUTE_PURCHASE", nil, nil)
end
end
zo_callLater(ShowDialog, 20)
end
elseif newState == SCENE_SHOWN then
--If we entered skills with the action bar selected make sure to activate it. We do this in shown because fragments are set to showing after
--the scene is which means the action bar is still hidden on showing which prevents activating it.
if self.mode == SKILL_LIST_BROWSE_MODE then
if self.categoryList:GetSelectedData() == ACTION_BAR_ID then
self:ActivateAssignableActionBarFromList()
end
end
elseif newState == SCENE_HIDDEN then
self:DisableCurrentList()
KEYBIND_STRIP:RemoveKeybindButtonGroup(self.categoryKeybindStripDescriptor)
GAMEPAD_TOOLTIPS:Reset(GAMEPAD_LEFT_TOOLTIP)
GAMEPAD_TOOLTIPS:Reset(GAMEPAD_RIGHT_TOOLTIP)
end
end)