From b73a7b3156a9f3cdae72d8a2ec7f9326e7c87bee Mon Sep 17 00:00:00 2001 From: Akash Yadav Date: Tue, 21 Jun 2022 23:02:17 +0530 Subject: [PATCH] Fixed invalid span position and highlighting issue in XMLAnalyzer --- .../androidide/language/xml/XMLAnalyzer.kt | 14 +++++--------- .../test/test-home/.androidide/init/model.jar | Bin 55232 -> 55232 bytes 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/itsaky/androidide/language/xml/XMLAnalyzer.kt b/app/src/main/java/com/itsaky/androidide/language/xml/XMLAnalyzer.kt index d51d297d7..6453b21bc 100644 --- a/app/src/main/java/com/itsaky/androidide/language/xml/XMLAnalyzer.kt +++ b/app/src/main/java/com/itsaky/androidide/language/xml/XMLAnalyzer.kt @@ -77,18 +77,14 @@ class XMLAnalyzer : BaseIncrementalAnalyzeManager(XMLLexer::class.java) { val parser = CommonParseUtils(app.resourceTable, app.resources.displayMetrics) val spans = mutableListOf() var previous = XMLLexer.SEA_WS - var first = true + + spans.add(Span.obtain(0, makeStyle(TEXT_NORMAL))) + for (token in tokens.tokens) { val type = token.type val offset = token.startIndex when (type) { - XMLLexer.S, - XMLLexer.SEA_WS, -> - if (first) { - spans.add(Span.obtain(offset, makeStyle(TEXT_NORMAL))) - first = false - } XMLLexer.COMMENT -> spans.add(Span.obtain(offset, forComment())) OPEN, DASH, @@ -135,9 +131,9 @@ class XMLAnalyzer : BaseIncrementalAnalyzeManager(XMLLexer::class.java) { if (attribute.contains(":")) { spans.add(Span.obtain(offset, makeStyle(FIELD))) spans.add(Span.obtain(offset + attribute.indexOf(":"), makeStyle(TEXT_NORMAL))) - break + } else { + spans.add(Span.obtain(offset, makeStyle(colorId))) } - spans.add(Span.obtain(offset, makeStyle(colorId))) } TEXT -> // highlight hex color line try { diff --git a/build-tools/tooling-api-impl/src/test/test-home/.androidide/init/model.jar b/build-tools/tooling-api-impl/src/test/test-home/.androidide/init/model.jar index b9ea432aee3c2ddf76da5c06e6e46bcd034bf848..e8aa2ec49ede179ba67cac39c1145aeb1f18034a 100644 GIT binary patch delta 31 ncmX@Gp83FfW}X0VW)?061`ZAeqa7Q0Hk@KI+Oc`xDJEV3mrM!- delta 31 ncmX@Gp83FfW}X0VW)?061`ZB}TiZ7BY&gYqYuo01r