diff options
| author | VishnuSanal <t.v.s10123@gmail.com> | 2024-02-17 00:35:16 +0530 |
|---|---|---|
| committer | VishnuSanal <t.v.s10123@gmail.com> | 2024-02-17 00:35:16 +0530 |
| commit | 448c613d845a40b61a2cc5b0079c775ee964ae3b (patch) | |
| tree | 474db7265ae7f68c9417766092b99839850b3d00 /app/src/main/java | |
| parent | 20c18ba87a0d7e679e0c8ed053f4790d11e9d267 (diff) | |
| download | SidePhOnelauncher-448c613d845a40b61a2cc5b0079c775ee964ae3b.tar.gz SidePhOnelauncher-448c613d845a40b61a2cc5b0079c775ee964ae3b.tar.bz2 SidePhOnelauncher-448c613d845a40b61a2cc5b0079c775ee964ae3b.zip | |
fixes #406
Diffstat (limited to 'app/src/main/java')
| -rw-r--r-- | app/src/main/java/app/olauncher/ui/AppDrawerAdapter.kt | 51 |
1 files changed, 50 insertions, 1 deletions
diff --git a/app/src/main/java/app/olauncher/ui/AppDrawerAdapter.kt b/app/src/main/java/app/olauncher/ui/AppDrawerAdapter.kt index d72b2d6..55dd973 100644 --- a/app/src/main/java/app/olauncher/ui/AppDrawerAdapter.kt +++ b/app/src/main/java/app/olauncher/ui/AppDrawerAdapter.kt @@ -1,6 +1,9 @@ package app.olauncher.ui +import android.content.Context import android.os.UserHandle +import android.text.Editable +import android.text.TextWatcher import android.view.LayoutInflater import android.view.View import android.view.ViewGroup @@ -172,13 +175,43 @@ class AppDrawerAdapter( } appRename.setOnClickListener { if (appModel.appPackage.isNotEmpty()) { - etAppRename.hint = appModel.appLabel + etAppRename.hint = getAppName(etAppRename.context, appModel.appPackage) + etAppRename.setText(appModel.appLabel) + etAppRename.setSelectAllOnFocus(true) renameLayout.visibility = View.VISIBLE appHideLayout.visibility = View.GONE etAppRename.showKeyboard() etAppRename.imeOptions = EditorInfo.IME_ACTION_DONE; } } + etAppRename.onFocusChangeListener = View.OnFocusChangeListener { v, hasFocus -> + if (hasFocus) + appTitle.visibility = View.INVISIBLE + else + appTitle.visibility = View.VISIBLE + } + etAppRename.addTextChangedListener(object : TextWatcher { + override fun afterTextChanged(s: Editable?) { + etAppRename.hint = getAppName(etAppRename.context, appModel.appPackage) + } + + override fun beforeTextChanged( + s: CharSequence?, + start: Int, + count: Int, + after: Int, + ) { + } + + override fun onTextChanged( + s: CharSequence?, + start: Int, + before: Int, + count: Int, + ) { + etAppRename.hint = "" + } + }) etAppRename.setOnEditorActionListener { _, actionCode, _ -> if (actionCode == EditorInfo.IME_ACTION_DONE) { val renameLabel = etAppRename.text.toString().trim() @@ -196,6 +229,15 @@ class AppDrawerAdapter( if (renameLabel.isNotBlank() && appModel.appPackage.isNotBlank()) { appRenameListener(appModel, renameLabel) renameLayout.visibility = View.GONE + } else { + val packageManager = etAppRename.context.packageManager + appRenameListener( + appModel, + packageManager.getApplicationLabel( + packageManager.getApplicationInfo(appModel.appPackage, 0) + ).toString() + ) + renameLayout.visibility = View.GONE } } appInfo.setOnClickListener { appInfoListener(appModel) } @@ -203,5 +245,12 @@ class AppDrawerAdapter( appHideLayout.setOnClickListener { appHideLayout.visibility = View.GONE } appHide.setOnClickListener { appHideListener(appModel, bindingAdapterPosition) } } + + private fun getAppName(context: Context, appPackage: String): String { + val packageManager = context.packageManager + return packageManager.getApplicationLabel( + packageManager.getApplicationInfo(appPackage, 0) + ).toString() + } } } |
