a848897586223b050e87367b48ed2eebd0870d1d
* Refactor: Split DeviceLocales out of Keyboard2 This moves the code from Keyboard2 that handles the active IME subtypes and the current one. The goal is to access this information from the dictionary activity while simplifying the code of Keyboard2. * Refresh the candidates view when subtype changes This fixes the status message being inconsistently shown. * Refactor: Load DeviceLocales less often Previously, [DeviceLocales.load()] was called everytime the keyboard was shown on the screen. This operation is moderately costly and only need to be done when the IME subtype changes. * EditorConfig: Fix crash on Android 9
Unexpected Keyboard 
Lightweight and privacy-conscious virtual keyboard for Android.
https://github.com/Julow/Unexpected-Keyboard/assets/2310568/28f8f6fe-ac13-46f3-8c5e-d62443e16d0d
The main feature is that you can type more characters by swiping the keys towards the corners.
This application was originally designed for programmers using Termux. Now perfect for everyday use.
This application contains no ads, doesn't make any network requests and is open source.
Usage: to apply the symbols located in the corners of each key, slide your finger in the direction of the symbols. For example, the Settings are opened by sliding in the left down corner.
![]() |
![]() |
![]() |
|---|---|---|
![]() |
![]() |
![]() |
Help translate the application
Improve the application translations using Weblate.
Similar apps
- Calculator++ - Calculator with a similar UX, swipe to corners for advanced math symbols and operators.
Contributing
For instructions on building the application, see Contributing.
Languages
Java
71.2%
C
20.1%
Python
8.4%
Nix
0.2%
Shell
0.1%







