Index: ant/src/org/apache/tools/ant/module/xml/AntProjectSupport.java =================================================================== RCS file: /cvs/ant/src/org/apache/tools/ant/module/xml/AntProjectSupport.java,v retrieving revision 1.7 diff -u -t -r1.7 AntProjectSupport.java --- ant/src/org/apache/tools/ant/module/xml/AntProjectSupport.java 2001/04/06 17:00:01 1.7 +++ ant/src/org/apache/tools/ant/module/xml/AntProjectSupport.java 2001/04/20 16:33:47 @@ -35,13 +35,15 @@ import org.openide.nodes.*; import org.openide.loaders.*; import org.openide.filesystems.*; +import org.openide.text.CloneableEditorSupport; import org.openide.text.NbDocument; import org.openide.util.RequestProcessor; +import org.openide.util.WeakListener; import org.apache.tools.ant.module.AntModule; import org.apache.tools.ant.module.api.AntProjectCookie; -public class AntProjectSupport implements AntProjectCookie, DocumentListener, FileChangeListener, org.w3c.dom.events.EventListener, Runnable { +public class AntProjectSupport implements AntProjectCookie, DocumentListener, FileChangeListener, org.w3c.dom.events.EventListener, Runnable, ChangeListener { private final File file; private FileObject fo; @@ -96,6 +98,9 @@ if (editor == null) { try { editor = (EditorCookie) DataObject.find (fo).getCookie (EditorCookie.class); + if (editor != null && (editor instanceof CloneableEditorSupport)) { + ((CloneableEditorSupport) editor).addChangeListener (WeakListener.change (this, editor)); + } } catch (DataObjectNotFoundException donfe) { AntModule.err.notify (ErrorManager.INFORMATIONAL, donfe); } @@ -332,6 +337,11 @@ if (ev.getDocument ().getProperty (expectingDocUpdates) == null) { invalidate (); } + } + + // Called when editor support changes state: #11616 + public void stateChanged (ChangeEvent changeEvent) { + invalidate (); } public void fileDeleted (org.openide.filesystems.FileEvent p1) {