diff --git a/app/src/main/java/de/jrpie/android/launcher/actions/AppAction.kt b/app/src/main/java/de/jrpie/android/launcher/actions/AppAction.kt
index 7a47c5a..5917c52 100644
--- a/app/src/main/java/de/jrpie/android/launcher/actions/AppAction.kt
+++ b/app/src/main/java/de/jrpie/android/launcher/actions/AppAction.kt
@@ -8,6 +8,7 @@ import android.content.SharedPreferences
import android.content.pm.LauncherApps
import android.graphics.Rect
import android.graphics.drawable.Drawable
+import android.util.Log
import de.jrpie.android.launcher.R
import de.jrpie.android.launcher.apps.AppInfo
import de.jrpie.android.launcher.apps.AppInfo.Companion.INVALID_USER
@@ -17,13 +18,13 @@ import de.jrpie.android.launcher.openAppSettings
class AppAction(private var appInfo: AppInfo) : Action {
-
override fun invoke(context: Context, rect: Rect?): Boolean {
val packageName = appInfo.packageName.toString()
if (appInfo.user != INVALID_USER) {
val launcherApps =
context.getSystemService(Service.LAUNCHER_APPS_SERVICE) as LauncherApps
appInfo.getLauncherActivityInfo(context)?.let { app ->
+ Log.i("Launcher", "Starting $appInfo")
launcherApps.startMainActivity(app.componentName, app.user, rect, null)
return true
}
@@ -70,14 +71,20 @@ class AppAction(private var appInfo: AppInfo) : Action {
}
override fun bindToGesture(editor: SharedPreferences.Editor, id: String) {
- val u = appInfo.user ?: INVALID_USER
+ val u = appInfo.user
+
+ // TODO: replace this by AppInfo#serialize (breaking change to SharedPreferences!)
+ var app = appInfo.packageName.toString()
+ if (appInfo.activityName != null) {
+ app += ";${appInfo.activityName}"
+ }
editor
- .putString("$id.app", appInfo.packageName.toString())
+ .putString("$id.app", app)
.putInt("$id.user", u)
}
override fun writeToIntent(intent: Intent) {
- intent.putExtra("action_id", "${appInfo.packageName};${appInfo.activityName}");
- appInfo.user?.let { intent.putExtra("user", it) }
+ intent.putExtra("action_id", "${appInfo.packageName};${appInfo.activityName}")
+ intent.putExtra("user", appInfo.user)
}
}
\ No newline at end of file
diff --git a/app/src/main/java/de/jrpie/android/launcher/apps/AppInfo.kt b/app/src/main/java/de/jrpie/android/launcher/apps/AppInfo.kt
index 75172e7..6bc51a1 100644
--- a/app/src/main/java/de/jrpie/android/launcher/apps/AppInfo.kt
+++ b/app/src/main/java/de/jrpie/android/launcher/apps/AppInfo.kt
@@ -12,6 +12,8 @@ import de.jrpie.android.launcher.getUserFromId
*/
class AppInfo(val packageName: CharSequence, val activityName: CharSequence?, val user: Int = INVALID_USER) {
+ // TODO: make activityName non nullable (breaking change to SharedPreferences!)
+
fun serialize(): String {
val u = user
var ret = "$packageName;$u"
@@ -38,12 +40,16 @@ class AppInfo(val packageName: CharSequence, val activityName: CharSequence?, va
val launcherApps = context.getSystemService(Service.LAUNCHER_APPS_SERVICE) as LauncherApps
return getUserFromId(user, context)?.let { userHandle ->
launcherApps.getActivityList(packageName.toString(), userHandle).firstOrNull { app ->
- activityName == null || app.name == activityName
+ app.name == activityName || activityName == null || activityName == ""
}
}
}
+ override fun toString(): String {
+ return "AppInfo {package=$packageName, activity=$activityName, user=$user}"
+ }
+
companion object {
const val INVALID_USER = -1
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index 99cd7f0..88a7580 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -140,4 +140,4 @@
Benachrichtigungen
Fehler: Die Funktion \"Benachrichtigungen\" wird von deinem Gerät leider nicht unterstützt.
Sekunden anzeigen
-
+
\ No newline at end of file
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
index 3519921..e5902fe 100644
--- a/app/src/main/res/values-es/strings.xml
+++ b/app/src/main/res/values-es/strings.xml
@@ -65,7 +65,6 @@
Pantalla
Mantener encendida
Pantalla completa
-
Funciones
Deslizar con dos dedos
Auto-lanzar búsquedas
@@ -129,4 +128,4 @@
Iniciar
Configuración
Más opciones
-
+
\ No newline at end of file
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index bf4fc65..9b7fe48 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -140,4 +140,4 @@
Échanger la date et l\'heure
Afficher la date
Utiliser le format de date local
-
+
\ No newline at end of file
diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml
new file mode 100644
index 0000000..a6b3dae
--- /dev/null
+++ b/app/src/main/res/values-tr/strings.xml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index 279e2d2..9bce5b9 100644
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -103,4 +103,4 @@
显示时间
显示日期
翻转日期和时间
-
+
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/25.txt b/fastlane/metadata/android/en-US/changelogs/25.txt
new file mode 100644
index 0000000..aa0eef5
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/25.txt
@@ -0,0 +1,3 @@
+* Favorite apps
+* Option to hide apps
+* Support for apps with multiple main activities
diff --git a/fastlane/metadata/android/tr-TR/full_description.txt b/fastlane/metadata/android/tr-TR/full_description.txt
new file mode 100644
index 0000000..179f9f5
--- /dev/null
+++ b/fastlane/metadata/android/tr-TR/full_description.txt
@@ -0,0 +1,16 @@
+µLauncher kaydırma hareketleri ve tuşları kullanarak diğer uygulamaları başlatabilen bir ana ekrandır.
+Minimal, verimlidir ve dikkat dağıtıcı ögeler içermez.
+
+Ana ekran sadece tarihi, zamanı ve bir arkaplanı gösterir.
+Geri tuşuna basmak veya yukarı kaydırmak (daha sonra değiştirilebilir) her yüklü uygulamanın bulunduğu aranabilen bir listeyi açar.
+
+Bu Finn M Glas. tarafından geliştirilen Launcher'ın bir çatalıdır.
+
+Dikkate değer değişiklikler:
+* Kenar hareketleri: Ekranın kenarında yapılan kaydırmayı merkezde yapılan kaydırmadan ayırt eden bir ayar var.
+* İş profiliyle uyumludur, yani Shelter gibi uygulamalar kullanılabilir.
+* Bu uygulama kendine has bir arkaplan sistemi yerine sisteminkini kullanır.
+* Font Awesome ikonları Material ikonlarıyla değiştirildi.
+* Ana ekrandaki dişli tuşu kaldırıldı, bunun yerine geri tuşuna basmak uygulama listesini açıyor ve uygulama ayarları oradan erişilebiliyor.
+* Arama algoritması uygulama isminin başını öncelikte tutmak için değiştirildi, örneğin "te" aratırken "termux" "notes" uygulamasından önce çıkıyor.
+* Arama barı ekranın alt kısmına taşındı.
diff --git a/fastlane/metadata/android/tr-TR/short_description.txt b/fastlane/metadata/android/tr-TR/short_description.txt
new file mode 100644
index 0000000..2777203
--- /dev/null
+++ b/fastlane/metadata/android/tr-TR/short_description.txt
@@ -0,0 +1 @@
+Android için dikkat dağıtmayan minimal ana ekran.