diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index f78aab4..c99c4de 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -46,6 +46,6 @@ dependencies {
implementation("androidx.constraintlayout:constraintlayout:2.1.4")
implementation("androidx.navigation:navigation-fragment-ktx:2.7.7")
implementation("androidx.navigation:navigation-ui-ktx:2.7.7")
- implementation("com.google.code.gson:gson:2.10")
+ implementation("com.google.code.gson:gson:2.11.0")
implementation("androidx.recyclerview:recyclerview:1.3.2")
}
\ No newline at end of file
diff --git a/app/src/main/java/eu/ottop/yamlauncher/MainActivity.kt b/app/src/main/java/eu/ottop/yamlauncher/MainActivity.kt
index d587df2..66732f0 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/MainActivity.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/MainActivity.kt
@@ -17,6 +17,7 @@ import android.view.GestureDetector
import android.view.Gravity
import android.view.MotionEvent
import android.view.View
+import android.view.ViewTreeObserver
import android.view.inputmethod.InputMethodManager
import android.widget.EditText
import android.widget.LinearLayout
@@ -115,7 +116,6 @@ class MainActivity : AppCompatActivity(), AppMenuAdapter.OnItemClickListener, Ap
override fun onNewIntent(intent: Intent?) {
backToHome()
super.onNewIntent(intent)
-
}
override fun onStop() {
@@ -131,6 +131,7 @@ class MainActivity : AppCompatActivity(), AppMenuAdapter.OnItemClickListener, Ap
@SuppressLint("NotifyDataSetChanged")
override fun onStart() {
+ setShortcutSize(binding.homeView)
super.onStart()
startTask()
@@ -144,6 +145,7 @@ class MainActivity : AppCompatActivity(), AppMenuAdapter.OnItemClickListener, Ap
}
+
open inner class GestureListener : GestureDetector.SimpleOnGestureListener() {
@RequiresApi(Build.VERSION_CODES.TIRAMISU)
@@ -209,8 +211,6 @@ class MainActivity : AppCompatActivity(), AppMenuAdapter.OnItemClickListener, Ap
setupSearch()
}
-
-
}
private fun handleListItems() {
@@ -225,7 +225,9 @@ class MainActivity : AppCompatActivity(), AppMenuAdapter.OnItemClickListener, Ap
if (savedView?.get(1) != "e") {
selectedSetup(textView, savedView)
}
+
}
+
}
@SuppressLint("ClickableViewAccessibility")
@@ -581,6 +583,48 @@ class MainActivity : AppCompatActivity(), AppMenuAdapter.OnItemClickListener, Ap
setLinearAlignment(binding.homeView)
}
+ private fun setShortcutSize(shortcuts: LinearLayout) {
+ val viewTreeObserver = shortcuts.viewTreeObserver
+ if (viewTreeObserver.isAlive) {
+ viewTreeObserver.addOnGlobalLayoutListener {
+ shortcuts.children.forEach {
+ if (it is TextView) {
+
+ /*
+ 0 = small
+ 1 = medium
+ 2 = large
+ */
+ when (sharedPreferenceManager.getAppSize(this@MainActivity)) {
+ 0 -> {
+ it.setPadding(
+ it.paddingLeft,
+ it.height / 4,
+ it.paddingRight,
+ it.height / 4
+ )
+ }
+
+ 1 -> {
+ it.setPadding(
+ it.paddingLeft,
+ it.height / 5,
+ it.paddingRight,
+ it.height / 5
+ )
+ }
+
+ 2 -> {
+ it.setPadding(it.paddingLeft, 0, it.paddingRight, 0)
+ }
+ }
+
+ }
+ }
+ }
+ }
+ }
+
private fun setLinearAlignment(shortcuts: LinearLayout) {
shortcuts.children.forEach {
diff --git a/app/src/main/java/eu/ottop/yamlauncher/SettingsActivity.kt b/app/src/main/java/eu/ottop/yamlauncher/SettingsActivity.kt
index 1d90b7c..8e8c997 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/SettingsActivity.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/SettingsActivity.kt
@@ -50,5 +50,17 @@ class SettingsActivity : AppCompatActivity() {
override fun onNothingSelected(parent: AdapterView<*>) {
}
}
+
+ binding.appSize.setSelection(sharedPreferenceManager.getAppSize(this@SettingsActivity))
+
+ binding.appSize.onItemSelectedListener = object : AdapterView.OnItemSelectedListener {
+ override fun onItemSelected(parent: AdapterView<*>, view: View?, position: Int, id: Long) {
+ // Get the selected item
+ sharedPreferenceManager.setAppSize(this@SettingsActivity, position)
+ }
+
+ override fun onNothingSelected(parent: AdapterView<*>) {
+ }
+ }
}
}
\ No newline at end of file
diff --git a/app/src/main/java/eu/ottop/yamlauncher/SharedPreferenceManager.kt b/app/src/main/java/eu/ottop/yamlauncher/SharedPreferenceManager.kt
index ae329d6..a8ca78f 100644
--- a/app/src/main/java/eu/ottop/yamlauncher/SharedPreferenceManager.kt
+++ b/app/src/main/java/eu/ottop/yamlauncher/SharedPreferenceManager.kt
@@ -111,4 +111,17 @@ class SharedPreferenceManager {
val key = "app_menu_alignment"
return sharedPreferences.getInt(key, 0)
}
+
+ fun setAppSize(cont: Context, alignment: Int) {
+ val editor = cont.getSharedPreferences("preferences", AppCompatActivity.MODE_PRIVATE).edit()
+ val key = "app_size"
+ editor.putInt(key, alignment)
+ editor.apply()
+ }
+
+ fun getAppSize(cont: Context) : Int {
+ val sharedPreferences = cont.getSharedPreferences("preferences", AppCompatActivity.MODE_PRIVATE)
+ val key = "app_size"
+ return sharedPreferences.getInt(key, 2)
+ }
}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml
index 8294764..4eea3c3 100644
--- a/app/src/main/res/layout/activity_settings.xml
+++ b/app/src/main/res/layout/activity_settings.xml
@@ -33,7 +33,7 @@
android:id="@+id/clock_alignment"
android:layout_width="0dp"
android:layout_height="0dp"
- android:entries="@array/clock_alignment_options"
+ android:entries="@array/h_alignment_options"
android:spinnerMode="dropdown"
app:layout_constraintBottom_toBottomOf="@+id/clock_alignment_label"
app:layout_constraintEnd_toEndOf="parent"
@@ -74,7 +74,7 @@
android:id="@+id/home_app_alignment"
android:layout_width="0dp"
android:layout_height="0dp"
- android:entries="@array/clock_alignment_options"
+ android:entries="@array/h_alignment_options"
android:spinnerMode="dropdown"
app:layout_constraintBottom_toBottomOf="@+id/home_app_alignment_label"
app:layout_constraintEnd_toEndOf="parent"
@@ -114,7 +114,7 @@
android:id="@+id/app_alignment"
android:layout_width="0dp"
android:layout_height="0dp"
- android:entries="@array/clock_alignment_options"
+ android:entries="@array/h_alignment_options"
android:spinnerMode="dropdown"
app:layout_constraintBottom_toBottomOf="@+id/app_alignment_label"
app:layout_constraintEnd_toEndOf="parent"
@@ -130,4 +130,45 @@
android:background="?android:attr/listDivider"
app:layout_constraintTop_toBottomOf="@+id/app_alignment_label" />
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 17216cd..fc71a32 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -49,10 +49,15 @@
Search…
App
App
-
+
- Left
- Center
- Right
+
+ - Small
+ - Medium
+ - Large
+
\ No newline at end of file