boolean (@NotNull ScreenAreaConsumer consumer) { if (!Registry.is("ide.use.screen.area.tracker", false)) { return true; } if (!Disposer.isDisposed(consumer) && ourAreaConsumers.add(consumer)) { Disposer.register(consumer, new Disposable() { @Override public void dispose() { ourAreaConsumers.remove(consumer); } }); return true; } return false; }