updated in the previous commit. It also attempts to address a bug in
the implementation of "Find All". When searching is complete and the
requisite highlighting has been recorded but not displayed, the
hourglass barrier on the interactions pane is removed. The code to
update the find/replace panel runs asynchronously in the event thread.
Prior to this commit, this asynchronous thread also updated the state
of the definitions pane (setting the active document). In some cases,
it appears that the definitions pane can be accessed before it
is updated by the asynchronous thread, putting it in an inconsistent
state. In this revision, the code that updates the state of the
definitions pane (at least the part involving the active document) is
performed in the "Find All" thread.
The following files were modified:
M src/edu/rice/cs/drjava/IndentFiles.java
M src/edu/rice/cs/drjava/DrJavaRoot.java
M src/edu/rice/cs/drjava/model/DummyGlobalModelListener.java
M src/edu/rice/cs/drjava/model/debug/DebugTestCase.java
M src/edu/rice/cs/drjava/model/debug/DebugListener.java
M src/edu/rice/cs/drjava/model/debug/jpda/DocumentDebugAction.java
M src/edu/rice/cs/drjava/model/debug/jpda/JPDADebugger.java
M src/edu/rice/cs/drjava/model/debug/jpda/EventHandlerThread.java
M src/edu/rice/cs/drjava/model/debug/jpda/PendingRequestManager.java
M src/edu/rice/cs/drjava/model/GlobalModelIOTest.java
M src/edu/rice/cs/drjava/model/Finalizable.java
M src/edu/rice/cs/drjava/model/GlobalModel.java
M src/edu/rice/cs/drjava/model/cache/DocumentCache.java
M src/edu/rice/cs/drjava/model/cache/DCacheAdapter.java
M src/edu/rice/cs/drjava/model/DefaultGlobalModel.java
M src/edu/rice/cs/drjava/model/GlobalModelCompileErrorsTest.java
M src/edu/rice/cs/drjava/model/definitions/indent/QuestionExistsCharInStmt.java
M src/edu/rice/cs/drjava/model/definitions/CompoundUndoManager.java
M src/edu/rice/cs/drjava/model/definitions/DefinitionsDocumentTest.java
M src/edu/rice/cs/drjava/model/definitions/DefinitionsDocument.java
M src/edu/rice/cs/drjava/model/definitions/reducedmodel/ReducedModelComment.java
M src/edu/rice/cs/drjava/model/definitions/reducedmodel/AbstractReducedModel.java
M src/edu/rice/cs/drjava/model/GlobalModelCompileSuccessOptionsTest.java
M src/edu/rice/cs/drjava/model/FindReplaceMachineTest.java
M src/edu/rice/cs/drjava/model/GlobalEventNotifier.java
M src/edu/rice/cs/drjava/model/junit/JUnitErrorModel.java
M src/edu/rice/cs/drjava/model/javadoc/DefaultJavadocModel.java
M src/edu/rice/cs/drjava/model/GlobalModelListener.java
M src/edu/rice/cs/drjava/model/GlobalModelJUnitTest.java
M src/edu/rice/cs/drjava/model/GlobalModelCompileSuccessTestCase.java
M src/edu/rice/cs/drjava/model/DummyOpenDefDoc.java
M src/edu/rice/cs/drjava/model/GlobalModelCompileIOTest.java
M src/edu/rice/cs/drjava/model/GlobalModelCompileTest.java
M src/edu/rice/cs/drjava/model/compiler/DefaultCompilerModel.java
M src/edu/rice/cs/drjava/model/compiler/CompilerErrorModel.java
M src/edu/rice/cs/drjava/model/compiler/NoCompilerAvailable.java
M src/edu/rice/cs/drjava/model/compiler/CompilerModel.java
M src/edu/rice/cs/drjava/model/DummyGlobalModel.java
M src/edu/rice/cs/drjava/model/FileSaveSelector.java
M src/edu/rice/cs/drjava/model/FindReplaceMachine.java
M src/edu/rice/cs/drjava/model/ClipboardHistoryModel.java
M src/edu/rice/cs/drjava/model/GlobalIndentTest.java
M src/edu/rice/cs/drjava/model/DefaultLightWeightParsingControl.java
M src/edu/rice/cs/drjava/model/EventNotifier.java
M src/edu/rice/cs/drjava/model/GlobalModelOtherTest.java
M src/edu/rice/cs/drjava/model/FileGroupingState.java
M src/edu/rice/cs/drjava/model/DJDocument.java
M src/edu/rice/cs/drjava/model/FinalizationListener.java
M src/edu/rice/cs/drjava/config/OptionConstants.java
M src/edu/rice/cs/drjava/config/Configuration.java
M src/edu/rice/cs/drjava/config/KeyStrokeOptionTest.java
M src/edu/rice/cs/drjava/config/KeyStrokeOption.java
M src/edu/rice/cs/drjava/config/NonNegativeIntegerOption.java
M src/edu/rice/cs/drjava/config/Option.java
M src/edu/rice/cs/drjava/config/OptionParseException.java
M src/edu/rice/cs/drjava/ui/InteractionsPane.java
M src/edu/rice/cs/drjava/ui/RecentFileManager.java
M src/edu/rice/cs/drjava/ui/HTMLFrame.java
M src/edu/rice/cs/drjava/ui/PreviewConsoleFrame.java
M src/edu/rice/cs/drjava/ui/SimpleInteractionsWindow.java
M src/edu/rice/cs/drjava/ui/JarOptionsDialog.java
M src/edu/rice/cs/drjava/ui/JavadocDialog.java
M src/edu/rice/cs/drjava/ui/InsertVariableDialog.java
M src/edu/rice/cs/drjava/ui/InteractionsScriptPane.java
M src/edu/rice/cs/drjava/ui/PreviewFrame.java
M src/edu/rice/cs/drjava/ui/MainFrameTest.java
M src/edu/rice/cs/drjava/ui/HistorySaveDialog.java
M src/edu/rice/cs/drjava/ui/InteractionsPaneTest.java
M src/edu/rice/cs/drjava/ui/RegionsTreePanel.java
M src/edu/rice/cs/drjava/ui/RecentFileManagerTest.java
M src/edu/rice/cs/drjava/ui/RecentDocFrame.java
M src/edu/rice/cs/drjava/ui/FindResultsPanel.java
M src/edu/rice/cs/drjava/ui/RegionsListPanel.java
M src/edu/rice/cs/drjava/ui/FindReplacePanel.java
M src/edu/rice/cs/drjava/ui/InteractionsController.java
M src/edu/rice/cs/drjava/ui/JUnitPanel.java
M src/edu/rice/cs/drjava/ui/ReverseHighlighter.java
M src/edu/rice/cs/util/FileOps.java
M src/edu/rice/cs/util/text/DocumentEditCondition.java
M src/edu/rice/cs/util/docnavigation/JListNavigator.java
M src/edu/rice/cs/util/docnavigation/IDocumentNavigator.java
M src/edu/rice/cs/util/docnavigation/INavigationListener.java
M src/edu/rice/cs/util/docnavigation/IDocumentNavigatorFactory.java
M src/edu/rice/cs/util/swing/FileChooser.java
M src/edu/rice/cs/util/swing/DirectorySelectorComponent.java
M src/edu/rice/cs/util/swing/ConfirmCheckBoxDialog.java
M src/edu/rice/cs/util/CompletionMonitor.java
M src/edu/rice/cs/util/Log.java
M src/edu/rice/cs/util/newjvm/ExecJVM.java
M src/edu/rice/cs/util/newjvm/SlaveJVMRunner.java
M src/edu/rice/cs/util/newjvm/AbstractSlaveJVM.java
M src/edu/rice/cs/util/newjvm/AbstractMasterJVM.java
M src/edu/rice/cs/util/newjvm/IntegratedMasterSlaveTest.java