Skip to content

Commit fd31f68

Browse files
committed
fix: clear spans on paste
See: #150
1 parent 4bc763a commit fd31f68

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package org.fossify.notes.extensions
2+
3+
import android.text.InputFilter
4+
import android.text.Spanned
5+
import org.fossify.commons.views.MyEditText
6+
7+
fun MyEditText.enforcePlainText() {
8+
val stripSpans = InputFilter { source, start, end, _, _, _ ->
9+
val sub = source.subSequence(start, end)
10+
if (sub is Spanned) sub.toString() else sub
11+
}
12+
filters = (filters ?: emptyArray()) + stripSpans
13+
}

app/src/main/kotlin/org/fossify/notes/fragments/TextFragment.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import org.fossify.notes.databinding.FragmentTextBinding
2727
import org.fossify.notes.databinding.NoteViewHorizScrollableBinding
2828
import org.fossify.notes.databinding.NoteViewStaticBinding
2929
import org.fossify.notes.extensions.config
30+
import org.fossify.notes.extensions.enforcePlainText
3031
import org.fossify.notes.extensions.getPercentageFontSize
3132
import org.fossify.notes.extensions.updateWidgets
3233
import org.fossify.notes.helpers.MyMovementMethod
@@ -67,6 +68,8 @@ class TextFragment : NoteFragment() {
6768
noteEditText = textNoteView
6869
}
6970
}
71+
72+
noteEditText.enforcePlainText()
7073
if (config!!.clickableLinks) {
7174
noteEditText.apply {
7275
linksClickable = true

0 commit comments

Comments
 (0)