Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
LegacyService dispose code is fragile #1
The DefaultLegacyService dispose() method closes all windows before shutting down IJ1. However the code that closes all windows can fail. You can see this by inspecting IJ1's source code. The closeAllWindows() command relies on the idea that Editor windows with changes will not close without saving first. Right now if a legacy plugin opens a Editor window and changes its text then the closeAllWindows() should fail. We might need some CodeHacker or reflection code for setting Editor's changed flag to false.
referenced this issue
Sep 1, 2016
Much work was done to reliably dispose all open windows, both image and non-image:
So the only potentially remaining rogue windows are those which some ImageJ plugin created and showed but did not register with ImageJ1's