Просмотр исходного кода

Unbind unload listener when destroying editor

Alasdair Smith 8 лет назад
Родитель
Сommit
6c7e942470
1 измененных файлов с 5 добавлено и 2 удалено
  1. 5 2
      services/web/public/coffee/ide/editor/directives/aceEditor.coffee

+ 5 - 2
services/web/public/coffee/ide/editor/directives/aceEditor.coffee

@@ -386,15 +386,18 @@ define [
 					e.oldSession?.selection.off 'changeCursor', cursorPositionManager.onCursorChange
 					e.session.selection.on 'changeCursor', cursorPositionManager.onCursorChange
 
+				onUnloadForCursorPosition = () ->
+					cursorPositionManager.onUnload(editor.getSession())
+
 				initCursorPosition = () ->
 					cursorPositionManager.init()
 					editor.on 'changeSession', onSessionChangeForCursorPosition
 					onSessionChangeForCursorPosition({ session: editor.getSession() }) # Force initial setup
-					$(window).on "unload", () ->
-						cursorPositionManager.onUnload(editor.getSession())
+					$(window).on "unload", onUnloadForCursorPosition
 
 				tearDownCursorPosition = () ->
 					editor.off 'changeSession', onSessionChangeForCursorPosition
+					$(window).off "unload", onUnloadForCursorPosition
 
 				attachToAce = (sharejs_doc) ->
 					lines = sharejs_doc.getSnapshot().split("\n")