Archived
Text Basic 2.0.0: quick fix on the dropdown menu, implemented a custom DropdownAdapter.kt because a bug on the dropdown menus from years ago still has not been fixed... I encountered this bug in a project back in 2019. How is this still a thing?
This commit is contained in:
+1
-1
@@ -11,7 +11,7 @@ android {
|
||||
applicationId "com.denizk0461.textbasic"
|
||||
minSdk 23
|
||||
targetSdk 33
|
||||
versionCode 6
|
||||
versionCode 7
|
||||
versionName "2.0.0"
|
||||
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"version": 3,
|
||||
"artifactType": {
|
||||
"type": "APK",
|
||||
"kind": "Directory"
|
||||
},
|
||||
"applicationId": "com.denizk0461.textbasic",
|
||||
"variantName": "release",
|
||||
"elements": [
|
||||
{
|
||||
"type": "SINGLE",
|
||||
"filters": [],
|
||||
"attributes": [],
|
||||
"versionCode": 6,
|
||||
"versionName": "2.0.0",
|
||||
"outputFile": "app-release.apk"
|
||||
}
|
||||
],
|
||||
"elementType": "File"
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.denizd.textbasic.adapter
|
||||
|
||||
import android.content.Context
|
||||
import android.widget.ArrayAdapter
|
||||
import android.widget.Filter
|
||||
import com.denizd.textbasic.R
|
||||
|
||||
class DropdownAdapter(context: Context, items: List<String>)
|
||||
: ArrayAdapter<String>(context, R.layout.item_dropdown, items) {
|
||||
|
||||
private val noOpFilter = object : Filter() {
|
||||
private val noOpResult = FilterResults()
|
||||
override fun performFiltering(constraint: CharSequence?) = noOpResult
|
||||
override fun publishResults(constraint: CharSequence?, results: FilterResults?) {}
|
||||
}
|
||||
|
||||
override fun getFilter() = noOpFilter
|
||||
}
|
||||
@@ -8,7 +8,6 @@ import android.os.Bundle
|
||||
import android.util.TypedValue
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.ArrayAdapter
|
||||
import android.widget.ImageButton
|
||||
import android.widget.TextView
|
||||
import androidx.annotation.ColorInt
|
||||
@@ -16,6 +15,7 @@ import androidx.annotation.StringRes
|
||||
import androidx.transition.TransitionManager
|
||||
import com.denizd.textbasic.BuildConfig
|
||||
import com.denizd.textbasic.R
|
||||
import com.denizd.textbasic.adapter.DropdownAdapter
|
||||
import com.denizd.textbasic.databinding.FragmentSettingsNewBinding
|
||||
import com.denizd.textbasic.db.QuoteStorage
|
||||
import com.denizd.textbasic.sheet.TextSheet
|
||||
@@ -41,10 +41,9 @@ class SettingsNewFragment : BaseFragment(R.layout.fragment_settings_new) {
|
||||
storage = QuoteStorage.getInstance(context)
|
||||
|
||||
// --- text font --- //
|
||||
val fontAdapter = ArrayAdapter.createFromResource(
|
||||
val fontAdapter = DropdownAdapter(
|
||||
context,
|
||||
R.array.text_fonts,
|
||||
R.layout.item_dropdown,
|
||||
context.resources.getStringArray(R.array.text_fonts).toList(),
|
||||
)
|
||||
|
||||
binding.autoCompleteFont.setAdapter(fontAdapter)
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.denizd.textbasic.view
|
||||
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import com.google.android.material.textfield.MaterialAutoCompleteTextView
|
||||
|
||||
class ExposedDropdownMenu @JvmOverloads constructor(
|
||||
context: Context,
|
||||
attrs: AttributeSet? = null,
|
||||
defStyleAttr: Int = 0,
|
||||
) : MaterialAutoCompleteTextView(context, attrs, defStyleAttr) {
|
||||
|
||||
override fun getFreezesText(): Boolean {
|
||||
return false
|
||||
}
|
||||
}
|
||||
@@ -41,5 +41,6 @@
|
||||
ads:layout_constraintBottom_toBottomOf="parent"
|
||||
ads:layout_constraintStart_toStartOf="parent"
|
||||
ads:layout_constraintEnd_toEndOf="parent"/>
|
||||
<!-- ads:adUnitId="ca-app-pub-6028283326987089/7147449316"-->
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
Reference in New Issue
Block a user