Skip to content

Commit 899d162

Browse files
committed
Refactored EndOfParagraphMarkerAdded a bit.
1 parent e3c5730 commit 899d162

File tree

1 file changed

+14
-16
lines changed

1 file changed

+14
-16
lines changed

aztec/src/main/kotlin/org/wordpress/aztec/watchers/EndOfParagraphMarkerAdder.kt

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -27,33 +27,31 @@ class EndOfParagraphMarkerAdder(aztecText: AztecText, val verticalParagraphMargi
2727
textChangedEventDetails.countOfCharacters = count
2828
textChangedEventDetails.start = start
2929
textChangedEventDetails.initialize()
30-
}
3130

32-
override fun afterTextChanged(text: Editable) {
33-
if (textChangedEventDetails.isNewLineButNotAtTheBeginning()) {
34-
if (isTargetForParagraphMarker(textChangedEventDetails)) {
35-
text.setSpan(EndOfParagraphMarker(verticalParagraphMargin), textChangedEventDetails.inputStart, textChangedEventDetails.inputEnd, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE)
36-
}
37-
return
38-
}
39-
}
31+
if (!textChangedEventDetails.isNewLineButNotAtTheBeginning()) return
4032

41-
fun isTargetForParagraphMarker(textChangedEvent: TextChangedEvent): Boolean {
4233
val aztecText = aztecTextRef.get()
4334
if (aztecText != null && !aztecText.isTextChangedListenerDisabled() && aztecText.isInCalypsoMode) {
44-
val isInsideList = aztecText.text.getSpans(textChangedEvent.inputStart, textChangedEvent.inputEnd, AztecListItemSpan::class.java).isNotEmpty()
35+
val inputStart = textChangedEventDetails.inputStart
36+
val inputEnd = textChangedEventDetails.inputEnd
4537

46-
var insideHeading = aztecText.text.getSpans(textChangedEvent.inputStart, textChangedEvent.inputEnd, AztecHeadingSpan::class.java).isNotEmpty()
38+
val isInsideList = aztecText.text.getSpans(inputStart, inputEnd, AztecListItemSpan::class.java).isNotEmpty()
39+
var insideHeading = aztecText.text.getSpans(inputStart, inputEnd, AztecHeadingSpan::class.java).isNotEmpty()
4740

48-
if (insideHeading && (aztecText.text.length > textChangedEvent.inputEnd && aztecText.text[textChangedEvent.inputEnd] == '\n')) {
41+
if (insideHeading && (aztecText.text.length > inputEnd
42+
&& aztecText.text[inputEnd] == '\n')) {
4943
insideHeading = false
5044
}
51-
return !isInsideList && !insideHeading
52-
}
5345

54-
return false
46+
if (!isInsideList && !insideHeading) {
47+
aztecText.text.setSpan(EndOfParagraphMarker(verticalParagraphMargin), inputStart, inputEnd,
48+
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE)
49+
}
50+
}
5551
}
5652

53+
override fun afterTextChanged(text: Editable) {}
54+
5755
companion object {
5856
fun install(editText: AztecText, verticalParagraphMargin: Int) {
5957
editText.addTextChangedListener(EndOfParagraphMarkerAdder(editText, verticalParagraphMargin))

0 commit comments

Comments
 (0)