TechbeeAT / jtxBoard

jtx Board allows you to manage your Journals (like meeting minutes), Notes and Tasks in one Android app. The app is compatible with the iCal standard (RFC5545) and is integrated with DAVx5 to allow the synchronisation of entries through CalDAV.
https://jtx.techbee.at/
GNU General Public License v3.0
326 stars 9 forks source link

[BUG] Possible crash when changing tabs #779

Closed patrickunterwegs closed 11 months ago

patrickunterwegs commented 11 months ago

App seems to crash when changing too quickly between tabs. Regrettably this seems to be a native crash by the Android system. Not sure if there is any solution but to wait for a library update...

2023-08-14 08:34:31.367  7524-7524  AndroidRuntime          at.techbee.jtx                       E  FATAL EXCEPTION: main
                                                                                                    Process: at.techbee.jtx, PID: 7524
                                                                                                    java.lang.IllegalStateException: replace() called on item that was not placed
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$LookaheadPassDelegate.replace(LayoutNodeLayoutDelegate.kt:1517)
                                                                                                        at androidx.compose.ui.node.LayoutNode.lookaheadReplace$ui_release(LayoutNode.kt:926)
                                                                                                        at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:471)
                                                                                                        at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtree(MeasureAndLayoutDelegate.kt:546)
                                                                                                        at androidx.compose.ui.node.MeasureAndLayoutDelegate.forceMeasureTheSubtree(MeasureAndLayoutDelegate.kt:554)
                                                                                                        at androidx.compose.ui.platform.AndroidComposeView.forceMeasureTheSubtree(AndroidComposeView.android.kt:930)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$LookaheadPassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:1253)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$LookaheadPassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:1184)
                                                                                                        at androidx.compose.foundation.lazy.layout.LazyLayoutMeasureScopeImpl.measure-0kLqBqw(LazyLayoutMeasureScope.kt:123)
                                                                                                        at androidx.compose.foundation.pager.PagerMeasureKt.getAndMeasure-SGf7dI0(PagerMeasure.kt:461)
                                                                                                        at androidx.compose.foundation.pager.PagerMeasureKt.measurePager-ntgEbfI(PagerMeasure.kt:183)
                                                                                                        at androidx.compose.foundation.pager.PagerMeasurePolicyKt$rememberPagerMeasurePolicy$1$1.invoke-0kLqBqw(PagerMeasurePolicy.kt:159)
                                                                                                        at androidx.compose.foundation.pager.PagerMeasurePolicyKt$rememberPagerMeasurePolicy$1$1.invoke(PagerMeasurePolicy.kt:66)
                                                                                                        at androidx.compose.foundation.lazy.layout.LazyLayoutKt$LazyLayout$3$2$1.invoke-0kLqBqw(LazyLayout.kt:103)
                                                                                                        at androidx.compose.foundation.lazy.layout.LazyLayoutKt$LazyLayout$3$2$1.invoke(LazyLayout.kt:96)
                                                                                                        at androidx.compose.ui.layout.LayoutNodeSubcompositionsState$createMeasurePolicy$1.measure-3p2s80s(SubcomposeLayout.kt:644)
                                                                                                        at androidx.compose.ui.node.InnerNodeCoordinator$LookaheadDelegateImpl.measure-BRTryo0(InnerNodeCoordinator.kt:81)
                                                                                                        at androidx.compose.foundation.AndroidOverscrollKt$StretchOverscrollNonClippingLayer$2.invoke-3p2s80s(AndroidOverscroll.kt:583)
                                                                                                        at androidx.compose.foundation.AndroidOverscrollKt$StretchOverscrollNonClippingLayer$2.invoke(AndroidOverscroll.kt:582)
                                                                                                        at androidx.compose.ui.layout.LayoutModifierImpl.measure-3p2s80s(LayoutModifier.kt:291)
                                                                                                        at androidx.compose.ui.node.LayoutModifierNodeCoordinator$LookaheadDelegateForLayoutModifierNode.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:64)
                                                                                                        at androidx.compose.foundation.AndroidOverscrollKt$StretchOverscrollNonClippingLayer$1.invoke-3p2s80s(AndroidOverscroll.kt:567)
                                                                                                        at androidx.compose.foundation.AndroidOverscrollKt$StretchOverscrollNonClippingLayer$1.invoke(AndroidOverscroll.kt:566)
                                                                                                        at androidx.compose.ui.layout.LayoutModifierImpl.measure-3p2s80s(LayoutModifier.kt:291)
                                                                                                        at androidx.compose.ui.node.LayoutModifierNodeCoordinator$LookaheadDelegateForLayoutModifierNode.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:64)
                                                                                                        at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier.measure-3p2s80s(GraphicsLayerModifier.kt:646)
                                                                                                        at androidx.compose.ui.node.LayoutModifierNodeCoordinator$LookaheadDelegateForLayoutModifierNode.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:64)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performLookaheadMeasure$1.invoke(LayoutNodeLayoutDelegate.kt:1577)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performLookaheadMeasure$1.invoke(LayoutNodeLayoutDelegate.kt:1576)
                                                                                                        at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:473)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:230)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
