Skip to content

Commit 9e5caac

Browse files
committed
Cancel timer updating devices when editor is closed
1 parent e90921f commit 9e5caac

File tree

1 file changed

+17
-3
lines changed

1 file changed

+17
-3
lines changed

src/processing/mode/android/AndroidEditor.java

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,8 @@
5252
public class AndroidEditor extends JavaEditor {
5353
private AndroidMode androidMode;
5454

55+
private java.util.Timer updateDevicesTimer;
56+
5557
protected AndroidEditor(Base base, String path, EditorState state,
5658
Mode mode) throws EditorException {
5759
super(base, path, state, mode);
@@ -285,9 +287,13 @@ public void actionPerformed(ActionEvent e) {
285287
menu.add(mobDeveMenu);
286288

287289
// start updating device menus
288-
UpdateDeviceListTask devTask = new UpdateDeviceListTask(mobDeveMenu);
289-
java.util.Timer devTimer = new java.util.Timer();
290-
devTimer.schedule(devTask, 5000, 5000);
290+
UpdateDeviceListTask task = new UpdateDeviceListTask(mobDeveMenu);
291+
if (updateDevicesTimer == null) {
292+
updateDevicesTimer = new java.util.Timer();
293+
} else {
294+
updateDevicesTimer.cancel();
295+
}
296+
updateDevicesTimer.schedule(task, 5000, 5000);
291297

292298
menu.addSeparator();
293299

@@ -527,6 +533,14 @@ public void showReference(String filename) {
527533
// }
528534

529535

536+
@Override
537+
public void dispose() {
538+
if (updateDevicesTimer != null) {
539+
updateDevicesTimer.cancel();
540+
}
541+
super.dispose();
542+
}
543+
530544
public void statusError(String what) {
531545
super.statusError(what);
532546
// new Exception("deactivating RUN").printStackTrace();

0 commit comments

Comments
 (0)