@Override @SuppressWarnings("deprecation") public void hide() { super.hide(); if (myFocusTrackback != null && !(myFocusTrackback.isSheduledForRestore() || myFocusTrackback.isWillBeSheduledForRestore())) { myFocusTrackback.setWillBeSheduledForRestore(); IdeFocusManager mgr = getFocusManager(); Runnable r = new Runnable() { @Override public void run() { if (myFocusTrackback != null) myFocusTrackback.restoreFocus(); myFocusTrackback = null; } }; mgr.doWhenFocusSettlesDown(r); } }