intellij-file-preview
intellij-file-preview copied to clipboard
Exception when using with Code With Me
To Reproduce: This plugin is installed on the host machine using the IJ 2021.1 built in "Code With Me" functionality, and a guest is connected and has enabled following of the host.
In that situation if the host clicks around on files to preview them, when clicking off a file and onto another preview the IDE will throw an exception and the previous preview will remain open.
Stack Trace:
java.lang.IllegalArgumentException: Closing guests editor not from unknown places
at com.jetbrains.rdserver.editors.RemoteEditors.assertIsClosingFromGuest(RemoteEditors.kt:154)
at com.jetbrains.rdserver.editors.BackendServerFileEditorManager.closeRemoteTextEditor(BackendServerFileEditorManager.kt:214)
at com.jetbrains.rdserver.editors.BackendServerFileEditorManager.closeFile(BackendServerFileEditorManager.kt:204)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.closeFile(FileEditorManagerImpl.java:695)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.lambda$closeFileEditor$4(PreviewUtil.java:185)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.lambda$invokeSafeAndWait$0(PreviewUtil.java:106)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:415)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:433)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.invokeSafeAndWait(PreviewUtil.java:104)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.closeFileEditor(PreviewUtil.java:181)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.closeOtherPreviews(PreviewUtil.java:197)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewProjectHandler$2.lambda$fileOpened$0(PreviewProjectHandler.java:83)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.lambda$consumeSelectedFile$7(PreviewUtil.java:210)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.lambda$null$5(PreviewUtil.java:205)
at com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:45)
at com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:68)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.lambda$consumeDataContext$6(PreviewUtil.java:204)
at com.intellij.openapi.util.ExecutionCallback.doWhenExecuted(ExecutionCallback.java:86)
at com.intellij.openapi.util.ActionCallback.doWhenDone(ActionCallback.java:111)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.consumeDataContext(PreviewUtil.java:204)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.consumeSelectedFile(PreviewUtil.java:210)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewProjectHandler$2.fileOpened(PreviewProjectHandler.java:80)
at com.intellij.util.messages.impl.MessageBusImpl.invokeMethod(MessageBusImpl.java:674)
at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:649)
at com.intellij.util.messages.impl.MessageBusImpl.deliverMessage(MessageBusImpl.java:422)
at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:397)
at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:379)
at com.intellij.util.messages.impl.MessageBusImpl.access$100(MessageBusImpl.java:33)
at com.intellij.util.messages.impl.MessageBusImpl$MessagePublisher.invoke(MessageBusImpl.java:185)
at com.sun.proxy.$Proxy222.fileOpened(Unknown Source)
at com.jetbrains.rdserver.editors.BackendServerFileEditorManager$openRemoteEditor$1$1.run(BackendServerFileEditorManager.kt:157)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl$8.lambda$run$0(FileEditorManagerImpl.java:1150)
at com.intellij.openapi.util.ExpirableRunnable$1.run(ExpirableRunnable.java:17)
at com.intellij.openapi.wm.impl.FocusManagerImpl.lambda$doWhenFocusSettlesDown$3(FocusManagerImpl.java:182)
at com.intellij.util.ui.EdtInvocationManager.invokeLaterIfNeeded(EdtInvocationManager.java:101)
at com.intellij.ide.IdeEventQueue.ifFocusEventsInTheQueue(IdeEventQueue.java:188)
at com.intellij.ide.IdeEventQueue.executeWhenAllFocusEventsLeftTheQueue(IdeEventQueue.java:140)
at com.intellij.openapi.wm.impl.FocusManagerImpl.doWhenFocusSettlesDown(FocusManagerImpl.java:173)
at com.intellij.openapi.wm.impl.FocusManagerImpl.doWhenFocusSettlesDown(FocusManagerImpl.java:179)
at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.doWhenFocusSettlesDown(IdeFocusManagerImpl.java:41)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl$8.run(FileEditorManagerImpl.java:1149)
at com.intellij.openapi.util.BusyObject$Impl$Simple.execute(BusyObject.java:105)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.notifyPublisher(FileEditorManagerImpl.java:1146)
at com.jetbrains.rdserver.editors.BackendServerFileEditorManager$openRemoteEditor$1.run(BackendServerFileEditorManager.kt:154)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:415)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:433)
at com.jetbrains.rdserver.editors.BackendServerFileEditorManager.openRemoteEditor(BackendServerFileEditorManager.kt:103)
at com.jetbrains.rdserver.editors.BackendServerFileEditorManager.openFileImpl4(BackendServerFileEditorManager.kt:83)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileImpl3(FileEditorManagerImpl.java:898)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.lambda$openFileImpl2$14(FileEditorManagerImpl.java:879)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:207)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:172)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:162)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:148)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileImpl2(FileEditorManagerImpl.java:879)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileWithProviders(FileEditorManagerImpl.java:765)
at com.intellij.openapi.fileEditor.ex.FileEditorManagerEx.openFile(FileEditorManagerEx.java:128)
at com.jetbrains.rdserver.editors.FollowMeSynchronizer.syncFollower(FollowMeSynchronizer.kt:47)
at com.jetbrains.rdserver.editors.FollowMeSynchronizer.selectionChanged(FollowMeSynchronizer.kt:99)
at com.intellij.util.messages.impl.MessageBusImpl.invokeMethod(MessageBusImpl.java:674)
at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:649)
at com.intellij.util.messages.impl.MessageBusImpl.deliverMessage(MessageBusImpl.java:422)
at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:397)
at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:379)
at com.intellij.util.messages.impl.MessageBusImpl.access$100(MessageBusImpl.java:33)
at com.intellij.util.messages.impl.MessageBusImpl$MessagePublisher.invoke(MessageBusImpl.java:185)
at com.sun.proxy.$Proxy222.selectionChanged(Unknown Source)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.lambda$fireSelectionChanged$29(FileEditorManagerImpl.java:1672)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl$8.lambda$run$0(FileEditorManagerImpl.java:1150)
at com.intellij.openapi.util.ExpirableRunnable$1.run(ExpirableRunnable.java:17)
at com.intellij.openapi.wm.impl.FocusManagerImpl.lambda$doWhenFocusSettlesDown$3(FocusManagerImpl.java:182)
at com.intellij.util.ui.EdtInvocationManager.invokeLaterIfNeeded(EdtInvocationManager.java:101)
at com.intellij.ide.IdeEventQueue.ifFocusEventsInTheQueue(IdeEventQueue.java:188)
at com.intellij.ide.IdeEventQueue.executeWhenAllFocusEventsLeftTheQueue(IdeEventQueue.java:140)
at com.intellij.openapi.wm.impl.FocusManagerImpl.doWhenFocusSettlesDown(FocusManagerImpl.java:173)
at com.intellij.openapi.wm.impl.FocusManagerImpl.doWhenFocusSettlesDown(FocusManagerImpl.java:179)
at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.doWhenFocusSettlesDown(IdeFocusManagerImpl.java:41)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl$8.run(FileEditorManagerImpl.java:1149)
at com.intellij.openapi.util.BusyObject$Impl$Simple.execute(BusyObject.java:105)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.notifyPublisher(FileEditorManagerImpl.java:1146)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.fireSelectionChanged(FileEditorManagerImpl.java:1672)
at com.intellij.openapi.fileEditor.impl.EditorsSplitters.lambda$setCurrentWindow$10(EditorsSplitters.java:709)
at com.intellij.openapi.fileEditor.impl.EditorsSplitters.setCurrentWindow(EditorsSplitters.java:718)
at com.intellij.openapi.fileEditor.impl.EditorWindow.setEditor(EditorWindow.java:583)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileImpl4Edt(FileEditorManagerImpl.java:1016)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.lambda$openFileImpl4$17(FileEditorManagerImpl.java:954)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.runBulkTabChange(FileEditorManagerImpl.java:1766)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.lambda$openFileImpl4$18(FileEditorManagerImpl.java:953)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:415)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:433)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileImpl4(FileEditorManagerImpl.java:952)
at com.jetbrains.rdserver.editors.BackendServerFileEditorManager.openFileImpl4(BackendServerFileEditorManager.kt:80)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileImpl3(FileEditorManagerImpl.java:898)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.lambda$openFileImpl2$14(FileEditorManagerImpl.java:879)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:216)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:172)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:162)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:148)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileImpl2(FileEditorManagerImpl.java:879)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileWithProviders(FileEditorManagerImpl.java:765)
at com.intellij.openapi.fileEditor.ex.FileEditorManagerEx.openFile(FileEditorManagerEx.java:128)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.lambda$openPreviewOrEditor$2(PreviewUtil.java:154)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.lambda$invokeSafeAndWait$0(PreviewUtil.java:106)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:415)
at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:433)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.invokeSafeAndWait(PreviewUtil.java:104)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.openPreviewOrEditor(PreviewUtil.java:153)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.lambda$openPreviewOrEditor$3(PreviewUtil.java:163)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.lambda$null$5(PreviewUtil.java:205)
at com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:45)
at com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:68)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.lambda$consumeDataContext$6(PreviewUtil.java:204)
at com.intellij.openapi.util.ExecutionCallback.doWhenExecuted(ExecutionCallback.java:86)
at com.intellij.openapi.util.ActionCallback.doWhenDone(ActionCallback.java:111)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.consumeDataContext(PreviewUtil.java:204)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.openPreviewOrEditor(PreviewUtil.java:162)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.openPreviewOrEditor(PreviewUtil.java:168)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewProjectHandler.lambda$openOrFocusSelectedFile$7(PreviewProjectHandler.java:211)
at net.seesharpsoft.intellij.plugins.filepreview.PreviewUtil.lambda$invokeSafe$1(PreviewUtil.java:114)
at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:218)
at com.intellij.openapi.application.TransactionGuardImpl.access$200(TransactionGuardImpl.java:21)
at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:200)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:781)
at com.intellij.openapi.application.impl.ApplicationImpl.lambda$invokeLater$4(ApplicationImpl.java:319)
at com.intellij.codeWithMe.ClientId$Companion.withClientId(ClientId.kt:135)
at com.intellij.codeWithMe.ClientId.withClientId(ClientId.kt)
at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:81)
at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:133)
at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:46)
at com.intellij.openapi.application.impl.FlushQueue$FlushNow.run(FlushQueue.java:189)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:969)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:839)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:449)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:808)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$9(IdeEventQueue.java:448)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:781)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:496)
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)```