         p
 
     children:
-      default: initialChildren = []
+      default: noChildren = []
       setter: (newChildren, oldChildren) ->
         @__drawPropertiesChanged = true # TODO - this is a hack-fix; is this the right way to do this?
         newChildren = compactFlatten newChildren, keepIfRubyTrue
-        firstTimeSettingChildren = oldChildren == initialChildren
+        firstTimeSettingChildren = oldChildren == noChildren
+
+        @_filterChildren = null
 
         # detect childrenHaveRemovedAnimations
         for child in oldChildren when child.getPendingHasToVoidAnimators()


    @_generateDrawCache targetSpaceDrawArea, elementToTargetMatrix

    drawCacheManager.useDrawCache @
    if !!@_drawCacheBitmap != !!@_drawCacheToElementMatrix
      throw new Error "expected both or neither: @_drawCacheToElementMatrix, @_drawCacheBitmap"



  _initComputedFields: ->
    @_elementSpaceDrawArea = null
    @_filterChildren = []
    # @_filterDescendants = []
    # @_filterSource = null

