Skip to content

Commit

Permalink
remove layers from the DOMEventManager
Browse files Browse the repository at this point in the history
  • Loading branch information
onnlucky committed Jan 16, 2018
1 parent 42cc2a3 commit 1ba8793
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 1 deletion.
7 changes: 6 additions & 1 deletion framer/DOMEventManager.coffee
Expand Up @@ -3,7 +3,7 @@

Utils = require "./Utils"

EventManagerIdCounter = 0
EventManagerIdCounter = 1

class DOMEventManagerElement extends EventEmitter

Expand Down Expand Up @@ -42,6 +42,11 @@ class exports.DOMEventManager

@_elements[element._eventManagerId]

remove: (element) =>
return unless element._eventManagerId
delete @_elements[element._eventManagerId]
element._eventManagerId = 0

reset: ->
for element, elementEventManager of @_elements
elementEventManager.removeAllListeners()
1 change: 1 addition & 0 deletions framer/Layer.coffee
Expand Up @@ -958,6 +958,7 @@ class exports.Layer extends BaseClass

@_context.removeLayer(@)
@_context.emit("layer:destroy", @)
@_context.domEventManager.remove(@_element)


##############################################################
Expand Down
4 changes: 4 additions & 0 deletions test/tests/LayerTest.coffee
Expand Up @@ -1558,12 +1558,16 @@ describe "Layer", ->

it "should destroy", ->

before = Object.keys(Framer.CurrentContext.domEventManager._elements).length

layer = new Layer
layer.destroy()

(layer in Framer.CurrentContext.layers).should.be.false
assert.equal layer._element.parentNode, null

assert.equal before, Object.keys(Framer.CurrentContext.domEventManager._elements).length

it "should set text", ->

layer = new Layer
Expand Down

0 comments on commit 1ba8793

Please sign in to comment.