Jelajahi Sumber

Merge pull request #413 from sharelatex/ja-abort-in-progress-spell-checks

Abort any inprogress spell checks when switching document
James Allen 9 tahun lalu
induk
melakukan
51b76d2cf9

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

@@ -23,6 +23,8 @@ define [
 
 
 			@editor.on "changeSession", (e) =>
 			@editor.on "changeSession", (e) =>
 				@highlightedWordManager.reset()
 				@highlightedWordManager.reset()
+				if @inProgressRequest?
+					@inProgressRequest.abort()
 
 
 				if @$scope.spellCheckEnabled and @$scope.spellCheckLanguage and @$scope.spellCheckLanguage != ""
 				if @$scope.spellCheckEnabled and @$scope.spellCheckLanguage and @$scope.spellCheckLanguage != ""
 					@runSpellCheckSoon(200)
 					@runSpellCheckSoon(200)
@@ -185,7 +187,8 @@ define [
 			if not words.length
 			if not words.length
 				displayResult highlights
 				displayResult highlights
 			else
 			else
-				@apiRequest "/check", {language: language, words: words}, (error, result) =>
+				@inProgressRequest = @apiRequest "/check", {language: language, words: words}, (error, result) =>
+					delete @inProgressRequest
 					if error? or !result? or !result.misspellings?
 					if error? or !result? or !result.misspellings?
 						return null
 						return null
 					mispelled = []
 					mispelled = []
@@ -242,4 +245,4 @@ define [
 					callback null, data
 					callback null, data
 				error: (xhr, status, error) ->
 				error: (xhr, status, error) ->
 					callback error
 					callback error
-			$.ajax options
+			return $.ajax options