Merge branch 'icon' into master

This commit is contained in:
Bnyro 2022-05-23 13:47:35 +02:00 committed by GitHub
commit 8dc7bf88c4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 63 additions and 5 deletions

View File

@ -137,6 +137,21 @@
<data android:pathPrefix="/" /> <data android:pathPrefix="/" />
</intent-filter> </intent-filter>
</activity> </activity>
<activity-alias
android:label="@string/app_name"
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round"
android:name=".OptIconOne"
android:enabled="false"
android:targetActivity=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity-alias>
<service <service
android:name=".DownloadService" android:name=".DownloadService"
android:enabled="true" android:enabled="true"

View File

@ -1,11 +1,7 @@
package com.github.libretube package com.github.libretube
import android.Manifest import android.Manifest
import android.content.ContentResolver import android.content.*
import android.content.Context
import android.content.DialogInterface
import android.content.Intent
import android.content.SharedPreferences
import android.content.pm.PackageManager import android.content.pm.PackageManager
import android.net.Uri import android.net.Uri
import android.os.Build import android.os.Build
@ -253,6 +249,12 @@ class SettingsActivity :
true true
} }
val iconChange = findPreference<ListPreference>("icon_change")
iconChange?.setOnPreferenceChangeListener { _, _ ->
changeIcon(requireContext())
true
}
val changeLanguage = findPreference<ListPreference>("language") val changeLanguage = findPreference<ListPreference>("language")
changeLanguage?.setOnPreferenceChangeListener { _, _ -> changeLanguage?.setOnPreferenceChangeListener { _, _ ->
val refresh = Intent(context, MainActivity::class.java) val refresh = Intent(context, MainActivity::class.java)

View File

@ -1,6 +1,8 @@
package com.github.libretube package com.github.libretube
import android.content.ComponentName
import android.content.Context import android.content.Context
import android.content.pm.PackageManager
import androidx.appcompat.app.AppCompatDelegate import androidx.appcompat.app.AppCompatDelegate
import androidx.preference.PreferenceManager import androidx.preference.PreferenceManager
import java.util.Locale import java.util.Locale
@ -53,3 +55,23 @@ fun updateLanguage(context: Context) {
res.updateConfiguration(conf, dm) res.updateConfiguration(conf, dm)
} }
} }
fun changeIcon(context: Context) {
val sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context)
val newLogoActivityAlias = sharedPreferences.getString("icon_change", "com.github.libretube.MainActivity")
val activityAliases = context?.resources.getStringArray(R.array.iconsValue)
// Disable Old Icon(s)
for (activityAlias in activityAliases) {
context?.packageManager.setComponentEnabledSetting(
ComponentName(context?.packageName, activityAlias),
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
PackageManager.DONT_KILL_APP
)
}
// Enable New Icon
context?.packageManager.setComponentEnabledSetting(
ComponentName(context?.packageName, newLogoActivityAlias!!),
PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
PackageManager.DONT_KILL_APP
)
}

View File

@ -538,4 +538,13 @@
<item>4</item> <item>4</item>
<item>5</item> <item>5</item>
</string-array> </string-array>
<string-array name="icons">
<item>Old</item>
<item>New</item>
</string-array>
<string-array name="iconsValue">
<item>com\.github\.libretube\.MainActivity</item>
<item>com\.github\.libretube\.OptIconOne</item>
</string-array>
</resources> </resources>

View File

@ -110,4 +110,5 @@
<string name="oledTheme">OLED Theme</string> <string name="oledTheme">OLED Theme</string>
<string name="material_you">Material You</string> <string name="material_you">Material You</string>
<string name="sponsorblock_notifications">Notifications</string> <string name="sponsorblock_notifications">Notifications</string>
<string name="app_icon">App Icon</string>
</resources> </resources>

View File

@ -80,6 +80,15 @@
android:icon="@drawable/ic_color" android:icon="@drawable/ic_color"
/> />
<ListPreference
app:title="@string/app_icon"
app:key="icon_change"
app:entries="@array/icons"
app:entryValues="@array/iconsValue"
app:defaultValue="red"
android:icon="@drawable/ic_color"
/>
<androidx.preference.Preference <androidx.preference.Preference
app:title="@string/sponsorblock" app:title="@string/sponsorblock"
app:key="sponsorblock" app:key="sponsorblock"