diff --git a/gfx/list.lua b/gfx/list.lua
index 39acdb6..00dc096 100644
--- a/gfx/list.lua
+++ b/gfx/list.lua
@@ -29,14 +29,6 @@ function List:insertChild(child, atIndex)
   adjustPositions(self.children, self:isVertical(), index)
 end
 
-function List:setParent(parent)
-  Element.setParent(self, parent)
-  local win = self:_getWindow()
-  for _,child in ipairs(self.children) do
-    child:setParent(win)
-  end
-end
-
 function List:removeChild(child)
   local index
   local searchType = type(child)
diff --git a/gfx/padding.lua b/gfx/padding.lua
index ebb26f6..a3de557 100644
--- a/gfx/padding.lua
+++ b/gfx/padding.lua
@@ -88,4 +88,9 @@ function Padding:handleEvent(evt)
   return false
 end
 
+function Padding:_reload()
+  Element._reload(self)
+  self.element:setParent(self:_getWindow())
+end
+
 return Padding
\ No newline at end of file