Skip to content

AceJump stops working after switching context #187

@presence1

Description

@presence1

AceJump 3.4.0
IntelliJ IDEA 2016.3.7
Build #IU-163.15529.5, built on May 18, 2017
JRE: 1.8.0_112-release-287-b3 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o

Related to #175

Steps to reproduce:

  1. Start IntelliJ. AceJump is working fine after it starts.
  2. Press Alt+Shift+L to load a different context (after previously saving a context with Alt+Shift+S).
  3. Press Ctrl+semicolon or Ctrl+Alt+semicolon to start AceJump.

Outcome: nothing happens. AceJump doesn't start.

Bonus bug (same "Editor is already disposed" error):

  1. Start IntelliJ with 1 file open.
  2. Close file (editor view is now empty and shows a small list of keyboard shortcuts, e.g. "Search Everywhere Double Shift").
  3. Open another file.
  4. Press Ctrl+semicolon or Ctrl+Alt+semicolon to start AceJump.

Outcome: nothing happens. AceJump doesn't start.

Bonus bug 2 (same "Editor is already disposed" error):

  1. Start IntelliJ with 4 files open.
  2. Close 3 of the files (I am closing using the keyboard shortcut, which I have remapped).
  3. Press Ctrl+semicolon or Ctrl+Alt+semicolon to start AceJump in the remaining file.

Outcome: nothing happens. AceJump doesn't start.

Log:
2017-08-31 12:19:01,706 [ 825288] ERROR - llij.ide.plugins.PluginManager - Editor is already disposed com.intellij.openapi.util.TraceableDisposable$DisposalException: Editor is already disposed at com.intellij.openapi.util.TraceableDisposable.throwDisposalError(TraceableDisposable.java:94) at com.intellij.openapi.editor.impl.EditorImpl.throwDisposalError(EditorImpl.java:914) at com.intellij.openapi.editor.impl.view.TextLayoutCache.b(TextLayoutCache.java:189) at com.intellij.openapi.editor.impl.view.TextLayoutCache.getLineLayout(TextLayoutCache.java:148) at com.intellij.openapi.editor.impl.view.VisualLineFragmentsIterator.a(VisualLineFragmentsIterator.java:180) at com.intellij.openapi.editor.impl.view.VisualLineFragmentsIterator.c(VisualLineFragmentsIterator.java:170) at com.intellij.openapi.editor.impl.view.VisualLineFragmentsIterator.a(VisualLineFragmentsIterator.java:153) at com.intellij.openapi.editor.impl.view.VisualLineFragmentsIterator.<init>(VisualLineFragmentsIterator.java:105) at com.intellij.openapi.editor.impl.view.VisualLineFragmentsIterator.<init>(VisualLineFragmentsIterator.java:38) at com.intellij.openapi.editor.impl.view.VisualLineFragmentsIterator$1.iterator(VisualLineFragmentsIterator.java:44) at com.intellij.openapi.editor.impl.view.EditorCoordinateMapper.visualToLogicalPosition(EditorCoordinateMapper.java:141) at com.intellij.openapi.editor.impl.view.EditorView.visualToLogicalPosition(EditorView.java:159) at com.intellij.openapi.editor.impl.EditorImpl.visualToLogicalPosition(EditorImpl.java:4144) at com.intellij.openapi.editor.impl.EditorImpl.visualToLogicalPosition(EditorImpl.java:4139) at com.johnlindquist.acejump.search.AceUtilKt.visualLineToLogicalLine(AceUtil.kt:161) at com.johnlindquist.acejump.search.AceUtilKt.getView(AceUtil.kt:70) at com.johnlindquist.acejump.control.Handler.restoreScroll(Handler.kt:233) at com.johnlindquist.acejump.control.Handler.restoreSettings(Handler.kt:227) at com.johnlindquist.acejump.control.Handler.reset(Handler.kt:196) at com.johnlindquist.acejump.view.Model.setEditor(Model.kt:31) at com.johnlindquist.acejump.control.AceAction.actionPerformed(AceAction.kt:16) at com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:199) at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:215) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher$1.performAction(IdeKeyEventDispatcher.java:587) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.a(IdeKeyEventDispatcher.java:634) at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:204) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction(IdeKeyEventDispatcher.java:633) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.a(IdeKeyEventDispatcher.java:477) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.dispatchKeyEvent(IdeKeyEventDispatcher.java:211) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:657) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:391) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) 2017-08-31 12:19:01,722 [ 825304] ERROR - llij.ide.plugins.PluginManager - IntelliJ IDEA 2016.3.7 Build #IU-163.15529.5 2017-08-31 12:19:01,722 [ 825304] ERROR - llij.ide.plugins.PluginManager - JDK: 1.8.0_112-release 2017-08-31 12:19:01,722 [ 825304] ERROR - llij.ide.plugins.PluginManager - VM: OpenJDK 64-Bit Server VM 2017-08-31 12:19:01,722 [ 825304] ERROR - llij.ide.plugins.PluginManager - Vendor: JetBrains s.r.o 2017-08-31 12:19:01,722 [ 825304] ERROR - llij.ide.plugins.PluginManager - OS: Windows 10 2017-08-31 12:19:01,722 [ 825304] ERROR - llij.ide.plugins.PluginManager - Last Action: AceAction

By the way, thanks for creating this plugin! I really like it and intend to use it a lot. But I also use the context switching feature a lot, so I hope this is fixed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions