void (@NotNull RunnerLayoutUi ui) { final ThreadsPanel panel = new ThreadsPanel(myJavaSession.getProject(), getDebuggerStateManager()); final Content threadsContent = ui.createContent( DebuggerContentInfo.THREADS_CONTENT, panel, XDebuggerBundle.message("debugger.session.tab.threads.title"), null, panel.getDefaultFocusedComponent()); threadsContent.setCloseable(false); ui.addContent(threadsContent, 0, PlaceInGrid.left, true); ui.addListener(new ContentManagerListener() { @Override public void selectionChanged(@NotNull ContentManagerEvent event) { if (event.getContent() == threadsContent) { if (threadsContent.isSelected()) { panel.setUpdateEnabled(true); if (panel.isRefreshNeeded()) { panel.rebuildIfVisible(DebuggerSession.Event.CONTEXT); } } else { panel.setUpdateEnabled(false); } } } }, threadsContent); }