Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IllegalArgumentException when selecting text #25

Closed
igordmn opened this issue Oct 22, 2020 · 2 comments
Closed

IllegalArgumentException when selecting text #25

igordmn opened this issue Oct 22, 2020 · 2 comments
Assignees
Labels
bug Something isn't working

Comments

@igordmn
Copy link
Collaborator

igordmn commented Oct 22, 2020

  1. Run ./gradlew compose:desktop:desktop:desktop-samples:run1

  2. Select text in code block and in the block above (starting from code block)

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Start(0) or End(34) is out of range [0..9), or start > end!
	at androidx.compose.ui.text.MultiParagraph.getPathForRange(MultiParagraph.kt:251)
	at androidx.compose.ui.text.TextDelegate$Companion.paintBackground(TextDelegate.kt:264)
	at androidx.compose.foundation.text.TextController$modifiers$1.invoke(CoreText.kt:209)
	at androidx.compose.foundation.text.TextController$modifiers$1.invoke(CoreText.kt)
	at androidx.compose.ui.DrawBackgroundModifier.draw(DrawModifier.kt:64)
	at androidx.compose.ui.node.ModifiedDrawNode.draw(ModifiedDrawNode.kt:76)
	at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt:170)
	at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2$1.invoke(DesktopOwner.kt:226)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2$1.invoke(DesktopOwner.kt)
	at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:133)
	at androidx.compose.ui.platform.DesktopOwner.observeDrawModelReads(DesktopOwner.kt:210)
	at androidx.compose.ui.platform.DesktopOwner.access$observeDrawModelReads(DesktopOwner.kt)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2.invoke(DesktopOwner.kt:225)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2.invoke(DesktopOwner.kt)
	at androidx.compose.ui.platform.SkijaLayer.performDrawLayer(SkijaLayer.kt:164)
	at androidx.compose.ui.platform.SkijaLayer.drawLayer(SkijaLayer.kt:130)
	at androidx.compose.ui.node.LayerWrapper.draw(LayerWrapper.kt:78)
	at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.draw(DelegatingLayoutNodeWrapper.kt:72)
	at androidx.compose.ui.node.LayoutNode.draw(LayoutNode.kt:837)
	at androidx.compose.ui.node.InnerPlaceable.draw(InnerPlaceable.kt:134)
	at androidx.compose.ui.node.ModifiedLayoutNode.draw(ModifiedLayoutNode.kt:81)
	at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt:170)
	at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2$1.invoke(DesktopOwner.kt:226)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2$1.invoke(DesktopOwner.kt)
	at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:133)
	at androidx.compose.ui.platform.DesktopOwner.observeDrawModelReads(DesktopOwner.kt:210)
	at androidx.compose.ui.platform.DesktopOwner.access$observeDrawModelReads(DesktopOwner.kt)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2.invoke(DesktopOwner.kt:225)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2.invoke(DesktopOwner.kt)
	at androidx.compose.ui.platform.SkijaLayer.performDrawLayer(SkijaLayer.kt:164)
	at androidx.compose.ui.platform.SkijaLayer.drawLayer(SkijaLayer.kt:130)
	at androidx.compose.ui.node.LayerWrapper.draw(LayerWrapper.kt:78)
	at androidx.compose.ui.node.ModifiedLayoutNode.draw(ModifiedLayoutNode.kt:81)
	at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt:170)
	at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2$1.invoke(DesktopOwner.kt:226)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2$1.invoke(DesktopOwner.kt)
	at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:133)
	at androidx.compose.ui.platform.DesktopOwner.observeDrawModelReads(DesktopOwner.kt:210)
	at androidx.compose.ui.platform.DesktopOwner.access$observeDrawModelReads(DesktopOwner.kt)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2.invoke(DesktopOwner.kt:225)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2.invoke(DesktopOwner.kt)
	at androidx.compose.ui.platform.SkijaLayer.performDrawLayer(SkijaLayer.kt:164)
	at androidx.compose.ui.platform.SkijaLayer.drawLayer(SkijaLayer.kt:130)
	at androidx.compose.ui.node.LayerWrapper.draw(LayerWrapper.kt:78)
	at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.draw(DelegatingLayoutNodeWrapper.kt:72)
	at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.draw(DelegatingLayoutNodeWrapper.kt:72)
	at androidx.compose.ui.node.ModifiedLayoutNode.draw(ModifiedLayoutNode.kt:81)
	at androidx.compose.ui.node.LayoutNode.draw(LayoutNode.kt:837)
	at androidx.compose.ui.node.InnerPlaceable.draw(InnerPlaceable.kt:134)
	at androidx.compose.ui.node.ModifiedLayoutNode.draw(ModifiedLayoutNode.kt:81)
	at androidx.compose.ui.node.LayoutNode.draw(LayoutNode.kt:837)
	at androidx.compose.ui.node.InnerPlaceable.draw(InnerPlaceable.kt:134)
	at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.draw(DelegatingLayoutNodeWrapper.kt:72)
	at androidx.compose.ui.node.LayoutNode.draw(LayoutNode.kt:837)
	at androidx.compose.ui.node.InnerPlaceable.draw(InnerPlaceable.kt:134)
	at androidx.compose.ui.node.ModifiedLayoutNode.draw(ModifiedLayoutNode.kt:81)
	at androidx.compose.ui.node.LayoutNode.draw(LayoutNode.kt:837)
	at androidx.compose.ui.node.InnerPlaceable.draw(InnerPlaceable.kt:134)
	at androidx.compose.ui.node.LayoutNode.draw(LayoutNode.kt:837)
	at androidx.compose.ui.node.InnerPlaceable.draw(InnerPlaceable.kt:134)
	at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt:170)
	at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2$1.invoke(DesktopOwner.kt:226)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2$1.invoke(DesktopOwner.kt)
	at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:133)
	at androidx.compose.ui.platform.DesktopOwner.observeDrawModelReads(DesktopOwner.kt:210)
	at androidx.compose.ui.platform.DesktopOwner.access$observeDrawModelReads(DesktopOwner.kt)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2.invoke(DesktopOwner.kt:225)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2.invoke(DesktopOwner.kt)
	at androidx.compose.ui.platform.SkijaLayer.performDrawLayer(SkijaLayer.kt:164)
	at androidx.compose.ui.platform.SkijaLayer.drawLayer(SkijaLayer.kt:130)
	at androidx.compose.ui.node.LayerWrapper.draw(LayerWrapper.kt:78)
	at androidx.compose.ui.node.LayoutNodeDrawScope.drawContent(LayoutNode.kt:1435)
	at androidx.compose.foundation.Background.draw(Background.kt:104)
	at androidx.compose.ui.node.ModifiedDrawNode.draw(ModifiedDrawNode.kt:76)
	at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt:170)
	at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2$1.invoke(DesktopOwner.kt:226)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2$1.invoke(DesktopOwner.kt)
	at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:133)
	at androidx.compose.ui.platform.DesktopOwner.observeDrawModelReads(DesktopOwner.kt:210)
	at androidx.compose.ui.platform.DesktopOwner.access$observeDrawModelReads(DesktopOwner.kt)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2.invoke(DesktopOwner.kt:225)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2.invoke(DesktopOwner.kt)
	at androidx.compose.ui.platform.SkijaLayer.performDrawLayer(SkijaLayer.kt:164)
	at androidx.compose.ui.platform.SkijaLayer.drawLayer(SkijaLayer.kt:130)
	at androidx.compose.ui.node.LayerWrapper.draw(LayerWrapper.kt:78)
	at androidx.compose.ui.node.LayoutNode.draw(LayoutNode.kt:837)
	at androidx.compose.ui.node.InnerPlaceable.draw(InnerPlaceable.kt:134)
	at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.draw(DelegatingLayoutNodeWrapper.kt:72)
	at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.draw(DelegatingLayoutNodeWrapper.kt:72)
	at androidx.compose.ui.node.LayoutNode.draw(LayoutNode.kt:837)
	at androidx.compose.ui.node.InnerPlaceable.draw(InnerPlaceable.kt:134)
	at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.draw(DelegatingLayoutNodeWrapper.kt:72)
	at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.draw(DelegatingLayoutNodeWrapper.kt:72)
	at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.draw(DelegatingLayoutNodeWrapper.kt:72)
	at androidx.compose.ui.node.DelegatingLayoutNodeWrapper.draw(DelegatingLayoutNodeWrapper.kt:72)
	at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt:170)
	at androidx.compose.ui.node.LayerWrapper.invoke(LayerWrapper.kt)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2$1.invoke(DesktopOwner.kt:226)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2$1.invoke(DesktopOwner.kt)
	at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:1721)
	at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:128)
	at androidx.compose.ui.platform.DesktopOwner.observeDrawModelReads(DesktopOwner.kt:210)
	at androidx.compose.ui.platform.DesktopOwner.access$observeDrawModelReads(DesktopOwner.kt)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2.invoke(DesktopOwner.kt:225)
	at androidx.compose.ui.platform.DesktopOwner$createLayer$2.invoke(DesktopOwner.kt)
	at androidx.compose.ui.platform.SkijaLayer.performDrawLayer(SkijaLayer.kt:164)
	at androidx.compose.ui.platform.SkijaLayer.drawLayer(SkijaLayer.kt:130)
	at androidx.compose.ui.node.LayerWrapper.draw(LayerWrapper.kt:78)
	at androidx.compose.ui.node.LayoutNode.draw(LayoutNode.kt:837)
	at androidx.compose.ui.platform.DesktopOwner.draw(DesktopOwner.kt:241)
	at androidx.compose.ui.platform.DesktopOwners.onFrame(DesktopOwners.kt:92)
	at androidx.compose.ui.platform.DesktopOwners$onFrame$1.invokeSuspend(DesktopOwners.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:56)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
@igordmn igordmn added the bug Something isn't working label Oct 22, 2020
@olonho olonho added this to the M2 milestone Nov 12, 2020
@prepor
Copy link
Contributor

prepor commented Nov 16, 2020

It's not desktop specific, but a general Compose bug. I created an issue https://partnerissuetracker.corp.google.com/u/1/issues/173215242

@olonho olonho removed this from the M2 milestone Nov 24, 2020
@prepor
Copy link
Contributor

prepor commented Jan 27, 2021

It should be fixed now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants