'LayoutCoordinate operations are only valid when isAttached is true

When I use LayoutCoordinate operations they are only valid when isAttached is true, and I have this error in compose version 1.0.5

FATAL EXCEPTION: main
    Process: com.musabeni.softvmswithjet, PID: 17748
    java.lang.IllegalStateException: LayoutCoordinate operations are only valid when isAttached is true
        at androidx.compose.ui.node.LayoutNodeWrapper.localToRoot-MK-Hz9U(LayoutNodeWrapper.kt:458)
        at androidx.compose.foundation.text.TextFieldDelegate$Companion.notifyFocusedRect$foundation_release(TextFieldDelegate.kt:178)
        at androidx.compose.foundation.text.CoreTextFieldKt.notifyTextInputServiceOnFocusChange(CoreTextField.kt:682)
        at androidx.compose.foundation.text.CoreTextFieldKt.access$notifyTextInputServiceOnFocusChange(CoreTextField.kt:1)
        at androidx.compose.foundation.text.CoreTextFieldKt$CoreTextField$focusModifier$1.invoke(CoreTextField.kt:270)
        at androidx.compose.foundation.text.CoreTextFieldKt$CoreTextField$focusModifier$1.invoke(CoreTextField.kt:259)
        at androidx.compose.ui.focus.FocusChangedModifierKt$onFocusChanged$2$1.invoke(FocusChangedModifier.kt:47)
        at androidx.compose.ui.focus.FocusChangedModifierKt$onFocusChanged$2$1.invoke(FocusChangedModifier.kt:44)
        at androidx.compose.ui.focus.FocusEventModifierImpl.onFocusEvent(FocusEventModifier.kt:39)
        at androidx.compose.ui.node.ModifiedFocusEventNode.propagateFocusEvent(ModifiedFocusEventNode.kt:30)
        at androidx.compose.ui.node.LayoutNodeWrapper.propagateFocusEvent(LayoutNodeWrapper.kt:682)
        at androidx.compose.ui.node.LayoutNodeWrapper.propagateFocusEvent(LayoutNodeWrapper.kt:682)
        at androidx.compose.ui.node.ModifiedFocusEventNode.propagateFocusEvent(ModifiedFocusEventNode.kt:31)
        at androidx.compose.ui.node.ModifiedFocusNode.sendOnFocusEvent(ModifiedFocusNode.kt:78)
        at androidx.compose.ui.node.ModifiedFocusNode.setFocusState(ModifiedFocusNode.kt:47)
        at androidx.compose.ui.focus.FocusTransactionsKt.grantFocus(FocusTransactions.kt:166)
        at androidx.compose.ui.focus.FocusTransactionsKt.requestFocusForChild(FocusTransactions.kt:211)
        at androidx.compose.ui.focus.FocusTransactionsKt.requestFocus(FocusTransactions.kt:65)
        at androidx.compose.ui.focus.FocusRequester.requestFocus(FocusRequester.kt:55)
        at androidx.compose.foundation.text.CoreTextFieldKt.tapToFocus(CoreTextField.kt:655)
        at androidx.compose.foundation.text.CoreTextFieldKt.access$tapToFocus(CoreTextField.kt:1)
        at androidx.compose.foundation.text.CoreTextFieldKt$CoreTextField$pointerModifier$1.invoke-k-4lQ0M(CoreTextField.kt:287)
        at androidx.compose.foundation.text.CoreTextFieldKt$CoreTextField$pointerModifier$1.invoke(CoreTextField.kt:286)
        at androidx.compose.foundation.text.TextFieldPressGestureFilterKt$tapPressTextFieldModifier$1$2$2.invoke-k-4lQ0M(TextFieldPressGestureFilter.kt:82)
        at androidx.compose.foundation.text.TextFieldPressGestureFilterKt$tapPressTextFieldModifier$1$2$2.invoke(TextFieldPressGestureFilter.kt:55)
        at androidx.compose.foundation.gestures.TapGestureDetectorKt$detectTapAndPress$2$1$1.invokeSuspend(TapGestureDetector.kt:378)
        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
        at kotlinx.coroutines.DispatchedTaskKt.resume(DispatchedTask.kt:178)
        at kotlinx.coroutines.DispatchedTaskKt.dispatch(DispatchedTask.kt:166)
        at kotlinx.coroutines.CancellableContinuationImpl.dispatchResume(CancellableContinuationImpl.kt:397)
        at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl(CancellableContinuationImpl.kt:431)
        at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl$default(CancellableContinuationImpl.kt:420)
        at kotlinx.coroutines.CancellableContinuationImpl.resumeWith(CancellableContinuationImpl.kt:328)
        at androidx.compose.ui.input.pointer.SuspendingPointerInputFilter$PointerEventHandlerCoroutine.offerPointerEvent(SuspendingPointerInputFilter.kt:432)
        at androidx.compose.ui.input.pointer.SuspendingPointerInputFilter.dispatchPointerEvent(SuspendingPointerInputFilter.kt:330)
        at androidx.compose.ui.input.pointer.SuspendingPointerInputFilter.onPointerEvent-H0pRuoY(SuspendingPointerInputFilter.kt:343)
2022-02-07 16:18:48.945 17748-17748/com.musabeni.softvmswithjet E/AndroidRuntime:     at androidx.compose.ui.input.pointer.Node.dispatchMainEventPass(HitPathTracker.kt:287)
        at androidx.compose.ui.input.pointer.Node.dispatchMainEventPass(HitPathTracker.kt:275)
        at androidx.compose.ui.input.pointer.Node.dispatchMainEventPass(HitPathTracker.kt:275)
        at androidx.compose.ui.input.pointer.Node.dispatchMainEventPass(HitPathTracker.kt:275)
        at androidx.compose.ui.input.pointer.Node.dispatchMainEventPass(HitPathTracker.kt:275)
        at androidx.compose.ui.input.pointer.Node.dispatchMainEventPass(HitPathTracker.kt:275)
        at androidx.compose.ui.input.pointer.NodeParent.dispatchMainEventPass(HitPathTracker.kt:151)
        at androidx.compose.ui.input.pointer.HitPathTracker.dispatchChanges(HitPathTracker.kt:90)
        at androidx.compose.ui.input.pointer.PointerInputEventProcessor.process-gBdvCQM(PointerInputEventProcessor.kt:77)
        at androidx.compose.ui.platform.AndroidComposeView.dispatchTouchEvent(AndroidComposeView.android.kt:860)
        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
        at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:414)
        at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1808)
        at android.app.Activity.dispatchTouchEvent(Activity.java:3105)
        at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:376)
        at android.view.View.dispatchPointerEvent(View.java:10244)
        at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4444)
        at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4312)
        at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3859)
        at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3912)
        at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3878)
        at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4005)
        at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3886)
        at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4062)
        at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3859)
        at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3912)
        at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3878)
        at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3886)
        at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3859)
        at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:6253)
        at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:6227)
        at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:6188)
        at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:6356)
        at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
        at android.os.MessageQueue.nativePollOnce(Native Method)
        at android.os.MessageQueue.next(MessageQueue.java:323)
        at android.os.Looper.loop(Looper.java:136)
        at android.app.ActivityThread.main(ActivityThread.java:6121)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source