 			name = attrListeners.pop()
 			obj = attrListeners.pop()
 			obj[name].disconnect func
+
+		# restore classes
+		if (classes = @item._classes) or @classes
+			classes.clear()
+			if @classes
+				for name in @classes
+					classes.append name
 		return
 
 	updateText: ->

					mainItem: new Renderer[id]
					ids: {}
			else
				id = id.slice 'styles:'.length
				@scope = styles[id]?.withStructure()
			@isAutoParent = true
			if @scope
				@item = @scope.mainItem

					log.warn "Style file `#{id}` can't be find"
				return
		else
			parent = @parent
			loop
				scope = parent?.scope or windowStyle
				@item = scope.ids[id] or scope.mainItem.$?[id]
				@item ?= scope.styles(id)
				if @item or ((not parent or not (parent = parent.parent)) and scope is windowStyle)
					break

			unless @item
				unless File.Input.test id
