diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index bffc3ed..7f47ed5 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -25,7 +25,7 @@
android:theme="@style/Theme.YamLauncher"
tools:targetApi="34">
diff --git a/app/src/main/java/eu/ottop/yamlauncher/AppActionMenu.kt b/app/src/main/java/eu/ottop/yamlauncher/AppActionMenu.kt
index eddf989..e7d60a7 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/AppActionMenu.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/AppActionMenu.kt
@@ -18,6 +18,8 @@ import android.widget.TextView
import androidx.appcompat.widget.AppCompatButton
import androidx.lifecycle.lifecycleScope
import eu.ottop.yamlauncher.databinding.ActivityMainBinding
+import eu.ottop.yamlauncher.settings.SharedPreferenceManager
+import eu.ottop.yamlauncher.utils.Animations
import kotlinx.coroutines.launch
class AppActionMenu {
@@ -33,7 +35,7 @@ class AppActionMenu {
userHandle: UserHandle,
workProfile: Int,
launcherApps: LauncherApps,
- mainActivity: LauncherActivityInfo?
+ appActivity: LauncherActivityInfo?
){
val animations = Animations(activity)
val sharedPreferenceManager = SharedPreferenceManager(activity)
@@ -41,9 +43,9 @@ class AppActionMenu {
actionMenu.findViewById(R.id.info).setOnClickListener {
// Launch app info in phone settings
- if (mainActivity != null) {
+ if (appActivity != null) {
launcherApps.startAppDetailsActivity(
- mainActivity.componentName,
+ appActivity.componentName,
userHandle,
null,
null
@@ -72,7 +74,7 @@ class AppActionMenu {
val editText = editLayout.findViewById(R.id.appNameEdit)
val resetButton = editLayout.findViewById(R.id.reset)
- val app = Triple(mainActivity!!, userHandle, workProfile)
+ val app = Triple(appActivity!!, userHandle, workProfile)
searchView.visibility = View.INVISIBLE
editText.requestFocus()
diff --git a/app/src/main/java/eu/ottop/yamlauncher/AppMenuAdapter.kt b/app/src/main/java/eu/ottop/yamlauncher/AppMenuAdapter.kt
index 161e829..0eaecec 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/AppMenuAdapter.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/AppMenuAdapter.kt
@@ -17,6 +17,9 @@ import android.widget.TextView
import androidx.core.content.res.ResourcesCompat
import androidx.recyclerview.widget.RecyclerView
import com.google.android.material.textfield.TextInputEditText
+import eu.ottop.yamlauncher.settings.SharedPreferenceManager
+import eu.ottop.yamlauncher.utils.AppUtils
+import eu.ottop.yamlauncher.utils.UIUtils
class AppMenuAdapter(
diff --git a/app/src/main/java/eu/ottop/yamlauncher/MainActivity.kt b/app/src/main/java/eu/ottop/yamlauncher/MainActivity.kt
index 3fbe06b..f964148 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/MainActivity.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/MainActivity.kt
@@ -33,6 +33,18 @@ import androidx.preference.PreferenceManager
import androidx.recyclerview.widget.RecyclerView
import com.google.android.material.textfield.TextInputEditText
import eu.ottop.yamlauncher.databinding.ActivityMainBinding
+import eu.ottop.yamlauncher.settings.SettingsActivity
+import eu.ottop.yamlauncher.settings.SharedPreferenceManager
+import eu.ottop.yamlauncher.tasks.BatteryReceiver
+import eu.ottop.yamlauncher.tasks.ScreenLockService
+import eu.ottop.yamlauncher.utils.Animations
+import eu.ottop.yamlauncher.utils.AppMenuEdgeFactory
+import eu.ottop.yamlauncher.utils.AppMenuLinearLayoutManager
+import eu.ottop.yamlauncher.utils.AppUtils
+import eu.ottop.yamlauncher.utils.GestureUtils
+import eu.ottop.yamlauncher.utils.StringUtils
+import eu.ottop.yamlauncher.utils.UIUtils
+import eu.ottop.yamlauncher.utils.WeatherSystem
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
@@ -74,8 +86,7 @@ class MainActivity : AppCompatActivity(), SharedPreferences.OnSharedPreferenceCh
private lateinit var preferences: SharedPreferences
private var isBatteryReceiverRegistered = false
- private var isJobActive = true
- var canExit = true
+ var isJobActive = true
private val swipeThreshold = 100
private val swipeVelocityThreshold = 100
@@ -525,14 +536,10 @@ class MainActivity : AppCompatActivity(), SharedPreferences.OnSharedPreferenceCh
binding.appView.addOnLayoutChangeListener { _, _, top, _, bottom, _, oldTop, _, oldBottom ->
if (bottom - top > oldBottom - oldTop) {
- // Allow the app menu to be closed after the keyboard is closed
- canExit = true
+ // If keyboard is closed, remove cursor from the search bar
searchView.clearFocus()
}
- else if (bottom - top < oldBottom - oldTop) {
- // The app menu can't be closed with the keyboard open
- canExit = false
- }
+
}
searchView.addTextChangedListener(object :
@@ -666,7 +673,7 @@ class MainActivity : AppCompatActivity(), SharedPreferences.OnSharedPreferenceCh
) {
textView.visibility = View.INVISIBLE
animations.fadeViewIn(actionMenuLayout)
- val mainActivity =
+ val appActivity =
launcherApps.getActivityList(appInfo.applicationInfo.packageName, userHandle)
.firstOrNull()
appActionMenu.setActionListeners(
@@ -680,7 +687,7 @@ class MainActivity : AppCompatActivity(), SharedPreferences.OnSharedPreferenceCh
userHandle,
userProfile,
launcherApps,
- mainActivity
+ appActivity
)
}
diff --git a/app/src/main/java/eu/ottop/yamlauncher/AboutFragment.kt b/app/src/main/java/eu/ottop/yamlauncher/settings/AboutFragment.kt
similarity index 70%
rename from app/src/main/java/eu/ottop/yamlauncher/AboutFragment.kt
rename to app/src/main/java/eu/ottop/yamlauncher/settings/AboutFragment.kt
index 57e5ce7..51d8e4b 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/AboutFragment.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/settings/AboutFragment.kt
@@ -1,10 +1,16 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.settings
+import android.content.Intent
+import android.net.Uri
import android.os.Bundle
+import android.provider.Settings
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
+import android.widget.ImageView
import androidx.fragment.app.Fragment
+import eu.ottop.yamlauncher.R
+import eu.ottop.yamlauncher.utils.StringUtils
class AboutFragment : Fragment() {
@@ -27,7 +33,12 @@ class AboutFragment : Fragment() {
stringUtils.setLink(requireActivity().findViewById(R.id.stripeLink), getString(R.string.stripe_link))
stringUtils.setLink(requireActivity().findViewById(R.id.liberaLink), getString(R.string.libera_link))
stringUtils.setLink(requireActivity().findViewById(R.id.weatherLink), getString(R.string.weather_link))
+
+ requireActivity().findViewById(R.id.iconView).setOnClickListener {
+ val intent = Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS).apply {
+ data = Uri.parse("package:${requireContext().packageName}")
+ }
+ startActivity(intent)
+ }
}
-
-
}
\ No newline at end of file
diff --git a/app/src/main/java/eu/ottop/yamlauncher/GestureAppsAdapter.kt b/app/src/main/java/eu/ottop/yamlauncher/settings/GestureAppsAdapter.kt
similarity index 89%
rename from app/src/main/java/eu/ottop/yamlauncher/GestureAppsAdapter.kt
rename to app/src/main/java/eu/ottop/yamlauncher/settings/GestureAppsAdapter.kt
index bbe47b9..bdd1df2 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/GestureAppsAdapter.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/settings/GestureAppsAdapter.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.settings
import android.annotation.SuppressLint
import android.content.Context
@@ -11,6 +11,8 @@ import android.widget.FrameLayout
import android.widget.TextView
import androidx.core.content.res.ResourcesCompat
import androidx.recyclerview.widget.RecyclerView
+import eu.ottop.yamlauncher.R
+import eu.ottop.yamlauncher.utils.UIUtils
class GestureAppsAdapter(
private val context: Context,
@@ -50,10 +52,12 @@ class GestureAppsAdapter(
val app = apps[position]
if (app.third != 0) {
- holder.textView.setCompoundDrawablesWithIntrinsicBounds(ResourcesCompat.getDrawable(context.resources, R.drawable.ic_work_app, null),null,null,null)
+ holder.textView.setCompoundDrawablesWithIntrinsicBounds(ResourcesCompat.getDrawable(context.resources,
+ R.drawable.ic_work_app, null),null,null,null)
}
else {
- holder.textView.setCompoundDrawablesWithIntrinsicBounds(ResourcesCompat.getDrawable(context.resources, R.drawable.ic_empty, null),null,null,null)
+ holder.textView.setCompoundDrawablesWithIntrinsicBounds(ResourcesCompat.getDrawable(context.resources,
+ R.drawable.ic_empty, null),null,null,null)
}
uiUtils.setAppAlignment(holder.textView)
diff --git a/app/src/main/java/eu/ottop/yamlauncher/GestureAppsFragment.kt b/app/src/main/java/eu/ottop/yamlauncher/settings/GestureAppsFragment.kt
similarity index 95%
rename from app/src/main/java/eu/ottop/yamlauncher/GestureAppsFragment.kt
rename to app/src/main/java/eu/ottop/yamlauncher/settings/GestureAppsFragment.kt
index 1a61057..699eb19 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/GestureAppsFragment.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/settings/GestureAppsFragment.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.settings
import android.app.AlertDialog
import android.content.Context
@@ -15,9 +15,15 @@ import androidx.fragment.app.Fragment
import androidx.lifecycle.lifecycleScope
import androidx.recyclerview.widget.RecyclerView
import com.google.android.material.textfield.TextInputEditText
+import eu.ottop.yamlauncher.utils.AppMenuEdgeFactory
+import eu.ottop.yamlauncher.R
+import eu.ottop.yamlauncher.utils.AppUtils
+import eu.ottop.yamlauncher.utils.StringUtils
+import eu.ottop.yamlauncher.utils.UIUtils
import kotlinx.coroutines.launch
-class GestureAppsFragment(private val direction: String) : Fragment(), GestureAppsAdapter.OnItemClickListener {
+class GestureAppsFragment(private val direction: String) : Fragment(),
+ GestureAppsAdapter.OnItemClickListener {
private var adapter: GestureAppsAdapter? = null
private lateinit var sharedPreferenceManager: SharedPreferenceManager
diff --git a/app/src/main/java/eu/ottop/yamlauncher/HiddenAppsAdapter.kt b/app/src/main/java/eu/ottop/yamlauncher/settings/HiddenAppsAdapter.kt
similarity index 89%
rename from app/src/main/java/eu/ottop/yamlauncher/HiddenAppsAdapter.kt
rename to app/src/main/java/eu/ottop/yamlauncher/settings/HiddenAppsAdapter.kt
index cae4141..172daf8 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/HiddenAppsAdapter.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/settings/HiddenAppsAdapter.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.settings
import android.annotation.SuppressLint
import android.content.Context
@@ -11,6 +11,8 @@ import android.widget.FrameLayout
import android.widget.TextView
import androidx.core.content.res.ResourcesCompat
import androidx.recyclerview.widget.RecyclerView
+import eu.ottop.yamlauncher.R
+import eu.ottop.yamlauncher.utils.UIUtils
class HiddenAppsAdapter(
private val context: Context,
@@ -51,10 +53,12 @@ class HiddenAppsAdapter(
val app = apps[position]
if (app.third != 0) {
- holder.textView.setCompoundDrawablesWithIntrinsicBounds(ResourcesCompat.getDrawable(context.resources, R.drawable.ic_work_app, null),null,null,null)
+ holder.textView.setCompoundDrawablesWithIntrinsicBounds(ResourcesCompat.getDrawable(context.resources,
+ R.drawable.ic_work_app, null),null,null,null)
}
else {
- holder.textView.setCompoundDrawablesWithIntrinsicBounds(ResourcesCompat.getDrawable(context.resources, R.drawable.ic_empty, null),null,null,null)
+ holder.textView.setCompoundDrawablesWithIntrinsicBounds(ResourcesCompat.getDrawable(context.resources,
+ R.drawable.ic_empty, null),null,null,null)
}
uiUtils.setAppAlignment(holder.textView)
diff --git a/app/src/main/java/eu/ottop/yamlauncher/HiddenAppsFragment.kt b/app/src/main/java/eu/ottop/yamlauncher/settings/HiddenAppsFragment.kt
similarity index 95%
rename from app/src/main/java/eu/ottop/yamlauncher/HiddenAppsFragment.kt
rename to app/src/main/java/eu/ottop/yamlauncher/settings/HiddenAppsFragment.kt
index 5e0bdbd..89dbd8e 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/HiddenAppsFragment.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/settings/HiddenAppsFragment.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.settings
import android.app.AlertDialog
import android.content.Context
@@ -16,6 +16,11 @@ import androidx.fragment.app.Fragment
import androidx.lifecycle.lifecycleScope
import androidx.recyclerview.widget.RecyclerView
import com.google.android.material.textfield.TextInputEditText
+import eu.ottop.yamlauncher.utils.AppMenuEdgeFactory
+import eu.ottop.yamlauncher.R
+import eu.ottop.yamlauncher.utils.AppUtils
+import eu.ottop.yamlauncher.utils.StringUtils
+import eu.ottop.yamlauncher.utils.UIUtils
import kotlinx.coroutines.launch
class HiddenAppsFragment : Fragment(), HiddenAppsAdapter.OnItemClickListener {
diff --git a/app/src/main/java/eu/ottop/yamlauncher/LocationFragment.kt b/app/src/main/java/eu/ottop/yamlauncher/settings/LocationFragment.kt
similarity index 94%
rename from app/src/main/java/eu/ottop/yamlauncher/LocationFragment.kt
rename to app/src/main/java/eu/ottop/yamlauncher/settings/LocationFragment.kt
index e66d9cb..fe4cd03 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/LocationFragment.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/settings/LocationFragment.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.settings
import android.app.AlertDialog
import android.content.Context
@@ -13,6 +13,11 @@ import androidx.fragment.app.Fragment
import androidx.lifecycle.lifecycleScope
import androidx.recyclerview.widget.RecyclerView
import com.google.android.material.textfield.TextInputEditText
+import eu.ottop.yamlauncher.utils.AppMenuEdgeFactory
+import eu.ottop.yamlauncher.R
+import eu.ottop.yamlauncher.utils.WeatherSystem
+import eu.ottop.yamlauncher.utils.StringUtils
+import eu.ottop.yamlauncher.utils.UIUtils
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
diff --git a/app/src/main/java/eu/ottop/yamlauncher/LocationListAdapter.kt b/app/src/main/java/eu/ottop/yamlauncher/settings/LocationListAdapter.kt
similarity index 95%
rename from app/src/main/java/eu/ottop/yamlauncher/LocationListAdapter.kt
rename to app/src/main/java/eu/ottop/yamlauncher/settings/LocationListAdapter.kt
index 5a1fa7a..25db4e9 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/LocationListAdapter.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/settings/LocationListAdapter.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.settings
import android.annotation.SuppressLint
import android.content.Context
@@ -8,6 +8,8 @@ import android.view.ViewGroup
import android.widget.TextView
import androidx.constraintlayout.widget.ConstraintLayout
import androidx.recyclerview.widget.RecyclerView
+import eu.ottop.yamlauncher.R
+import eu.ottop.yamlauncher.utils.UIUtils
class LocationListAdapter(
private val context: Context,
diff --git a/app/src/main/java/eu/ottop/yamlauncher/SettingsActivity.kt b/app/src/main/java/eu/ottop/yamlauncher/settings/SettingsActivity.kt
similarity index 90%
rename from app/src/main/java/eu/ottop/yamlauncher/SettingsActivity.kt
rename to app/src/main/java/eu/ottop/yamlauncher/settings/SettingsActivity.kt
index 99cadca..b8a4868 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/SettingsActivity.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/settings/SettingsActivity.kt
@@ -1,7 +1,8 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.settings
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
+import eu.ottop.yamlauncher.R
import eu.ottop.yamlauncher.databinding.ActivitySettingsBinding
class SettingsActivity : AppCompatActivity() {
diff --git a/app/src/main/java/eu/ottop/yamlauncher/SettingsFragment.kt b/app/src/main/java/eu/ottop/yamlauncher/settings/SettingsFragment.kt
similarity index 98%
rename from app/src/main/java/eu/ottop/yamlauncher/SettingsFragment.kt
rename to app/src/main/java/eu/ottop/yamlauncher/settings/SettingsFragment.kt
index a5deb11..78669f5 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/SettingsFragment.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/settings/SettingsFragment.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.settings
import android.content.Intent
import android.os.Bundle
@@ -7,6 +7,7 @@ import android.widget.Toast
import androidx.preference.Preference
import androidx.preference.PreferenceFragmentCompat
import androidx.preference.SwitchPreference
+import eu.ottop.yamlauncher.R
class SettingsFragment : PreferenceFragmentCompat() {
diff --git a/app/src/main/java/eu/ottop/yamlauncher/SharedPreferenceManager.kt b/app/src/main/java/eu/ottop/yamlauncher/settings/SharedPreferenceManager.kt
similarity index 99%
rename from app/src/main/java/eu/ottop/yamlauncher/SharedPreferenceManager.kt
rename to app/src/main/java/eu/ottop/yamlauncher/settings/SharedPreferenceManager.kt
index f609402..faca0b2 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/SharedPreferenceManager.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/settings/SharedPreferenceManager.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.settings
import android.content.Context
import android.graphics.Color
diff --git a/app/src/main/java/eu/ottop/yamlauncher/BatteryReceiver.kt b/app/src/main/java/eu/ottop/yamlauncher/tasks/BatteryReceiver.kt
similarity index 92%
rename from app/src/main/java/eu/ottop/yamlauncher/BatteryReceiver.kt
rename to app/src/main/java/eu/ottop/yamlauncher/tasks/BatteryReceiver.kt
index 281e92f..6712d48 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/BatteryReceiver.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/tasks/BatteryReceiver.kt
@@ -1,10 +1,11 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.tasks
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import android.content.IntentFilter
import android.os.BatteryManager
+import eu.ottop.yamlauncher.MainActivity
class BatteryReceiver(private val activity: MainActivity) : BroadcastReceiver() {
diff --git a/app/src/main/java/eu/ottop/yamlauncher/ScreenLockService.kt b/app/src/main/java/eu/ottop/yamlauncher/tasks/ScreenLockService.kt
similarity index 94%
rename from app/src/main/java/eu/ottop/yamlauncher/ScreenLockService.kt
rename to app/src/main/java/eu/ottop/yamlauncher/tasks/ScreenLockService.kt
index 6eeb5a0..403ccec 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/ScreenLockService.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/tasks/ScreenLockService.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.tasks
import android.accessibilityservice.AccessibilityService
import android.content.Intent
diff --git a/app/src/main/java/eu/ottop/yamlauncher/Animations.kt b/app/src/main/java/eu/ottop/yamlauncher/utils/Animations.kt
similarity index 97%
rename from app/src/main/java/eu/ottop/yamlauncher/Animations.kt
rename to app/src/main/java/eu/ottop/yamlauncher/utils/Animations.kt
index 2c4a42c..1c0ce27 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/Animations.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/utils/Animations.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.utils
import android.animation.Animator
import android.animation.AnimatorListenerAdapter
@@ -9,7 +9,7 @@ import android.content.Context
import android.graphics.Color
import android.graphics.drawable.ColorDrawable
import android.view.View
-import eu.ottop.yamlauncher.databinding.ActivityMainBinding
+import eu.ottop.yamlauncher.settings.SharedPreferenceManager
class Animations (context: Context) {
diff --git a/app/src/main/java/eu/ottop/yamlauncher/AppMenuEdgeFactory.kt b/app/src/main/java/eu/ottop/yamlauncher/utils/AppMenuEdgeFactory.kt
similarity index 96%
rename from app/src/main/java/eu/ottop/yamlauncher/AppMenuEdgeFactory.kt
rename to app/src/main/java/eu/ottop/yamlauncher/utils/AppMenuEdgeFactory.kt
index 055c6a8..f81d972 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/AppMenuEdgeFactory.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/utils/AppMenuEdgeFactory.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.utils
import android.app.Activity
import android.widget.EdgeEffect
diff --git a/app/src/main/java/eu/ottop/yamlauncher/AppMenuLinearLayoutManager.kt b/app/src/main/java/eu/ottop/yamlauncher/utils/AppMenuLinearLayoutManager.kt
similarity index 88%
rename from app/src/main/java/eu/ottop/yamlauncher/AppMenuLinearLayoutManager.kt
rename to app/src/main/java/eu/ottop/yamlauncher/utils/AppMenuLinearLayoutManager.kt
index f9ad3ac..293d1a3 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/AppMenuLinearLayoutManager.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/utils/AppMenuLinearLayoutManager.kt
@@ -1,7 +1,8 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.utils
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
+import eu.ottop.yamlauncher.MainActivity
class AppMenuLinearLayoutManager(private val activity: MainActivity) : LinearLayoutManager(activity) {
@@ -18,7 +19,7 @@ class AppMenuLinearLayoutManager(private val activity: MainActivity) : LinearLay
val overscroll: Int = dy - scrollRange
// If the user scrolls up when already on top, go back to home. Only if the keyboard isn't open, though
- if (overscroll < 0 && (firstVisibleItemPosition == 0 || firstVisibleItemPosition < 0) && scrollStarted && activity.canExit) {
+ if (overscroll < 0 && (firstVisibleItemPosition == 0 || firstVisibleItemPosition < 0) && scrollStarted) {
activity.backToHome()
}
diff --git a/app/src/main/java/eu/ottop/yamlauncher/AppUtils.kt b/app/src/main/java/eu/ottop/yamlauncher/utils/AppUtils.kt
similarity index 97%
rename from app/src/main/java/eu/ottop/yamlauncher/AppUtils.kt
rename to app/src/main/java/eu/ottop/yamlauncher/utils/AppUtils.kt
index 1878845..41067ee 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/AppUtils.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/utils/AppUtils.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.utils
import android.content.Context
import android.content.pm.ApplicationInfo
@@ -6,6 +6,7 @@ import android.content.pm.LauncherActivityInfo
import android.content.pm.LauncherApps
import android.os.UserHandle
import android.widget.Toast
+import eu.ottop.yamlauncher.settings.SharedPreferenceManager
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
diff --git a/app/src/main/java/eu/ottop/yamlauncher/GestureUtils.kt b/app/src/main/java/eu/ottop/yamlauncher/utils/GestureUtils.kt
similarity index 96%
rename from app/src/main/java/eu/ottop/yamlauncher/GestureUtils.kt
rename to app/src/main/java/eu/ottop/yamlauncher/utils/GestureUtils.kt
index 38f25c2..3ebb455 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/GestureUtils.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/utils/GestureUtils.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.utils
import android.accessibilityservice.AccessibilityService
import android.accessibilityservice.AccessibilityServiceInfo
@@ -11,6 +11,7 @@ import android.content.pm.ServiceInfo
import android.provider.Settings
import android.view.accessibility.AccessibilityManager
import androidx.appcompat.app.AppCompatActivity.ACCESSIBILITY_SERVICE
+import eu.ottop.yamlauncher.settings.SharedPreferenceManager
class GestureUtils(private val context: Context) {
diff --git a/app/src/main/java/eu/ottop/yamlauncher/StringUtils.kt b/app/src/main/java/eu/ottop/yamlauncher/utils/StringUtils.kt
similarity index 95%
rename from app/src/main/java/eu/ottop/yamlauncher/StringUtils.kt
rename to app/src/main/java/eu/ottop/yamlauncher/utils/StringUtils.kt
index ca316db..deabf24 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/StringUtils.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/utils/StringUtils.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.utils
import android.text.Html
import android.text.method.LinkMovementMethod
diff --git a/app/src/main/java/eu/ottop/yamlauncher/UIUtils.kt b/app/src/main/java/eu/ottop/yamlauncher/utils/UIUtils.kt
similarity index 99%
rename from app/src/main/java/eu/ottop/yamlauncher/UIUtils.kt
rename to app/src/main/java/eu/ottop/yamlauncher/utils/UIUtils.kt
index 32e42d5..38da775 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/UIUtils.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/utils/UIUtils.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.utils
import android.content.Context
import android.graphics.BlendMode
@@ -17,6 +17,7 @@ import android.widget.TextClock
import android.widget.TextView
import androidx.core.view.children
import com.google.android.material.textfield.TextInputEditText
+import eu.ottop.yamlauncher.settings.SharedPreferenceManager
class UIUtils(context: Context) {
diff --git a/app/src/main/java/eu/ottop/yamlauncher/WeatherSystem.kt b/app/src/main/java/eu/ottop/yamlauncher/utils/WeatherSystem.kt
similarity index 97%
rename from app/src/main/java/eu/ottop/yamlauncher/WeatherSystem.kt
rename to app/src/main/java/eu/ottop/yamlauncher/utils/WeatherSystem.kt
index 9629435..ac75d77 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/WeatherSystem.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/utils/WeatherSystem.kt
@@ -1,4 +1,4 @@
-package eu.ottop.yamlauncher
+package eu.ottop.yamlauncher.utils
import android.Manifest
import android.content.Context
@@ -7,6 +7,8 @@ import android.location.Location
import android.location.LocationManager
import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat
+import eu.ottop.yamlauncher.MainActivity
+import eu.ottop.yamlauncher.settings.SharedPreferenceManager
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml
index 00c577f..aac9402 100644
--- a/app/src/main/res/layout/activity_settings.xml
+++ b/app/src/main/res/layout/activity_settings.xml
@@ -6,7 +6,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
- tools:context=".SettingsActivity">
+ tools:context=".settings.SettingsActivity">
+ tools:context=".settings.AboutFragment">
+ app:layout_constraintTop_toBottomOf="@+id/iconView" />