introduced in build 4573 when unit testing was refactored to cope with
the revised synchronization protocol (running all operations on Swing
documents in the event thread instead of using readers and writers
locking. The bug(s) was(were) created by listener notification code
that was not running in the event thread. This revision moves
essentially all listener notification to the event thread. It also
includes some optimizations to the updating of RegionsTreePanels
(e.g., FindResultsPanels) when documents are edited.
After listener notification was cleaned, a few unit tests (notably
GlobalModelCompileSuccessTest and JUnitErrorModelTest) failed because
they were tuned to vagaries of broken listener notification.
The following files were modified.
M src/edu/rice/cs/drjava/model/BrowserHistoryManager.java
M src/edu/rice/cs/drjava/model/debug/jpda/JPDADebugger.java
M src/edu/rice/cs/drjava/model/GlobalModelTestCase.java
M src/edu/rice/cs/drjava/model/GlobalModelCompileSuccessTest.java
M src/edu/rice/cs/drjava/model/definitions/DefinitionsDocument.java
M src/edu/rice/cs/drjava/model/junit/DefaultJUnitModel.java
M src/edu/rice/cs/drjava/model/junit/JUnitErrorModelTest.java
M src/edu/rice/cs/drjava/model/ConcreteRegionManager.java
M src/edu/rice/cs/drjava/model/AbstractDJDocument.java
M src/edu/rice/cs/drjava/model/compiler/DefaultCompilerModel.java
M src/edu/rice/cs/drjava/model/FindReplaceMachine.java
M src/edu/rice/cs/drjava/model/AbstractGlobalModel.java
M src/edu/rice/cs/drjava/model/BrowserDocumentRegion.java
M src/edu/rice/cs/drjava/ui/MainFrame.java
M src/edu/rice/cs/drjava/ui/DefinitionsPane.java
M src/edu/rice/cs/drjava/ui/ErrorPanel.java
M src/edu/rice/cs/drjava/ui/BreakpointsPanel.java
M src/edu/rice/cs/drjava/ui/LineEnumRule.java
M src/edu/rice/cs/drjava/ui/JUnitPanel.java
M src/edu/rice/cs/util/text/ConsoleDocument.java
M src/edu/rice/cs/util/text/SwingDocument.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/JListSortNavigatorTest.java
M src/edu/rice/cs/util/docnavigation/JTreeSortNavigator.java
M src/edu/rice/cs/util/docnavigation/JTreeSortNavigatorTest.java