2023-08-14 08:34:31.383  7524-7524  AndroidRuntime          at.techbee.jtx                       E      at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:111)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release$default(OwnerSnapshotObserver.kt:105)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performLookaheadMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:1576)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performLookaheadMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:35)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$LookaheadPassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:1243)
                                                                                                        at androidx.compose.ui.node.LayoutNode.lookaheadRemeasure-_Sx5XlM$ui_release(LayoutNode.kt:1129)
                                                                                                        at androidx.compose.ui.node.LayoutNode.lookaheadRemeasure-_Sx5XlM$ui_release$default(LayoutNode.kt:1123)
                                                                                                        at androidx.compose.ui.node.MeasureAndLayoutDelegate.doLookaheadRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:311)
                                                                                                        at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:464)
                                                                                                        at androidx.compose.ui.node.MeasureAndLayoutDelegate.access$remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:39)
                                                                                                        at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureAndLayout(MeasureAndLayoutDelegate.kt:352)
                                                                                                        at androidx.compose.ui.platform.AndroidComposeView.measureAndLayout(AndroidComposeView.android.kt:908)
                                                                                                        at androidx.compose.ui.node.Owner.measureAndLayout$default(Owner.kt:228)
                                                                                                        at androidx.compose.ui.platform.AndroidComposeView.dispatchDraw(AndroidComposeView.android.kt:1156)
                                                                                                        at android.view.View.draw(View.java:23892)
                                                                                                        at android.view.View.updateDisplayListIfDirty(View.java:22756)
                                                                                                        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4540)
                                                                                                        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4513)
                                                                                                        at android.view.View.updateDisplayListIfDirty(View.java:22712)
                                                                                                        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4540)
                                                                                                        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4513)
                                                                                                        at android.view.View.updateDisplayListIfDirty(View.java:22712)
                                                                                                        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4540)
                                                                                                        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4513)
                                                                                                        at android.view.View.updateDisplayListIfDirty(View.java:22712)
                                                                                                        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4540)
                                                                                                        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4513)
                                                                                                        at android.view.View.updateDisplayListIfDirty(View.java:22712)
                                                                                                        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4540)
                                                                                                        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4513)
                                                                                                        at android.view.View.updateDisplayListIfDirty(View.java:22712)
                                                                                                        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4540)
                                                                                                        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4513)
                                                                                                        at android.view.View.updateDisplayListIfDirty(View.java:22712)
                                                                                                        at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:694)
                                                                                                        at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:700)
                                                                                                        at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:798)
                                                                                                        at android.view.ViewRootImpl.draw(ViewRootImpl.java:4939)
                                                                                                        at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:4643)
                                                                                                        at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3822)
                                                                                                        at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2465)
                                                                                                        at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:9305)
                                                                                                        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1339)
                                                                                                        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1348)
                                                                                                        at android.view.Choreographer.doCallbacks(Choreographer.java:952)
                                                                                                        at android.view.Choreographer.doFrame(Choreographer.java:882)
                                                                                                        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1322)
                                                                                                        at android.os.Handler.handleCallback(Handler.java:958)
                                                                                                        at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                                                        at android.os.Looper.loopOnce(Looper.java:205)
2023-08-14 08:34:31.384  7524-7524  AndroidRuntime          at.techbee.jtx                       E      at android.os.Looper.loop(Looper.java:294)
                                                                                                        at android.app.ActivityThread.main(ActivityThread.java:8176)
                                                                                                        at java.lang.reflect.Method.invoke(Native Method)
                                                                                                        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
                                                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:971)
patrickunterwegs commented 11 months ago

seems to be solved for now by downgrading to material3:1.2.0-alpha04 see 26bdfed69f671dd484e98a7bc16ad4b3d3d5bb3d