diff --git a/CHANGELOG.md b/CHANGELOG.md
index dba41d1..6df4970 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -16,6 +16,11 @@ All notable changes to this project will be documented in this file. See [conven
- Updated Language Files. ([#7](https://github.com/DroidWorksStudio/mLauncher/issues/7)) - ([89ef870](https://github.com/DroidWorksStudio/mLauncher/commit/89ef870cf40846216ff366e96d9f2ebb766e4a89))
+### Refactoring:
+
+- Refactor keyboard handling and UI consistency - ([0c59747](https://github.com/DroidWorksStudio/mLauncher/commit/0c59747ff9f583e2d90c412b1c3d1f3e99751412))
+- Refactored keyboard handling methods in AppHelper.kt to improve code clarity. Removed redundant showSoftKeyboard() and hideKeyboard() functions from AppHelper.kt and adjusted references accordingly. Also, ensured UI consistency by renaming search_view1 to search_view_text in fragment_draw.xml for better readability and maintained uniformity in variable naming conventions. Additionally, updated the draw_search_button FloatingActionButton attributes for visual consistency and clarity. - ([0c59747](https://github.com/DroidWorksStudio/mLauncher/commit/0c59747ff9f583e2d90c412b1c3d1f3e99751412))
+
## [0.0.1](https://github.com/DroidWorksStudio/mLauncher/tree/0.0.1) - (08, May 2024)
### Implemented Enhancements:
diff --git a/app/src/main/java/com/github/droidworksstudio/launcher/helper/AppHelper.kt b/app/src/main/java/com/github/droidworksstudio/launcher/helper/AppHelper.kt
index 3a6e376..f3fcf96 100644
--- a/app/src/main/java/com/github/droidworksstudio/launcher/helper/AppHelper.kt
+++ b/app/src/main/java/com/github/droidworksstudio/launcher/helper/AppHelper.kt
@@ -253,24 +253,11 @@ class AppHelper @Inject constructor() {
}
}
- fun View.showSoftKeyboard() {
- if (this.requestFocus()) {
- val inputMethodManager: InputMethodManager =
- context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
- inputMethodManager.showSoftInput(this, InputMethodManager.SHOW_IMPLICIT)
- }
- }
-
fun hideKeyboard(context: Context, view: View) {
val imm = context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
imm.hideSoftInputFromWindow(view.windowToken, 0)
}
- fun View.hideKeyboard() {
- val imm = context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
- imm.hideSoftInputFromWindow(this.windowToken, 0)
- }
-
fun wordOfTheDay(resources: Resources): String {
val dailyWordsArray = resources.getStringArray(R.array.settings_appearance_daily_word_default)
val dayOfYear = Calendar.getInstance().get(Calendar.DAY_OF_YEAR)
diff --git a/app/src/main/java/com/github/droidworksstudio/launcher/ui/activities/MainActivity.kt b/app/src/main/java/com/github/droidworksstudio/launcher/ui/activities/MainActivity.kt
index 97fba24..5725071 100644
--- a/app/src/main/java/com/github/droidworksstudio/launcher/ui/activities/MainActivity.kt
+++ b/app/src/main/java/com/github/droidworksstudio/launcher/ui/activities/MainActivity.kt
@@ -1,6 +1,7 @@
package com.github.droidworksstudio.launcher.ui.activities
import android.os.Bundle
+import android.util.Log
import android.view.Menu
import android.view.MenuItem
import android.view.WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS
@@ -10,7 +11,6 @@ import androidx.lifecycle.lifecycleScope
import androidx.navigation.NavController
import androidx.navigation.findNavController
import androidx.navigation.fragment.NavHostFragment
-import androidx.navigation.fragment.findNavController
import androidx.navigation.ui.AppBarConfiguration
import androidx.navigation.ui.navigateUp
import com.github.droidworksstudio.launcher.R
@@ -74,6 +74,7 @@ class MainActivity : AppCompatActivity() {
}
private fun observeUI() {
+ binding.pager.currentItem = 0
preferenceViewModel.setShowStatusBar(preferenceHelper.showStatusBar)
preferenceViewModel.showStatusBarLiveData.observe(this) {
if (it) appHelper.showStatusBar(this.window)
@@ -133,6 +134,7 @@ class MainActivity : AppCompatActivity() {
@Deprecated("Deprecated in Java")
override fun onBackPressed() {
val currentItem = binding.pager.currentItem
+ Log.d("currentItem","$currentItem")
val navHostFragment =
supportFragmentManager.findFragmentById(R.id.nav_host_fragment_content_main) as NavHostFragment
val currentFragment = navHostFragment.childFragmentManager.fragments[0]
diff --git a/app/src/main/java/com/github/droidworksstudio/launcher/ui/drawer/DrawFragment.kt b/app/src/main/java/com/github/droidworksstudio/launcher/ui/drawer/DrawFragment.kt
index e923114..dd63447 100644
--- a/app/src/main/java/com/github/droidworksstudio/launcher/ui/drawer/DrawFragment.kt
+++ b/app/src/main/java/com/github/droidworksstudio/launcher/ui/drawer/DrawFragment.kt
@@ -13,6 +13,7 @@ import androidx.fragment.app.Fragment
import androidx.fragment.app.viewModels
import androidx.lifecycle.coroutineScope
import androidx.lifecycle.lifecycleScope
+import androidx.navigation.fragment.NavHostFragment
import androidx.recyclerview.widget.StaggeredGridLayoutManager
import com.github.droidworksstudio.launcher.R
import com.github.droidworksstudio.launcher.data.entities.AppInfo
@@ -84,6 +85,7 @@ class DrawFragment : Fragment(), OnItemClickedListener.OnAppsClickedListener,
private fun observeDrawerApps() {
viewModel.compareInstalledAppInfo()
+ @Suppress("DEPRECATION")
viewLifecycleOwner.lifecycleScope.launchWhenCreated {
viewModel.drawApps.collect{
drawAdapter.submitList(it)
@@ -93,7 +95,7 @@ class DrawFragment : Fragment(), OnItemClickedListener.OnAppsClickedListener,
}
private fun setupSearch() {
- binding.searchView1.addTextChangedListener(object: TextWatcher {
+ binding.searchViewText.addTextChangedListener(object: TextWatcher {
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {
// Do Nothing
}
@@ -109,19 +111,20 @@ class DrawFragment : Fragment(), OnItemClickedListener.OnAppsClickedListener,
}
private fun observeClickListener(){
- binding.drawSearchButton.setOnClickListener {appHelper.showSoftKeyboard(context, binding.searchView1)}
+ binding.drawSearchButton.setOnClickListener {appHelper.showSoftKeyboard(context, binding.searchViewText)}
}
private fun searchApp(query: String?) {
val searchQuery = "%$query%"
+ @Suppress("DEPRECATION")
viewLifecycleOwner.lifecycle.coroutineScope.launchWhenCreated {
viewModel.searchAppInfo(searchQuery).collect { drawAdapter.submitList(it) }
}
}
private fun showSelectedApp(appInfo: AppInfo) {
- binding.searchView1.text?.clear()
+ binding.searchViewText.text?.clear()
val bottomSheetFragment = AppInfoBottomSheetFragment(appInfo)
bottomSheetFragment.setOnBottomSheetDismissedListener(this)
@@ -136,18 +139,19 @@ class DrawFragment : Fragment(), OnItemClickedListener.OnAppsClickedListener,
override fun onPause() {
super.onPause()
- binding.searchView1.text?.clear()
+ binding.searchViewText.text?.clear()
}
override fun onResume() {
super.onResume()
observeDrawerApps()
binding.drawAdapter.scrollToPosition(0)
- appHelper.hideKeyboard(context, binding.searchView1)
+ appHelper.hideKeyboard(context, binding.searchView)
}
override fun onStop() {
super.onStop()
+ appHelper.hideKeyboard(context, binding.searchView)
}
override fun onAppClicked(appInfo: AppInfo) {
diff --git a/app/src/main/java/com/github/droidworksstudio/launcher/ui/home/HomeFragment.kt b/app/src/main/java/com/github/droidworksstudio/launcher/ui/home/HomeFragment.kt
index 9950fc2..5b068a0 100644
--- a/app/src/main/java/com/github/droidworksstudio/launcher/ui/home/HomeFragment.kt
+++ b/app/src/main/java/com/github/droidworksstudio/launcher/ui/home/HomeFragment.kt
@@ -15,6 +15,7 @@ import androidx.annotation.RequiresApi
import androidx.fragment.app.Fragment
import androidx.fragment.app.viewModels
import androidx.lifecycle.lifecycleScope
+import androidx.navigation.findNavController
import androidx.recyclerview.widget.StaggeredGridLayoutManager
import com.github.droidworksstudio.launcher.R
import com.github.droidworksstudio.launcher.accessibility.MyAccessibilityService
@@ -94,6 +95,7 @@ class HomeFragment : Fragment(), OnItemClickedListener.OnAppsClickedListener,
@SuppressLint("ClickableViewAccessibility")
private fun initializeInjectedDependencies() {
context = requireContext()
+ appHelper.hideKeyboard(context, binding.mainView)
binding.nestScrollView.scrollEventListener = this
@@ -153,6 +155,8 @@ class HomeFragment : Fragment(), OnItemClickedListener.OnAppsClickedListener,
}
private fun observeUserInterfaceSettings() {
+ appHelper.hideKeyboard(context, binding.mainView)
+
preferenceViewModel.setShowTime(preferenceHelper.showTime)
preferenceViewModel.setShowDate(preferenceHelper.showDate)
preferenceViewModel.setShowDailyWord(preferenceHelper.showDailyWord)
@@ -250,10 +254,12 @@ class HomeFragment : Fragment(), OnItemClickedListener.OnAppsClickedListener,
override fun onPause() {
super.onPause()
+ appHelper.hideKeyboard(context, binding.mainView)
}
override fun onResume() {
super.onResume()
+ appHelper.hideKeyboard(context, binding.mainView)
observeUserInterfaceSettings()
observeFavoriteAppList()
}
diff --git a/app/src/main/res/layout/fragment_draw.xml b/app/src/main/res/layout/fragment_draw.xml
index 362b66f..468b629 100644
--- a/app/src/main/res/layout/fragment_draw.xml
+++ b/app/src/main/res/layout/fragment_draw.xml
@@ -25,7 +25,7 @@
tools:ignore="DuplicateClickableBoundsCheck">
+ android:textStyle="normal"
+ tools:ignore="VisualLintTextFieldSize">
@@ -54,16 +55,16 @@
+ tools:ignore="ContentDescription,SpeakableTextPresentCheck" />
\ No newline at end of file