diff --git a/esoui/common/zo_options/gamepad/zo_options_gamepad.lua b/esoui/common/zo_options/gamepad/zo_options_gamepad.lua
index 5ec65d5..8382074 100755
--- a/esoui/common/zo_options/gamepad/zo_options_gamepad.lua
+++ b/esoui/common/zo_options/gamepad/zo_options_gamepad.lua
@@ -52,7 +52,7 @@ function ZO_GamepadOptions:InitializeScenes()
             ZO_SavePlayerConsoleProfile()
             SetCameraOptionsPreviewModeEnabled(false, CAMERA_OPTIONS_PREVIEW_NONE)
             KEYBIND_STRIP:RemoveKeybindButtonGroup(self.panelKeybindDescriptor)
-            KEYBIND_STRIP:RemoveKeybindButtonGroup(self.checkboxDescriptor)
+            KEYBIND_STRIP:RemoveKeybindButtonGroup(self.primaryActionDescriptor)
         end
     end)
     
@@ -186,11 +186,19 @@ function ZO_GamepadOptions:InitializeKeybindStrip()
     }
     ZO_Gamepad_AddListTriggerKeybindDescriptors(self.panelKeybindDescriptor, self.optionsList)
 
-    self.checkboxDescriptor = 
+    self.primaryActionDescriptor = 
     {
         {
             alignment = KEYBIND_STRIP_ALIGN_LEFT,
-            name = GetString(SI_GAMEPAD_SELECT_OPTION),
+            name = function()
+                local control = self.optionsList:GetSelectedControl()
+                local controlType = self:GetControlTypeFromControl(control)
+                if controlType == OPTIONS_CHECKBOX then
+                    return GetString(SI_GAMEPAD_TOGGLE_OPTION)
+                else
+                    return GetString(SI_GAMEPAD_SELECT_OPTION)
+                end
+            end,
             keybind = "UI_SHORTCUT_PRIMARY",
             order = -500,
             callback = function() 
@@ -326,11 +334,11 @@ function ZO_GamepadOptions:OnSelectionChanged(list)
     local enabled = control.data.enabled
     if ((controlType == OPTIONS_CHECKBOX or controlType == OPTIONS_INVOKE_CALLBACK) and enabled ~= false) then
         if not self.isPrimaryActionActive then 
-            KEYBIND_STRIP:AddKeybindButtonGroup(self.checkboxDescriptor)
+            KEYBIND_STRIP:AddKeybindButtonGroup(self.primaryActionDescriptor)
             self.isPrimaryActionActive = true
         end
     else
-        KEYBIND_STRIP:RemoveKeybindButtonGroup(self.checkboxDescriptor)
+        KEYBIND_STRIP:RemoveKeybindButtonGroup(self.primaryActionDescriptor)
         self.isPrimaryActionActive = false
     end
 
@@ -413,7 +421,9 @@ function ZO_GamepadOptions:InitializeControl(control, selected)
     if(not control.data.enabled and control.data.disabledText) then
         label:SetText(GetTextEntry(control.data.disabledText))
     else
-        if control.data.gamepadTextOverride then
+        if IsConsoleUI() and control.data.consoleTextOverride then
+            label:SetText(GetTextEntry(control.data.consoleTextOverride))
+        elseif control.data.gamepadTextOverride then
             label:SetText(GetTextEntry(control.data.gamepadTextOverride))
         end
     end
@@ -655,6 +665,9 @@ function ZO_GamepadOptions:LoadDefaults()
         self:RefreshOptionsList()
     end
 
+    ZO_SavePlayerConsoleProfile()
+    self:SaveCachedSettings()
+
     if self.currentCategory == SETTING_PANEL_VIDEO or self:IsAtRoot() then
         -- reset the screen adjustments
         SetOverscanOffsets(0, 0, 0, 0)