Android onKeyLongPress quando existe um webview

Em relação aaquela questão eaquela questão se você usar onKeyDown e onKeyLongPress, é necessário usarevent.startTracking(); dentro do onKeyDown. Mas eu uso o WebViews.

O que posso fazer para participar do onKeyDown e do onKeyPress sem perder a função de retorno do WebView?
Eu preciso desse comportamento:
Dentro da webview,
* Quando o usuário pressiona o botão Voltar, o webview voltará ao histórico
* Quando o usuário pressiona a tecla Voltar,finish() será chamado

public boolean onKeyDown(int keyCode, KeyEvent event) {
     if (keyCode == KeyEvent.KEYCODE_BACK) {
         if(mWebView.canGoBack()) {
             mWebView.goBack();
         } else {
             super.onBackPressed();
         }
         return true;
      }
     return super.onKeyDown(keyCode, event);
 }

@Override
public boolean onKeyLongPress(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK)
    {
        finish();
        return true;
    }
    return super.onKeyLongPress(keyCode, event);
}

questionAnswers(2)

yourAnswerToTheQuestion