     @unmountCallbackComponentList = if @unmountCallbackList then [@] else []
     @
 
-  addActivity: (props, prop, type) ->
-    @['hasActive'+type] = true
-    if !props[prop] then @activePropertiesCount++
+  enableContainerComponent: ->
     container = @
     while container
       if container.isBaseComponent
         if container.isNoop then container.isNoop = false
         else break
       container = container.container
+
+  addActivity: (props, prop, type) ->
+    @['hasActive'+type] = true
+    if !props[prop] then @activePropertiesCount++
+    @enableContainerComponent()
     return
 
   prop: (args...) -> @_updateProp(@props, 'Props', args)

    return

  clone: (options=@options) ->
    result = new Tag(@tagName, Object.create(null), @children.clone(), options or @options)
    result.attrs = cloneObject(@attrs)
    result.copyLifeCallback(@)

  toString: (indent=0, noNewLine) ->

    attrs = @attrs
    @cacheClassName = ""
    @className = classFn(attrs.className, attrs.class)
    @hasActiveProps = false
    @cacheProps = Object.create(null)
    @props = props = Object.create(null)
