# 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_FONT_DEFAULT_SIZE
        int "Default font size"
        default 14
        range 10 32
        help
            Default text font size in pixels. Other text and icon font sizes are derived from it.
    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
    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.
    choice TT_SYSTEM_BARS_PORTRAIT
        prompt "System bars layouts in portrait"
        default TT_SYSTEM_BARS_PORTRAIT_ANY
        help
            The system bars layouts that portrait orientations (including square ones) can use.
            "Any" lets the user's Appearance settings decide.
        config TT_SYSTEM_BARS_PORTRAIT_ANY
            bool "Any"
        config TT_SYSTEM_BARS_PORTRAIT_SPLIT
            bool "Split"
        config TT_SYSTEM_BARS_PORTRAIT_SIDE
            bool "Side"
    endchoice
    choice TT_SYSTEM_BARS_LANDSCAPE
        prompt "System bars layouts in landscape"
        default TT_SYSTEM_BARS_LANDSCAPE_ANY
        help
            The system bars layouts that landscape orientations can use.
            "Any" lets the user's Appearance settings decide.
        config TT_SYSTEM_BARS_LANDSCAPE_ANY
            bool "Any"
        config TT_SYSTEM_BARS_LANDSCAPE_SPLIT
            bool "Split"
        config TT_SYSTEM_BARS_LANDSCAPE_SIDE
            bool "Side"
    endchoice
    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
