Keyevent on Watchface

I know, everybody will tell me it's not possible to track keyevents on watchfaces. But because the API Docs state clear that it can be used in watchfaces as well, I try anyway:

https://developer.garmin.com/connect-iq/api-docs/Toybox/WatchUi/KeyEvent.html , see app types and here https://developer.garmin.com/connect-iq/api-docs/Toybox/WatchUi/KeyEvent.html#getKey-instance_function / Appteypes.

What do I miss here? I tried to get this running (manifest min SDK 8.0, all permissions set, Fenix 8):

import Toybox.Application;
import Toybox.Lang;
import Toybox.WatchUi;
import Toybox.System;
class TestApp extends Application.AppBase {
  function initialize() {
    AppBase.initialize();
  }
  function getInitialView() as [Views] or [Views, InputDelegates] {
    return [new TestView(), new MyInputDelegate()];
  }
  function onSettingsChanged() as Void {
    WatchUi.requestUpdate();
  }
}
class MyBehaviorDelegate extends BehaviorDelegate {
  function initialize(){
    BehaviorDelegate.initialize();
  }
    function onKey(keyEvent) {
        System.println(keyEvent.getKey()); // e.g. KEY_MENU = 7
        return true;
    }
}
class MyInputDelegate extends WatchUi.InputDelegate {
    function initialize(){
        InputDelegate.initialize();
    }
  function onKey(keyEvent) {
    System.println(keyEvent.getKey()); // e.g. KEY_MENU = 7
    return true;
  }
}
function getApp() as TestApp {
  return Application.getApp() as TestApp;
}
It works as long as I only call new TestView() and it runtime crashes as soon as I also call new MyInputDelegate()or  new MyBehaviorDelegate().
Error: Unexpected Type Error
Details: Failed to start CIQ Application
Stack: 

Encountered app crash.

Does anyone has an idea how to make it work or are the docs just plain wrong? What I try to do is to track whether the user activates the backlight on the device, but I could not find any possibility to track the state of the backlight either and then I tried to track the backlight button instead.