Я не уверен, что это именно то, что вы ищете, но мы используем такой код при закрытии редактора или закрытии приложения, чтобы принудительно завершить редактирование выдающегося поля пользовательского интерфейса пользователя, чтобы проверить и смоделировать обновление происходит до того, как проверяется грязное состояние (чтобы мы не потеряли молча выдающиеся правки пользователей).
final IWorkbench workbench = PlatformUI.getWorkbench();
if (workbench == null)
return;
final Display display = workbench.getDisplay();
if (display == null)
return;
final Control focusControl = display.getFocusControl();
if (focusControl == null)
return;
focusControl.notifyListeners(SWT.FocusOut, null);
Я не знаю, является ли это "лучшим" или "правильным" способом, но он работает, по крайней мере, в 3.2.