- Bug reports which do not fill the complete issue template will be closed.
- Please have a look at our FAQ
- Please search the existing issues first, it's likely that your issue was already reported or even fixed.
- This repository is only for issues within the Nextcloud Notes Android app
-->
Please use GitHub reactions 👍 to show that you are affected by the same issue. Please don't comment if you have no relevant information to add!
Describe the bug
Receive Error: IndexOutOfBoundsException - setSpan starts before 0
To Reproduce
Steps to reproduce the behavior:
- Start Nextcloud Notes Android
- Click on searchfield
- type two chars like 'do'
- See error
Expected behavior
show search results
Screenshots
Smartphone (please complete the following information):
- Nextcloud Notes-Version (android app): 4.1.0 RC1
- F-Droid or Play Store: fdroid
- Android-Version: 11
- Device: nairo
Server
- Nextcloud version: 26.0.4
- Nextcloud Notes version (server app): 4.8.1
Stacktrace
App Version: 4.1.0 RC1
App Version Code: 40010051
App Flavor: fdroid
Files App Version Code: 30250090 (PROD)
---
OS Version: 4.19.125-perf+(9ab668)
OS API Level: 30
Device: nairo
Manufacturer: motorola
Model (and Product): moto g 5G plus (nairo_retaile)
---
java.lang.IndexOutOfBoundsException: setSpan (-1 ... 204) starts before 0
at android.text.SpannableStringInternal.checkRange(SpannableStringInternal.java:497)
at android.text.SpannableStringInternal.setSpan(SpannableStringInternal.java:197)
at android.text.SpannableStringInternal.setSpan(SpannableStringInternal.java:184)
at android.text.SpannableString.setSpan(SpannableString.java:60)
at com.nextcloud.android.common.ui.theme.utils.AndroidViewThemeUtils.spanText(AndroidViewThemeUtils.kt:584)
at com.nextcloud.android.common.ui.theme.utils.AndroidViewThemeUtils.highlightText(AndroidViewThemeUtils.kt:562)
at com.nextcloud.android.common.ui.theme.utils.AndroidViewThemeUtils.access$highlightText(AndroidViewThemeUtils.kt:75)
at com.nextcloud.android.common.ui.theme.utils.AndroidViewThemeUtils$highlightText$1.invoke(AndroidViewThemeUtils.kt:548)
at com.nextcloud.android.common.ui.theme.utils.AndroidViewThemeUtils$highlightText$1.invoke(AndroidViewThemeUtils.kt:547)
at com.nextcloud.android.common.ui.theme.ViewThemeUtilsBase.withScheme(ViewThemeUtilsBase.kt:49)
at com.nextcloud.android.common.ui.theme.utils.AndroidViewThemeUtils.highlightText(AndroidViewThemeUtils.kt:547)
at com.nextcloud.android.common.ui.theme.utils.AndroidViewThemeUtils.highlightText$default(AndroidViewThemeUtils.kt:541)
at com.nextcloud.android.common.ui.theme.utils.AndroidViewThemeUtils.highlightText(Unknown Source:23)
at it.niedermann.owncloud.notes.main.items.NoteViewHolder.bindSearchableContent(NoteViewHolder.java:98)
at it.niedermann.owncloud.notes.main.items.list.NoteViewHolderWithExcerpt.bind(NoteViewHolderWithExcerpt.java:41)
at it.niedermann.owncloud.notes.main.items.ItemAdapter.onBindViewHolder(ItemAdapter.java:154)
at androidx.recyclerview.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:7678)
at androidx.recyclerview.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:7761)
at androidx.recyclerview.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:6582)
at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6848)
at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6688)
at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6684)
at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2362)
at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1662)
at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1622)
at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:687)
at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4604)
at androidx.recyclerview.widget.RecyclerView.onMeasure(RecyclerView.java:3981)
at android.view.View.measure(View.java:25548)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:25548)
at androidx.swiperefreshlayout.widget.SwipeRefreshLayout.onMeasure(SwipeRefreshLayout.java:705)
at android.view.View.measure(View.java:25548)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
at android.view.View.measure(View.java:25548)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:760)
at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:833)
at android.view.View.measure(View.java:25548)
at androidx.drawerlayout.widget.DrawerLayout.onMeasure(DrawerLayout.java:1156)
at android.view.View.measure(View.java:25548)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:145)
at android.view.View.measure(View.java:25548)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:25548)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:25548)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
at android.view.View.measure(View.java:25548)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at com.android.internal.policy.DecorView.onMeasure(DecorView.java:781)
at android.view.View.measure(View.java:25548)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:3527)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:2353)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2616)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2064)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8400)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:972)
at android.view.Choreographer.doCallbacks(Choreographer.java:796)
at android.view.Choreographer.doFrame(Choreographer.java:731)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:957)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:250)
at android.app.ActivityThread.main(ActivityThread.java:7755)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:958)
-->
Please use GitHub reactions 👍 to show that you are affected by the same issue. Please don't comment if you have no relevant information to add!
Describe the bug
Receive Error: IndexOutOfBoundsException - setSpan starts before 0
To Reproduce
Steps to reproduce the behavior:
Expected behavior
show search results
Screenshots
Smartphone (please complete the following information):
Server
Stacktrace