Вот основная идея:
Существует окно Java (основное), которое открывает другое окно Java (дочернее). Когда дочерний элемент создан, часть инициализации устанавливает фокус в соответствующем текстовом поле в дочернем окне:
childTextField.requestFocusInWindow();
childTextField.setCaretPosition(0);
Ребенок обычно открывается с помощью серьезных нажатий клавиш через интерфейс типа командной строки. Когда окно запрашивается в 90% времени, фокус правильно переходит к текстовому полю дочернего окна, и пользователь может ввести его в поле. Если команда на открытие дочернего элемента отправляется (нажатием клавиши ввода), и пользователь сразу начинает вводить текст перед созданием нового окна, текст корректно буферизуется и появляется в новом текстовом поле после открытия окна.
Однако, время от времени, когда пользователь запрашивает открытие дочернего окна и затем начинает печатать, его текст НЕ появляется в текстовом поле. Только после того, как они щелкнут мышью в поле, текст, который они ввели, появляется. Как будто он где-то хранится и не выходит, пока не щелкнет.
Реальное разочарование здесь в том, что я не могу точно воспроизвести проблему. Это определенно происходит, но не достаточно регулярно, чтобы хорошо отлаживать.
Конечно, за кулисами происходят все виды других моджах, включая общение с серверным приложением, но я не уверен, что это связано.
Любые мысли или идеи будут очень цениться.