- Fixed
rawAmounthaving 0 in front.
- Removed
onAmountChange: (String) -> Unitand merge withNumberKeyboardListenerimplementation.
🧭 Migration Guide
var amountWithCurrency by remember { mutableStateOf("$currencySymbol 0") }
var amount by remember { mutableStateOf("") }
NumberKeyboard(
amount = amount,
listener = object : NumberKeyboardListener {
override fun onUpdated(data: NumberKeyboardData) {
amountWithCurrency = data.currency
amount = data.rawAmount
}
}
)- Fix Android target configuration (#46)
- Migrate to Kotlin Multiplatform (#45)
• Introduced NumberKeyboardFormat enum to control keypad layout:
enum class NumberKeyboardFormat {
Normal, // Standard ascending layout (like phone dial pad)
Inverted, // Descending layout (like a calculator)
Scrambled, // Shuffled once on composition
AlwaysScrambled // Re-shuffles every tap (chaos, but secure chaos)
}isInverted: Booleanis now deprecated One flag was never enough. Now you’ve got four layout options to rule them all. Replace
isInverted = truewith:
format = NumberKeyboardFormat.Inverted🧭 Migration Guide
| Before | After |
|---|---|
| isInverted = false | format = NumberKeyboardFormat.Normal |
| isInverted = true | format = NumberKeyboardFormat.Inverted |
NumberKeyboardis now a stateless composable.- Removed internal
rememberstate for the input amount. - You must provide:
amount: StringonAmountChange: (String) -> Unit
- Removed
initialAmountattribute. - This enables external state management and improves integration with architectures like MVI, ViewModel, etc.
- Removed internal
Before:
NumberKeyboard() // internally remembered stateAfter:
var amount by remember { mutableStateOf("") }
NumberKeyboard(
amount = amount,
onAmountChange = { amount = it }
)- Update dependencies and target SDK 36
- Fix import for LocalContentColor
- Added
iconTintandcolorsparameters toNumberKeyboardAuxButtonto allow customization of delete button color and styling
- Downgrade to Java 18
- Downgrade androidGradle to v8.2.2
- Fix JitPack Java SDK to v20.0.2
- Fix max amount formatting with correct separator
- Add initialAmount support and cleanup unused ExperimentalLayoutApi warnings
- Fix JitPack build
- Fix JitPack build
- Revamped Number Keyboard to Compose #37 (thanks @delacrixmorgan!)
- Add text size attribute (thanks @gerynugrh)
- Add typeface attribute (thanks @gerynugrh)
- Add KeyboardCustomSquareActivity to show custom square design (thanks @delacrixmorgan)
- Update dependencies
- Migrate to Kotlin #21
- Refactor support lib to AndroidX #13
- Extract dependencies and configurations from build files #22
- Add numberkeyboard_ resource prefix #23 (breaking change)
Add the prefix numberkeyboard_ to all the library attributes and resources.
E.g.
Before: keyboard:keyboardType="integer"
Now: keyboard:numberkeyboard_keyboardType="integer"
- Fix layout issues when using dynamic height #10
- Fix Proguard is obfuscating everything #9
- Implement keys using Autosizing TextViews #8
- Adding
keyPaddingattribute - Remove
numberKeyTextSizeattribute (breaking change) - Update support libraries to 27.1.1 #7
- Update buildToolsVersion to 27.0.3 #7
- Update gradle to 4.6 #7
- Update support libraries to 27.0.2
- Update buildToolsVersion to 26.0.2
- Update gradle to 4.1
- Improve decimal sample
- Update support libraries to 26.1.0
- Update buildToolsVersion to 26.0.1
- Library crashes when running on API 19 #1
- Update buildToolsVersion "25.0.3"
- Initial release