[x] create new branch. put issue number at start of name
[x] write tests before working on feature. put issue number in comment
[x] check if device is at least API 23 before doing anything related to Shizuku
[x] check if Shizuku is installed before asking for permission.
[x] add a setting to use Shizuku where applicable
[x] Show steps to grant it. like the android 11 bug workaround
Install Shizuku app
Start the Shizuku service
Grant Key Mapper permission to use Shizuku
[x] Only show this on API 23+.
[x] website guide
[x] 2.4.0+ only
[x] go to Key Mapper settings -> Shizuku support to set this up
[x] Benefits of using Shizuku with Key Mapper
[x] You don't need to configure Key Mapper to use Shizuku since it will automatically and it will only ask you to grant extra permissions where Shizuku can't be used.
[x] If Android 11+ prompt them to install Shizuku or the Key Mapper GUI Keyboard. List the advantages and disadvantages for both for only Key Event actions.
[x] action errors should change if using shizuku.
[x] If shizuku is installed show an error that it isn't started
- [ ] dont show GUI keyboard ad if shizuku is installed. Instead prompt for Shizuku permission but also mention that the GUI keyboard to be used instead Always show it just to let the user know their options.
[x] Granting WRITE_SECURE_SETTINGS
[x] Inputting key events.
[x] move cursor to end action
[x] use shizuku for imitating key events
[x] update documentation
[x] add Shizuku setting
[x] show Shizuku alongside installing the Key Mapper keyboard for key event actions
- [ ] add to "apps using Shizuku" list. https://shizuku.rikka.app/apps/ will do once it is released to production
[x] automatically ask for Shizuku permission if it is installed and started when the app is opened
[x] automatically grant WRITE_SECURE_SETTINGS permission if rooted or shizuku permission is enabled. show toast when doing this. "Key Mapper has granted itself permission with...".
Developer TODO (don't remove)
- [ ] dont show GUI keyboard ad if shizuku is installed. Instead prompt for Shizuku permission but also mention that the GUI keyboard to be used insteadAlways show it just to let the user know their options.- [ ] add to "apps using Shizuku" list. https://shizuku.rikka.app/apps/will do once it is released to production