Skip to content

Releases: davidmigloz/number-keyboard

5.0.2

16 Jul 20:09
73d6f30

Choose a tag to compare

  • Removed onAmountChange: (String) -> Unit and merge with NumberKeyboardListener implementation, Fixed rawAmount having 0 in front. by @delacrixmorgan in #47

⚠️ Breaking Changes

  • Removed onAmountChange: (String) -> Unit and merge with NumberKeyboardListener implementation.

🧭 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
        }
    }
)

5.0.1

15 Jul 21:30
5465291

Choose a tag to compare

5.0.0

15 Jul 20:49
6d0aff0

Choose a tag to compare

✨ New Features

• 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)
}

⚠️ Breaking Changes

  • isInverted: Boolean is now deprecated
    One flag was never enough. Now you’ve got four layout options to rule them all. Replace
isInverted = true

with:

format = NumberKeyboardFormat.Inverted

🧭 Migration Guide

Before After
isInverted = false format = NumberKeyboardFormat.Normal
isInverted = true format = NumberKeyboardFormat.Inverted
  • NumberKeyboard is now a stateless composable.
    • Removed internal remember state for the input amount.
    • You must provide:
      • amount: String
      • onAmountChange: (String) -> Unit
    • Removed initialAmount attribute.
    • This enables external state management and improves integration with architectures like MVI,
      ViewModel, etc.

Before:

NumberKeyboard() // internally remembered state

After:

var amount by remember { mutableStateOf("") }

NumberKeyboard(
    amount = amount,
    onAmountChange = { amount = it }
)

4.0.8

16 Jun 15:34
7ef3528

Choose a tag to compare

  • Update dependencies and target SDK 36
  • Fix import for LocalContentColor

4.0.7

15 Jun 20:49
bb56f75

Choose a tag to compare

  • Added iconTint and colors parameters to NumberKeyboardAuxButton to allow
    customization of delete button color and styling

4.0.3

06 Mar 02:38
16c383f

Choose a tag to compare

  • Fix max amount formatting with correct separator
  • Add initialAmount support and cleanup unused ExperimentalLayoutApi warnings

4.0.2

06 Nov 20:08
2d1d01c

Choose a tag to compare

  • Fix JitPack Java version

4.0.0

03 Nov 08:31
a9e71d1

Choose a tag to compare

3.1.0

14 Dec 07:52
168bfe4

Choose a tag to compare

  • Add text size attribute (thanks @gerynugrh)
  • Add typeface attribute (thanks @gerynugrh)
  • Add KeyboardCustomSquareActivity to show custom square design (thanks @delacrixmorgan)
  • Update dependencies

3.0.0

30 Dec 19:26

Choose a tag to compare

  • 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)

Migration

Add the prefix numberkeyboard_ to all the library attributes and resources.
E.g.

Before:  keyboard:keyboardType="integer"
Now:     keyboard:numberkeyboard_keyboardType="integer"