fixed regression
This commit is contained in:
@@ -86,7 +86,12 @@ function ScrollManager.new(config, deps)
|
||||
self.scrollBarStyle = config.scrollBarStyle -- Theme scrollbar style name (nil = use default)
|
||||
|
||||
-- scrollbarKnobOffset can be number or table {x, y} or {horizontal, vertical}
|
||||
-- Only normalize if actually provided (nil means use theme default)
|
||||
if config.scrollbarKnobOffset ~= nil then
|
||||
self.scrollbarKnobOffset = self._utils.normalizeOffsetTable(config.scrollbarKnobOffset, 0)
|
||||
else
|
||||
self.scrollbarKnobOffset = nil
|
||||
end
|
||||
|
||||
-- hideScrollbars can be boolean or table {vertical: boolean, horizontal: boolean}
|
||||
self.hideScrollbars = self._utils.normalizeBooleanTable(config.hideScrollbars, false)
|
||||
|
||||
@@ -1056,12 +1056,17 @@ function TestScrollManagerEdgeCases:testScrollbarKnobOffsetTableHorizontalVertic
|
||||
end
|
||||
|
||||
function TestScrollManagerEdgeCases:testScrollbarKnobOffsetDefault()
|
||||
-- When not provided, scrollbarKnobOffset should be nil (use theme default)
|
||||
local sm = createScrollManager({})
|
||||
luaunit.assertNotNil(sm.scrollbarKnobOffset)
|
||||
luaunit.assertEquals(sm.scrollbarKnobOffset.x, 0)
|
||||
luaunit.assertEquals(sm.scrollbarKnobOffset.y, 0)
|
||||
luaunit.assertEquals(sm.scrollbarKnobOffset.horizontal, 0)
|
||||
luaunit.assertEquals(sm.scrollbarKnobOffset.vertical, 0)
|
||||
luaunit.assertNil(sm.scrollbarKnobOffset)
|
||||
|
||||
-- When explicitly set to 0, it should be normalized
|
||||
local sm2 = createScrollManager({ scrollbarKnobOffset = 0 })
|
||||
luaunit.assertNotNil(sm2.scrollbarKnobOffset)
|
||||
luaunit.assertEquals(sm2.scrollbarKnobOffset.x, 0)
|
||||
luaunit.assertEquals(sm2.scrollbarKnobOffset.y, 0)
|
||||
luaunit.assertEquals(sm2.scrollbarKnobOffset.horizontal, 0)
|
||||
luaunit.assertEquals(sm2.scrollbarKnobOffset.vertical, 0)
|
||||
end
|
||||
|
||||
function TestScrollManagerEdgeCases:testScrollbarKnobOffsetStatePersistence()
|
||||
|
||||
Reference in New Issue
Block a user