Skip to content

Commit 6e0aa5c

Browse files
committed
Merge branch 'nb73dev'
2 parents 053e20c + 1c3d5aa commit 6e0aa5c

2 files changed

Lines changed: 25 additions & 9 deletions

File tree

manifest.mf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ Manifest-Version: 1.0
22
OpenIDE-Module: org.netbeans.modules.php.wordpress
33
OpenIDE-Module-Layer: org/netbeans/modules/php/wordpress/resources/layer.xml
44
OpenIDE-Module-Localizing-Bundle: org/netbeans/modules/php/wordpress/Bundle.properties
5-
OpenIDE-Module-Specification-Version: 0.4.5
5+
OpenIDE-Module-Specification-Version: 0.4.6
66

src/org/netbeans/modules/php/wordpress/ui/status/DebugStatusLineElement.java

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,17 @@ public PhpModule getPhpModule() {
283283
//~ Inner class
284284
private class LookupListenerImpl implements LookupListener {
285285

286+
private final FileChangeAdapter fileChangeAdapter;
287+
286288
public LookupListenerImpl() {
289+
fileChangeAdapter = new FileChangeAdapter() {
290+
@Override
291+
public void fileChanged(FileEvent fe) {
292+
String level = getDebugLevel(fe.getFile());
293+
setLevel(level);
294+
setDebugLevelLabel(level);
295+
}
296+
};
287297
}
288298

289299
@Override
@@ -313,6 +323,10 @@ public void resultChanged(LookupEvent lookupEvent) {
313323
setDebugLevelLabel(getLevel());
314324
return;
315325
} else {
326+
if (pm != null) {
327+
// remove file change listener
328+
removeFileChangeListenerForConfig(pm);
329+
}
316330
pm = pmTemp;
317331
setPhpModule(pm);
318332
}
@@ -322,19 +336,21 @@ public void resultChanged(LookupEvent lookupEvent) {
322336
if (config == null) {
323337
return;
324338
}
325-
config.addFileChangeListener(new FileChangeAdapter() {
326-
@Override
327-
public void fileChanged(FileEvent fe) {
328-
String level = getDebugLevel(fe.getFile());
329-
setLevel(level);
330-
setDebugLevelLabel(level);
331-
}
332-
});
339+
340+
// add file change listener
341+
config.addFileChangeListener(fileChangeAdapter);
333342

334343
String level = getDebugLevel(config);
335344
setLevel(level);
336345
setDebugLevelLabel(level);
337346
}
347+
348+
private void removeFileChangeListenerForConfig(PhpModule pm) {
349+
FileObject config = WPFileUtils.getDirectory(pm, WP_CONFIG_PHP);
350+
if (config != null) {
351+
config.removeFileChangeListener(fileChangeAdapter);
352+
}
353+
}
338354
}
339355

340356
private static class JSeparatorImpl extends JSeparator {

0 commit comments

Comments
 (0)