Skip to content

Commit 38a9b4e

Browse files
authored
Fix Loadouts dropdown not showing on smaller screens (#9557)
1 parent 2e37639 commit 38a9b4e

2 files changed

Lines changed: 8 additions & 67 deletions

File tree

src/Classes/TreeTab.lua

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -467,7 +467,7 @@ function TreeTabClass:Draw(viewPort, inputEvents)
467467
SetDrawLayer(1)
468468

469469
SetDrawColor(0.05, 0.05, 0.05)
470-
DrawImage(nil, viewPort.x, viewPort.y + viewPort.height - (28 + bottomDrawerHeight + linesHeight), viewPort.width, 28 + bottomDrawerHeight + linesHeight)
470+
DrawImage(nil, viewPort.x, viewPort.y + viewPort.height - (30 + bottomDrawerHeight + linesHeight), viewPort.width, 30 + bottomDrawerHeight + linesHeight)
471471
if self.showConvert then
472472
local height = viewPort.width < convertMaxWidth and (bottomDrawerHeight + linesHeight) or 0
473473
SetDrawColor(0.05, 0.05, 0.05)
@@ -477,7 +477,7 @@ function TreeTabClass:Draw(viewPort, inputEvents)
477477
end
478478
-- let white lines overwrite the black sections, regardless of showConvert
479479
SetDrawColor(0.85, 0.85, 0.85)
480-
DrawImage(nil, viewPort.x, viewPort.y + viewPort.height - (32 + bottomDrawerHeight + linesHeight), viewPort.width, 4)
480+
DrawImage(nil, viewPort.x, viewPort.y + viewPort.height - (34 + bottomDrawerHeight + linesHeight), viewPort.width, 4)
481481

482482
self:DrawControls(viewPort)
483483
end

src/Modules/Build.lua

Lines changed: 6 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -182,9 +182,9 @@ function buildMode:Init(dbFileName, buildName, buildXML, convertBuild, importLin
182182
local x, y = control:GetPos()
183183
local width, height = control:GetSize()
184184
SetDrawColor(1, 1, 1)
185-
DrawImage(nil, x, y, width, height)
185+
DrawImage(nil, x, y, width + 2, height)
186186
SetDrawColor(0, 0, 0)
187-
DrawImage(nil, x + 1, y + 1, width - 2, height - 2)
187+
DrawImage(nil, x + 1, y + 1, width, height - 2)
188188
SetDrawColor(1, 1, 1)
189189
DrawString(x + 4, y + 2, "LEFT", 16, "FIXED", control.str)
190190
if control:IsMouseInBounds() then
@@ -195,14 +195,14 @@ function buildMode:Init(dbFileName, buildName, buildXML, convertBuild, importLin
195195
SetDrawLayer(nil, 0)
196196
end
197197
end
198-
self.controls.levelScalingButton = new("ButtonControl", {"LEFT",self.controls.pointDisplay,"RIGHT"}, {12, 0, 50, 20}, self.characterLevelAutoMode and "Auto" or "Manual", function()
198+
self.controls.levelScalingButton = new("ButtonControl", {"LEFT",self.controls.pointDisplay,"RIGHT"}, {10, 0, 50, 20}, self.characterLevelAutoMode and "Auto" or "Manual", function()
199199
self.characterLevelAutoMode = not self.characterLevelAutoMode
200200
self.controls.levelScalingButton.label = self.characterLevelAutoMode and "Auto" or "Manual"
201201
self.configTab:BuildModList()
202202
self.modFlag = true
203203
self.buildFlag = true
204204
end)
205-
self.controls.characterLevel = new("EditControl", {"LEFT",self.controls.levelScalingButton,"RIGHT"}, {8, 0, 106, 20}, "", "Level", "%D", 3, function(buf)
205+
self.controls.characterLevel = new("EditControl", {"LEFT",self.controls.levelScalingButton,"RIGHT"}, {5, 0, 106, 20}, "", "Level", "%D", 3, function(buf)
206206
self.characterLevel = m_min(m_max(tonumber(buf) or 1, 1), 100)
207207
self.configTab:BuildModList()
208208
self.modFlag = true
@@ -239,7 +239,7 @@ function buildMode:Init(dbFileName, buildName, buildXML, convertBuild, importLin
239239
end
240240
end
241241
end
242-
self.controls.classDrop = new("DropDownControl", {"LEFT",self.controls.characterLevel,"RIGHT"}, {8, 0, 100, 20}, nil, function(index, value)
242+
self.controls.classDrop = new("DropDownControl", {"LEFT",self.controls.characterLevel,"RIGHT"}, {5, 0, 85, 20}, nil, function(index, value)
243243
if value.classId ~= self.spec.curClassId then
244244
if self.spec:CountAllocNodes() == 0 or self.spec:IsClassConnected(value.classId) then
245245
self.spec:SelectClass(value.classId)
@@ -263,28 +263,7 @@ function buildMode:Init(dbFileName, buildName, buildXML, convertBuild, importLin
263263
end
264264
end
265265
end)
266-
self.controls.ascendDrop = new("DropDownControl", {"LEFT",self.controls.classDrop,"RIGHT"}, {8, 0, 120, 20}, nil, function(index, value)
267-
self.spec:SelectAscendClass(value.ascendClassId)
268-
self.spec:AddUndoState()
269-
self.spec:SetWindowTitleWithBuildClass()
270-
self.buildFlag = true
271-
end)
272-
self.controls.secondaryAscendDrop = new("DropDownControl", {"LEFT",self.controls.ascendDrop,"RIGHT"}, {8, 0, 160, 20}, {
273-
{ label = "None", ascendClassId = 0 },
274-
}, function(index, value)
275-
if not value or not self.spec then
276-
return
277-
end
278-
self.spec:SelectSecondaryAscendClass(value.ascendClassId)
279-
self.spec:AddUndoState()
280-
self.spec:SetWindowTitleWithBuildClass()
281-
self.buildFlag = true
282-
end)
283-
self.controls.secondaryAscendDrop.enableDroppedWidth = true
284-
self.controls.secondaryAscendDrop.maxDroppedWidth = 360
285-
local initialSecondarySelection = (self.spec and self.spec.curSecondaryAscendClassId) or 0
286-
self.controls.secondaryAscendDrop:SelByValue(initialSecondarySelection, "ascendClassId")
287-
self.controls.buildLoadouts = new("DropDownControl", {"LEFT",self.controls.secondaryAscendDrop,"RIGHT"}, {8, 0, 190, 20}, {}, function(index, value)
266+
self.controls.buildLoadouts = new("DropDownControl", {"LEFT",self.controls.classDrop,"RIGHT"}, {5, 0, 190, 20}, {}, function(index, value)
288267
if value == "^7^7Loadouts:" or value == "^7^7-----" then
289268
self.controls.buildLoadouts:SetSel(1)
290269
return
@@ -1113,44 +1092,6 @@ function buildMode:OnFrame(inputEvents)
11131092
self:ProcessControlsInput(inputEvents, main.viewPort)
11141093

11151094
self.controls.classDrop:SelByValue(self.spec.curClassId, "classId")
1116-
self.controls.ascendDrop.list = self.controls.classDrop:GetSelValueByKey("ascendancies")
1117-
self.controls.ascendDrop:SelByValue(self.spec.curAscendClassId, "ascendClassId")
1118-
self.controls.ascendDrop:CheckDroppedWidth(true)
1119-
local secondaryDrop = self.controls.secondaryAscendDrop
1120-
if secondaryDrop then
1121-
local legacyAlternateAscendancyIds = {
1122-
Warden = true,
1123-
Warlock = true,
1124-
Primalist = true,
1125-
}
1126-
local entries = {
1127-
{ label = "None", ascendClassId = 0 },
1128-
}
1129-
local selection = (self.spec and self.spec.curSecondaryAscendClassId) or 0
1130-
if self.spec and self.spec.tree then
1131-
local altAscendancies = self.spec.tree.alternate_ascendancies
1132-
if altAscendancies then
1133-
local sortable = { }
1134-
for ascendClassId, ascendClass in pairs(altAscendancies) do
1135-
if ascendClass and ascendClass.id then
1136-
if not legacyAlternateAscendancyIds[ascendClass.id] or ascendClassId == selection then
1137-
t_insert(sortable, { label = ascendClass.name, ascendClassId = ascendClassId })
1138-
end
1139-
end
1140-
end
1141-
t_sort(sortable, function(a, b)
1142-
return a.label < b.label
1143-
end)
1144-
for _, entry in ipairs(sortable) do
1145-
t_insert(entries, entry)
1146-
end
1147-
end
1148-
end
1149-
secondaryDrop:SetList(entries)
1150-
secondaryDrop:SelByValue(selection, "ascendClassId")
1151-
secondaryDrop:CheckDroppedWidth(true)
1152-
secondaryDrop.enabled = self.spec ~= nil and #entries > 1
1153-
end
11541095

11551096
if self.buildFlag then
11561097
-- Wipe Global Cache

0 commit comments

Comments
 (0)