diff --git a/CHANGELOG.md b/CHANGELOG.md index ec5d940a2b3..25859e1bb38 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,14 @@ ## 0.5.7 +* `Android` + * `Alerts` + * `Common` + * New extension `progressBarAlertDialog` +* `Pagination` + * `Ktor` + * `Server` + * Fixes in extension `extractPagination` * `Repos` * `Cache` * All standard cache repos have been separated to read and read/write repos diff --git a/android/alerts/common/src/main/kotlin/dev/inmo/micro_utils/android/alerts/common/ProgressBarAlertDialog.kt b/android/alerts/common/src/main/kotlin/dev/inmo/micro_utils/android/alerts/common/ProgressBarAlertDialog.kt new file mode 100644 index 00000000000..990a7e58f26 --- /dev/null +++ b/android/alerts/common/src/main/kotlin/dev/inmo/micro_utils/android/alerts/common/ProgressBarAlertDialog.kt @@ -0,0 +1,27 @@ +package dev.inmo.micro_utils.android.alerts.common + +import android.content.Context +import android.view.LayoutInflater +import android.widget.TextView +import androidx.annotation.StringRes + +fun Context.createProgressBarAlertDialog( + text: String? = null, + onClick: (() -> Unit)? = null +) = createCustomViewAlertDialog { + (it.getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater).inflate( + R.layout.alert_dialog_progress_bar, null, false + ).apply { + onClick ?.let { + setOnClickListener { onClick() } + } ?: setOnClickListener { /* do nothing */ } + text ?.let { + findViewById(R.id.alertDialogProgressBarTitle).text = it + } + } +} + +fun Context.createProgressBarAlertDialog( + @StringRes textRes: Int, + onClick: (() -> Unit)? = null +) = createProgressBarAlertDialog(getString(textRes), onClick) diff --git a/android/alerts/common/src/main/res/layout/alert_dialog_progress_bar.xml b/android/alerts/common/src/main/res/layout/alert_dialog_progress_bar.xml new file mode 100644 index 00000000000..b9a1476bf94 --- /dev/null +++ b/android/alerts/common/src/main/res/layout/alert_dialog_progress_bar.xml @@ -0,0 +1,20 @@ + + + + + + + + diff --git a/pagination/ktor/server/src/jvmMain/kotlin/dev/inmo/micro_utils/pagination/ServerPaginationHelpers.kt b/pagination/ktor/server/src/jvmMain/kotlin/dev/inmo/micro_utils/pagination/ServerPaginationHelpers.kt index 744cc4e39dc..7c68d913a5a 100644 --- a/pagination/ktor/server/src/jvmMain/kotlin/dev/inmo/micro_utils/pagination/ServerPaginationHelpers.kt +++ b/pagination/ktor/server/src/jvmMain/kotlin/dev/inmo/micro_utils/pagination/ServerPaginationHelpers.kt @@ -5,8 +5,8 @@ import io.ktor.http.Parameters val Parameters.extractPagination: Pagination get() = SimplePagination( - get("page") ?.toIntOrNull() ?: 0, - get("size") ?.toIntOrNull() ?: defaultPaginationPageSize + get(paginationPageKey) ?.toIntOrNull() ?: 0, + get(paginationSizeKey) ?.toIntOrNull() ?: defaultPaginationPageSize ) val ApplicationCall.extractPagination: Pagination