name=Button Interface
category=HAL

# Any string is allowable here.  Generally though it is Production Ready, Test Tool, Extension Needed
qualityString=Production Ready
# This is one of the following:  productionReady, testTool, extensionNeeded
quality=production

description=This code gives additional button pressing tracking functionality on top of the HAL button API.  It will generate callbacks dependent on the amount of time a button was pressed, allowing a user to specify the difference between a short press and a long press, and to receive callbacks when those conditions are met.

providedApis=button-interface
api.button-interface.header=$PLUGIN/plugin-common/button-interface/button-interface.h

architecture=efr32,em341,em342,em346,em351,em355,em3555,em357,em3581,em3582,em3585,em3586,em3587,em3588,em3591,em3592,em3595,em3596,em3597,em3598,simulation

$PLUGIN/plugin-common/button-interface/button-interface.c   (simulation,efr32,em341,em342,em346,em351,em355,em3555,em357,em3581,em3582,em3585,em3586,em3587,em3588,em3591,em3592,em3595,em3596,em3597,em3598)

# Included by default because the HAL configuration tab enables the button handling by default.
includedByDefault=false

options=buttonTimeoutMs

callbacks=$PLUGIN/plugin-common/button-interface/callback.info

implementedCallbacks=emberAfHalButtonIsrCallback

buttonTimeoutMs.name=Button Timeout (milliseconds)
buttonTimeoutMs.description=The length of time after the last button release before the button processing is called.
buttonTimeoutMs.type=NUMBER:1,16534
buttonTimeoutMs.default=1000

events=Button0Pressed, Button0Released, Button1Pressed, Button1Released, ButtonTimeout
