# Kconfig file for Tactility example app
menu "Tactility App"
    config TT_DEVICE_NAME
        string "Device Name"
        default ""
        help
            Human-readable device name, including vendor (e.g. "M5Stack Cardputer")
    config TT_DEVICE_NAME_SIMPLE
        string "Device Name (simple)"
        default ""
        help
            Human-readable simple device name, excluding vendor (e.g. "Cardputer")
     config TT_DEVICE_VENDOR
         string "Device Vendor Name"
         default ""
         help
             Human-readable device vendor name (e.g. "LilyGO")
     config TT_DEVICE_ID
        string "Device Identifier"
        default ""
        help
            The name of the directory in Devices/
            See https://docs.tactilityproject.org for formatting guidance.
    config TT_LAUNCHER_APP_ID
        string "Launcher App ID"
        default "Launcher"
        help
            The applications that gives access to other application.
            This is the first thing that starts after the boot screen.
            The user can override it with a boot.properties file
    config TT_LVGL_FONT_SIZE_SMALL
        int "Small font size"
        default 10
        range 8 200
        help
            Small font size in pixels
    config TT_LVGL_FONT_SIZE_DEFAULT
        int "Default font size"
        default 14
        range 8 200
        help
            Default font size in pixels
    config TT_LVGL_FONT_SIZE_LARGE
        int "Large font size"
        default 18
        range 8 200
        help
            Large font size in pixels
    config TT_LVGL_STATUSBAR_ICON_SIZE
        int "Statusbar icon size"
        default 20
        range 0 200
        help
            Statusbar icon size in pixels
    config TT_LVGL_LAUNCHER_ICON_SIZE
        int "Launcher icon size"
        default 20
        range 0 200
        help
            Launcher icon size in pixels
    config TT_LVGL_SHARED_ICON_SIZE
        int "Shared icon size"
        default 16
        range 0 200
        help
            Shared icon size in pixels
    config TT_AUTO_START_APP_ID
        string "Auto Start App ID"
        default ""
        help
            An application that gets automatically started from the launcher application.
            This is optional and can be left empty.
            The user can override it from a boot.properties file.
    # T-Deck device-related code was directly referenced from Tactility in a pull request.
    # This breaks other devices because the code does not exist in those implementations.
    # Until we move it out into a proper driver, we have to have pre-processor definition for that.
    config TT_TDECK_WORKAROUND
        bool "Temporary work-around until we fix the T-Deck keyboard and trackball settings"
        default n
    config TT_USE_DEPRECATED_HAL
        bool "When set to false, it ensures an empty tt::hal::hardwareConfig is made automatically"
        default y
        help
            This allows for migrating projects that don't use the old HAL.
            When set to 'n', the project has an option to not depend on Tactility and can depend on TactilityKernel instead.
    choice TT_USER_DATA_LOCATION
        prompt "User Data Location"
        default TT_USER_DATA_LOCATION_INTERNAL
        help
            Where user data is stored on this device.
            "Internal Flash" assumes /data always exists.
            "SD Card" looks for the first mounted SD card at runtime and requires one to be present.
        config TT_USER_DATA_LOCATION_SD
            bool "SD Card"
        config TT_USER_DATA_LOCATION_INTERNAL
            bool "Internal Flash"
    endchoice
    config TT_SPLASH_DURATION
       int "Splash Duration (ms)"
       default 1000
       range 0 3000
       help
           The minimum time to show the splash screen in milliseconds.
           When set to 0, startup will continue to desktop as soon as boot operations are finished.
    config TT_TOUCH_CALIBRATION_SUPPORTED
        bool "Set true when a touch screen calibration app should be included"
        default n
    config TT_TOUCH_CALIBRATION_REQUIRED
        bool "Set true when a touch screen calibration is required before the device is usable"
        default n
        depends on TT_TOUCH_CALIBRATION_SUPPORTED
endmenu
