Fixed more homescreen contacts bugs

This commit is contained in:
ottoptj 2024-11-13 00:29:57 +02:00
commit 1401488ed3
2 changed files with 10 additions and 12 deletions

View file

@ -211,11 +211,7 @@ class MainActivity : AppCompatActivity(), SharedPreferences.OnSharedPreferenceCh
else { else {
textView.visibility = View.VISIBLE textView.visibility = View.VISIBLE
val savedView = sharedPreferenceManager.getShortcut(textView)?.toMutableList() val savedView = sharedPreferenceManager.getShortcut(textView)
if (savedView != null && savedView.size > 2 && savedView.size < 4) {
savedView.add(3, "false")
}
// Set the non-work profile drawable by default // Set the non-work profile drawable by default
textView.setCompoundDrawablesWithIntrinsicBounds(ResourcesCompat.getDrawable(resources, R.drawable.ic_empty, null),null,null,null) textView.setCompoundDrawablesWithIntrinsicBounds(ResourcesCompat.getDrawable(resources, R.drawable.ic_empty, null),null,null,null)
@ -249,7 +245,7 @@ class MainActivity : AppCompatActivity(), SharedPreferences.OnSharedPreferenceCh
menuTitle.setText(textView.text) menuTitle.setText(textView.text)
menuTitle.visibility = View.VISIBLE menuTitle.visibility = View.VISIBLE
if (savedView != null) { if (savedView != null) {
setRenameShortcutListener(textView, savedView) setRenameShortcutListener(textView)
} }
appAdapter?.shortcutTextView = textView appAdapter?.shortcutTextView = textView
@ -275,7 +271,7 @@ class MainActivity : AppCompatActivity(), SharedPreferences.OnSharedPreferenceCh
menuTitle.setText(textView.text) menuTitle.setText(textView.text)
menuTitle.visibility = View.VISIBLE menuTitle.visibility = View.VISIBLE
if (savedView != null) { if (savedView != null) {
setRenameShortcutListener(textView, savedView) setRenameShortcutListener(textView)
} }
appAdapter?.shortcutTextView = textView appAdapter?.shortcutTextView = textView
contactAdapter?.shortcutTextView = textView contactAdapter?.shortcutTextView = textView
@ -285,7 +281,7 @@ class MainActivity : AppCompatActivity(), SharedPreferences.OnSharedPreferenceCh
} }
} }
private fun setRenameShortcutListener(textView: TextView, savedView: List<String>) { private fun setRenameShortcutListener(textView: TextView) {
menuTitle.setOnEditorActionListener { _, actionId, _ -> menuTitle.setOnEditorActionListener { _, actionId, _ ->
if (actionId == EditorInfo.IME_ACTION_DONE) { if (actionId == EditorInfo.IME_ACTION_DONE) {
@ -296,20 +292,21 @@ class MainActivity : AppCompatActivity(), SharedPreferences.OnSharedPreferenceCh
val imm = val imm =
getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
imm.hideSoftInputFromWindow(menuTitle.windowToken, 0) imm.hideSoftInputFromWindow(menuTitle.windowToken, 0)
val savedView = sharedPreferenceManager.getShortcut(textView)!!
textView.text = menuTitle.text textView.text = menuTitle.text
try { try {
sharedPreferenceManager.setShortcut( sharedPreferenceManager.setShortcut(
textView, textView,
savedView[0], savedView[0],
savedView[1].toInt(), savedView[1].toInt(),
savedView[3].toBoolean() savedView.getOrNull(3)?.toBoolean() ?: false
) )
} catch (_: NumberFormatException) { } catch (_: NumberFormatException) {
sharedPreferenceManager.setShortcut( sharedPreferenceManager.setShortcut(
textView, textView,
savedView[0], savedView[0],
0, 0,
savedView[3].toBoolean() savedView.getOrNull(3)?.toBoolean() ?: false
) )
} }
backToHome() backToHome()
@ -358,7 +355,7 @@ class MainActivity : AppCompatActivity(), SharedPreferences.OnSharedPreferenceCh
private fun setShortcutSetup(textView: TextView, savedView: List<String>?) { private fun setShortcutSetup(textView: TextView, savedView: List<String>?) {
// Set the work profile drawable for work profile apps // Set the work profile drawable for work profile apps
textView.text = savedView?.get(2) textView.text = savedView?.get(2)
if (savedView != null && savedView[3].toBoolean()) { if (savedView != null && (savedView.getOrNull(3)?.toBoolean() == true)) {
setShortcutContactListeners(textView, savedView[1].toInt()) setShortcutContactListeners(textView, savedView[1].toInt())
return return
} }
@ -1186,6 +1183,7 @@ class MainActivity : AppCompatActivity(), SharedPreferences.OnSharedPreferenceCh
contactId, contactId,
true true
) )
shortcutView.setCompoundDrawablesWithIntrinsicBounds(ResourcesCompat.getDrawable(resources, R.drawable.ic_empty, null),null,null,null)
uiUtils.setDrawables(shortcutView, sharedPreferenceManager.getShortcutAlignment()) uiUtils.setDrawables(shortcutView, sharedPreferenceManager.getShortcutAlignment())
backToHome() backToHome()
} }

View file

@ -96,7 +96,7 @@ class SharedPreferenceManager (private val context: Context) {
} }
fun getShortcut(textView: TextView): List<String>? { fun getShortcut(textView: TextView): List<String>? {
val value = preferences.getString("shortcut${textView.id}", "e§splitter§e") val value = preferences.getString("shortcut${textView.id}", "e§splitter§e§splitter§e§splitter§e")
return value?.split("§splitter§") return value?.split("§splitter§")
} }