Cómo detectar ctrl-f en mi aplicación SWT

He escrito una interfaz de usuario SWT que tiene una función principal de mostrar texto en un control StyledText. Quiero agregar un controlador para Ctrl+F para que cuando se presione ese acceso directo, el foco se establezca en un cuadro de búsqueda. He intentado usar el siguiente código para detectar la pulsación de tecla.

sWindow = new Shell();
...
sWindow.getDisplay().addFilter(SWT.KeyDown, new Listener()
{
  @Override
  public void handleEvent(Event e)
  {
    System.out.println("Filter-ctrl: " + SWT.CTRL);
    System.out.println("Filter-mask: " + e.stateMask);
    System.out.println("Filter-char: " + e.character);
  }
});

Estaba esperando eso cuando presioné Ctrl+f Vería el siguiente resultado:

Filter-ctrl: 262144
Filter-mask: 262144
Filter-char: f

Sin embargo, en la práctica realmente veo lo siguiente.

Filter-ctrl: 262144
Filter-mask: 262144
Filter-char: <unprintable char - displayed as a box in eclipse console>

Tengo dos preguntas

¿Es Display.addFilter (...) la mejor manera de agregar un acceso directo global? Intenté Display.addListener (...) pero esto no recibió ningún evento en absoluto. ¿Por qué no obtengo el carácter presionado cuando estoy presionando Ctrl? Cuando mantengo presionada la tecla alt o shift, obtengo la máscara esperada y el carácter presionado.