Fix: last letter jongsung bug

This commit is contained in:
2019-05-18 16:11:08 +09:00
parent b6ee3f47b0
commit 774e12d71f
+23 -4
View File
@@ -498,6 +498,7 @@ var TypingTest = {
// console.log("-----"); // console.log("-----");
// console.log("inputConent : '" + inputContent + "'"); // console.log("inputConent : '" + inputContent + "'");
// console.log("inputIndex : " + inputIndex); // console.log("inputIndex : " + inputIndex);
// console.log("typingLength : " + typingLength);
// console.log("misspelledIndex : " + misspelledIndex); // console.log("misspelledIndex : " + misspelledIndex);
if(inputIndex < 0) if(inputIndex < 0)
@@ -626,16 +627,22 @@ var TypingTest = {
// 입력할 글자에 종성이 있을 경우 // 입력할 글자에 종성이 있을 경우
else if(StringUtil.hasJongsung(typingLetter)) { else if(StringUtil.hasJongsung(typingLetter)) {
console.log("has jongsung"); // console.log("has jongsung");
var typingLetterJongsung = StringUtil.jongsung(typingLetter); var typingLetterJongsung = StringUtil.jongsung(typingLetter);
// 입력한 글자의 종성과 입력할 글자의 종성이 같은 경우 // 입력한 글자의 종성과 입력할 글자의 종성이 같은 경우
if(StringUtil.jongsung(inputLetter) == typingLetterJongsung) if(StringUtil.jongsung(inputLetter) == typingLetterJongsung) {
if(inputIndex == typingLength - 1)
highlightKey = "Enter";
else
highlightKey = StringUtil.chosung(typingNextLetter); highlightKey = StringUtil.chosung(typingNextLetter);
}
// 입력한 글자의 종성이 입력할 글자와 다를 경우 // 입력한 글자의 종성이 입력할 글자와 다를 경우
else { else {
if(inputIndex == typingLength - 1)
highlightKey = "Backspace";
// 입력할 글자의 종성이 합성자음일 경우 // 입력할 글자의 종성이 합성자음일 경우
if(StringUtil.isMultiAlphabetJongsung(typingLetterJongsung)) { else if(StringUtil.isMultiAlphabetJongsung(typingLetterJongsung)) {
var inputJongsungAlphabets = StringUtil.getMultiAlphabetFromJongsung(StringUtil.jongsung(inputLetter)); var inputJongsungAlphabets = StringUtil.getMultiAlphabetFromJongsung(StringUtil.jongsung(inputLetter));
var typingJongsungAlphabets = StringUtil.getMultiAlphabetFromJongsung(StringUtil.jongsung(typingLetter)); var typingJongsungAlphabets = StringUtil.getMultiAlphabetFromJongsung(StringUtil.jongsung(typingLetter));
@@ -669,9 +676,15 @@ var TypingTest = {
} }
} }
} }
// 입력할 글자에 종성이 없을 경우
else { else {
// console.log("inputLetter jongsung : " + StringUtil.jongsung(inputLetter)) // console.log("inputLetter jongsung : " + StringUtil.jongsung(inputLetter))
// console.log("typingNextLetter chosung : " + StringUtil.chosung(typingNextLetter)) // console.log("typingNextLetter chosung : " + StringUtil.chosung(typingNextLetter))
if(StringUtil.hasJongsung(inputLetter)) {
// console.log("### has jongsung");
if(inputIndex == typingLength - 1)
highlightKey = "Backspace";
else {
if(StringUtil.jongsung(inputLetter) == StringUtil.chosung(typingNextLetter)) { if(StringUtil.jongsung(inputLetter) == StringUtil.chosung(typingNextLetter)) {
// highlightKey = StringUtil.jungsung(typingNextLetter); // highlightKey = StringUtil.jungsung(typingNextLetter);
if(StringUtil.isMultiAlphabetJungsung(StringUtil.jungsung(typingNextLetter))) { if(StringUtil.isMultiAlphabetJungsung(StringUtil.jungsung(typingNextLetter))) {
@@ -684,7 +697,13 @@ var TypingTest = {
highlightKey = StringUtil.jungsung(typingNextLetter); highlightKey = StringUtil.jungsung(typingNextLetter);
// console.log(highlightKey); // console.log(highlightKey);
} }
} else }
else {
highlightKey = "Backspace";
}
}
}
else
highlightKey = "Backspace"; highlightKey = "Backspace";
} }
} }