diff --git a/build.gradle b/build.gradle index 8974baa..0af0f61 100644 --- a/build.gradle +++ b/build.gradle @@ -13,11 +13,11 @@ buildscript { apply plugin: 'com.android.application' android { - namespace 'nya.kitsunyan.foxydroid' + namespace 'com.michatec.store' compileSdk 36 defaultConfig { - applicationId 'nya.kitsunyan.foxydroid' + applicationId 'com.michatec.store' minSdk 30 targetSdk 36 versionCode 15 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index d706aba..f50f69e 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.1.0-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.0-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/src/main/AndroidManifest.xml b/src/main/AndroidManifest.xml index 190ee09..c337633 100644 --- a/src/main/AndroidManifest.xml +++ b/src/main/AndroidManifest.xml @@ -4,18 +4,18 @@ - - + + - - + + { sealed class Request { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/database/Database.kt b/src/main/kotlin/com/michatec/store/database/Database.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/database/Database.kt rename to src/main/kotlin/com/michatec/store/database/Database.kt index 268a8ab..8ca5053 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/database/Database.kt +++ b/src/main/kotlin/com/michatec/store/database/Database.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.database +package com.michatec.store.database import android.content.ContentValues import android.content.Context @@ -9,12 +9,12 @@ import android.os.CancellationSignal import com.fasterxml.jackson.core.JsonGenerator import com.fasterxml.jackson.core.JsonParser import io.reactivex.rxjava3.core.Observable -import nya.kitsunyan.foxydroid.entity.InstalledItem -import nya.kitsunyan.foxydroid.entity.Product -import nya.kitsunyan.foxydroid.entity.ProductItem -import nya.kitsunyan.foxydroid.entity.Repository -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.json.* +import com.michatec.store.entity.InstalledItem +import com.michatec.store.entity.Product +import com.michatec.store.entity.ProductItem +import com.michatec.store.entity.Repository +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.json.* import java.io.ByteArrayOutputStream import androidx.core.database.sqlite.transaction @@ -155,7 +155,7 @@ object Database { } } - private class Helper(context: Context): SQLiteOpenHelper(context, "foxydroid", null, 1) { + private class Helper(context: Context): SQLiteOpenHelper(context, "store", null, 1) { var created = false private set var updated = false diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/database/ObservableCursor.kt b/src/main/kotlin/com/michatec/store/database/ObservableCursor.kt similarity index 95% rename from src/main/kotlin/nya/kitsunyan/foxydroid/database/ObservableCursor.kt rename to src/main/kotlin/com/michatec/store/database/ObservableCursor.kt index 79a630f..4aa2808 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/database/ObservableCursor.kt +++ b/src/main/kotlin/com/michatec/store/database/ObservableCursor.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.database +package com.michatec.store.database import android.database.ContentObserver import android.database.Cursor diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/database/QueryBuilder.kt b/src/main/kotlin/com/michatec/store/database/QueryBuilder.kt similarity index 86% rename from src/main/kotlin/nya/kitsunyan/foxydroid/database/QueryBuilder.kt rename to src/main/kotlin/com/michatec/store/database/QueryBuilder.kt index 584fd45..7636da1 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/database/QueryBuilder.kt +++ b/src/main/kotlin/com/michatec/store/database/QueryBuilder.kt @@ -1,11 +1,11 @@ -package nya.kitsunyan.foxydroid.database +package com.michatec.store.database import android.database.Cursor import android.database.sqlite.SQLiteDatabase import android.os.CancellationSignal -import nya.kitsunyan.foxydroid.BuildConfig -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.text.* +import com.michatec.store.BuildConfig +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.text.* class QueryBuilder { companion object { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/database/QueryLoader.kt b/src/main/kotlin/com/michatec/store/database/QueryLoader.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/database/QueryLoader.kt rename to src/main/kotlin/com/michatec/store/database/QueryLoader.kt index ce6c7e3..c31915b 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/database/QueryLoader.kt +++ b/src/main/kotlin/com/michatec/store/database/QueryLoader.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.database +package com.michatec.store.database import android.content.Context import android.database.Cursor diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/entity/InstalledItem.kt b/src/main/kotlin/com/michatec/store/entity/InstalledItem.kt similarity index 74% rename from src/main/kotlin/nya/kitsunyan/foxydroid/entity/InstalledItem.kt rename to src/main/kotlin/com/michatec/store/entity/InstalledItem.kt index a050302..7e5d269 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/entity/InstalledItem.kt +++ b/src/main/kotlin/com/michatec/store/entity/InstalledItem.kt @@ -1,3 +1,3 @@ -package nya.kitsunyan.foxydroid.entity +package com.michatec.store.entity class InstalledItem(val packageName: String, val version: String, val versionCode: Long, val signature: String) diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/entity/Product.kt b/src/main/kotlin/com/michatec/store/entity/Product.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/entity/Product.kt rename to src/main/kotlin/com/michatec/store/entity/Product.kt index e36ff6a..c5d21e7 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/entity/Product.kt +++ b/src/main/kotlin/com/michatec/store/entity/Product.kt @@ -1,10 +1,10 @@ -package nya.kitsunyan.foxydroid.entity +package com.michatec.store.entity import com.fasterxml.jackson.core.JsonGenerator import com.fasterxml.jackson.core.JsonParser import com.fasterxml.jackson.core.JsonToken -import nya.kitsunyan.foxydroid.utility.extension.json.* -import nya.kitsunyan.foxydroid.utility.extension.text.* +import com.michatec.store.utility.extension.json.* +import com.michatec.store.utility.extension.text.* data class Product(val repositoryId: Long, val packageName: String, val name: String, val summary: String, val description: String, val whatsNew: String, val icon: String, val metadataIcon: String, val author: Author, diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/entity/ProductItem.kt b/src/main/kotlin/com/michatec/store/entity/ProductItem.kt similarity index 93% rename from src/main/kotlin/nya/kitsunyan/foxydroid/entity/ProductItem.kt rename to src/main/kotlin/com/michatec/store/entity/ProductItem.kt index 3f7c2c1..0546999 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/entity/ProductItem.kt +++ b/src/main/kotlin/com/michatec/store/entity/ProductItem.kt @@ -1,11 +1,11 @@ -package nya.kitsunyan.foxydroid.entity +package com.michatec.store.entity import android.os.Parcel import com.fasterxml.jackson.core.JsonGenerator import com.fasterxml.jackson.core.JsonParser -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.utility.KParcelable -import nya.kitsunyan.foxydroid.utility.extension.json.* +import com.michatec.store.R +import com.michatec.store.utility.KParcelable +import com.michatec.store.utility.extension.json.* data class ProductItem(val repositoryId: Long, val packageName: String, val name: String, val summary: String, val icon: String, val metadataIcon: String, val version: String, val installedVersion: String, diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/entity/ProductPreference.kt b/src/main/kotlin/com/michatec/store/entity/ProductPreference.kt similarity index 90% rename from src/main/kotlin/nya/kitsunyan/foxydroid/entity/ProductPreference.kt rename to src/main/kotlin/com/michatec/store/entity/ProductPreference.kt index fc9896d..3f4f9b8 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/entity/ProductPreference.kt +++ b/src/main/kotlin/com/michatec/store/entity/ProductPreference.kt @@ -1,8 +1,8 @@ -package nya.kitsunyan.foxydroid.entity +package com.michatec.store.entity import com.fasterxml.jackson.core.JsonGenerator import com.fasterxml.jackson.core.JsonParser -import nya.kitsunyan.foxydroid.utility.extension.json.* +import com.michatec.store.utility.extension.json.* data class ProductPreference(val ignoreUpdates: Boolean, val ignoreVersionCode: Long) { fun shouldIgnoreUpdate(versionCode: Long): Boolean { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/entity/Release.kt b/src/main/kotlin/com/michatec/store/entity/Release.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/entity/Release.kt rename to src/main/kotlin/com/michatec/store/entity/Release.kt index 1c85f49..38b62f9 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/entity/Release.kt +++ b/src/main/kotlin/com/michatec/store/entity/Release.kt @@ -1,9 +1,9 @@ -package nya.kitsunyan.foxydroid.entity +package com.michatec.store.entity import com.fasterxml.jackson.core.JsonGenerator import com.fasterxml.jackson.core.JsonParser import com.fasterxml.jackson.core.JsonToken -import nya.kitsunyan.foxydroid.utility.extension.json.* +import com.michatec.store.utility.extension.json.* import androidx.core.net.toUri data class Release(val selected: Boolean, val version: String, val versionCode: Long, diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/entity/Repository.kt b/src/main/kotlin/com/michatec/store/entity/Repository.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/entity/Repository.kt rename to src/main/kotlin/com/michatec/store/entity/Repository.kt index 9292a80..30e03d0 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/entity/Repository.kt +++ b/src/main/kotlin/com/michatec/store/entity/Repository.kt @@ -1,8 +1,8 @@ -package nya.kitsunyan.foxydroid.entity +package com.michatec.store.entity import com.fasterxml.jackson.core.JsonGenerator import com.fasterxml.jackson.core.JsonParser -import nya.kitsunyan.foxydroid.utility.extension.json.* +import com.michatec.store.utility.extension.json.* data class Repository( val id: Long, val address: String, val mirrors: List, diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/graphics/DrawableWrapper.kt b/src/main/kotlin/com/michatec/store/graphics/DrawableWrapper.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/graphics/DrawableWrapper.kt rename to src/main/kotlin/com/michatec/store/graphics/DrawableWrapper.kt index f1f23b5..9a7a91f 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/graphics/DrawableWrapper.kt +++ b/src/main/kotlin/com/michatec/store/graphics/DrawableWrapper.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.graphics +package com.michatec.store.graphics import android.content.res.ColorStateList import android.graphics.Canvas diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/graphics/PaddingDrawable.kt b/src/main/kotlin/com/michatec/store/graphics/PaddingDrawable.kt similarity index 94% rename from src/main/kotlin/nya/kitsunyan/foxydroid/graphics/PaddingDrawable.kt rename to src/main/kotlin/com/michatec/store/graphics/PaddingDrawable.kt index 5f6db03..1ad2809 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/graphics/PaddingDrawable.kt +++ b/src/main/kotlin/com/michatec/store/graphics/PaddingDrawable.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.graphics +package com.michatec.store.graphics import android.graphics.Rect import android.graphics.drawable.Drawable diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/index/IndexHandler.kt b/src/main/kotlin/com/michatec/store/index/IndexHandler.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/index/IndexHandler.kt rename to src/main/kotlin/com/michatec/store/index/IndexHandler.kt index e269a77..87248a7 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/index/IndexHandler.kt +++ b/src/main/kotlin/com/michatec/store/index/IndexHandler.kt @@ -1,8 +1,8 @@ -package nya.kitsunyan.foxydroid.index +package com.michatec.store.index -import nya.kitsunyan.foxydroid.entity.Product -import nya.kitsunyan.foxydroid.entity.Release -import nya.kitsunyan.foxydroid.utility.extension.android.* +import com.michatec.store.entity.Product +import com.michatec.store.entity.Release +import com.michatec.store.utility.extension.android.* import org.xml.sax.Attributes import org.xml.sax.helpers.DefaultHandler import java.text.SimpleDateFormat diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/index/IndexMerger.kt b/src/main/kotlin/com/michatec/store/index/IndexMerger.kt similarity index 92% rename from src/main/kotlin/nya/kitsunyan/foxydroid/index/IndexMerger.kt rename to src/main/kotlin/com/michatec/store/index/IndexMerger.kt index 2502c52..c5e6c5e 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/index/IndexMerger.kt +++ b/src/main/kotlin/com/michatec/store/index/IndexMerger.kt @@ -1,12 +1,12 @@ -package nya.kitsunyan.foxydroid.index +package com.michatec.store.index import android.content.ContentValues import android.database.sqlite.SQLiteDatabase import com.fasterxml.jackson.core.JsonToken -import nya.kitsunyan.foxydroid.entity.Product -import nya.kitsunyan.foxydroid.entity.Release -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.json.* +import com.michatec.store.entity.Product +import com.michatec.store.entity.Release +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.json.* import java.io.ByteArrayOutputStream import java.io.Closeable import java.io.File diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/index/IndexV1Parser.kt b/src/main/kotlin/com/michatec/store/index/IndexV1Parser.kt similarity index 97% rename from src/main/kotlin/nya/kitsunyan/foxydroid/index/IndexV1Parser.kt rename to src/main/kotlin/com/michatec/store/index/IndexV1Parser.kt index c5441ff..c316688 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/index/IndexV1Parser.kt +++ b/src/main/kotlin/com/michatec/store/index/IndexV1Parser.kt @@ -1,12 +1,12 @@ -package nya.kitsunyan.foxydroid.index +package com.michatec.store.index import com.fasterxml.jackson.core.JsonParser import com.fasterxml.jackson.core.JsonToken -import nya.kitsunyan.foxydroid.entity.Product -import nya.kitsunyan.foxydroid.entity.Release -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.json.* -import nya.kitsunyan.foxydroid.utility.extension.text.* +import com.michatec.store.entity.Product +import com.michatec.store.entity.Release +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.json.* +import com.michatec.store.utility.extension.text.* import java.io.InputStream object IndexV1Parser { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/index/RepositoryUpdater.kt b/src/main/kotlin/com/michatec/store/index/RepositoryUpdater.kt similarity index 96% rename from src/main/kotlin/nya/kitsunyan/foxydroid/index/RepositoryUpdater.kt rename to src/main/kotlin/com/michatec/store/index/RepositoryUpdater.kt index 1545470..bbfa512 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/index/RepositoryUpdater.kt +++ b/src/main/kotlin/com/michatec/store/index/RepositoryUpdater.kt @@ -1,21 +1,21 @@ -package nya.kitsunyan.foxydroid.index +package com.michatec.store.index import android.content.Context import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.core.Single import io.reactivex.rxjava3.disposables.Disposable import io.reactivex.rxjava3.schedulers.Schedulers -import nya.kitsunyan.foxydroid.content.Cache -import nya.kitsunyan.foxydroid.database.Database -import nya.kitsunyan.foxydroid.entity.Product -import nya.kitsunyan.foxydroid.entity.Release -import nya.kitsunyan.foxydroid.entity.Repository -import nya.kitsunyan.foxydroid.network.Downloader -import nya.kitsunyan.foxydroid.utility.ProgressInputStream -import nya.kitsunyan.foxydroid.utility.RxUtils -import nya.kitsunyan.foxydroid.utility.Utils -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.text.* +import com.michatec.store.content.Cache +import com.michatec.store.database.Database +import com.michatec.store.entity.Product +import com.michatec.store.entity.Release +import com.michatec.store.entity.Repository +import com.michatec.store.network.Downloader +import com.michatec.store.utility.ProgressInputStream +import com.michatec.store.utility.RxUtils +import com.michatec.store.utility.Utils +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.text.* import org.xml.sax.InputSource import java.io.File import java.security.cert.X509Certificate diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/network/Downloader.kt b/src/main/kotlin/com/michatec/store/network/Downloader.kt similarity index 96% rename from src/main/kotlin/nya/kitsunyan/foxydroid/network/Downloader.kt rename to src/main/kotlin/com/michatec/store/network/Downloader.kt index 97c4d70..d81b9ac 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/network/Downloader.kt +++ b/src/main/kotlin/com/michatec/store/network/Downloader.kt @@ -1,9 +1,9 @@ -package nya.kitsunyan.foxydroid.network +package com.michatec.store.network import io.reactivex.rxjava3.core.Single import io.reactivex.rxjava3.schedulers.Schedulers -import nya.kitsunyan.foxydroid.utility.ProgressInputStream -import nya.kitsunyan.foxydroid.utility.RxUtils +import com.michatec.store.utility.ProgressInputStream +import com.michatec.store.utility.RxUtils import okhttp3.Cache import okhttp3.Call import okhttp3.OkHttpClient diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/network/PicassoDownloader.kt b/src/main/kotlin/com/michatec/store/network/PicassoDownloader.kt similarity index 96% rename from src/main/kotlin/nya/kitsunyan/foxydroid/network/PicassoDownloader.kt rename to src/main/kotlin/com/michatec/store/network/PicassoDownloader.kt index 9bfc413..b375f2f 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/network/PicassoDownloader.kt +++ b/src/main/kotlin/com/michatec/store/network/PicassoDownloader.kt @@ -1,11 +1,11 @@ -package nya.kitsunyan.foxydroid.network +package com.michatec.store.network import android.content.Context import android.net.Uri import android.view.View -import nya.kitsunyan.foxydroid.entity.Product -import nya.kitsunyan.foxydroid.entity.Repository -import nya.kitsunyan.foxydroid.utility.extension.text.* +import com.michatec.store.entity.Product +import com.michatec.store.entity.Repository +import com.michatec.store.utility.extension.text.* import okhttp3.Cache import okhttp3.Call import okhttp3.HttpUrl.Companion.toHttpUrl diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/EditRepositoryFragment.kt b/src/main/kotlin/com/michatec/store/screen/EditRepositoryFragment.kt similarity index 97% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/EditRepositoryFragment.kt rename to src/main/kotlin/com/michatec/store/screen/EditRepositoryFragment.kt index 3137d0f..8b30cdd 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/EditRepositoryFragment.kt +++ b/src/main/kotlin/com/michatec/store/screen/EditRepositoryFragment.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.app.AlertDialog import android.content.ClipboardManager @@ -24,16 +24,16 @@ import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.core.Single import io.reactivex.rxjava3.disposables.Disposable import io.reactivex.rxjava3.schedulers.Schedulers -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.database.Database -import nya.kitsunyan.foxydroid.entity.Repository -import nya.kitsunyan.foxydroid.network.Downloader -import nya.kitsunyan.foxydroid.service.Connection -import nya.kitsunyan.foxydroid.service.SyncService -import nya.kitsunyan.foxydroid.utility.RxUtils -import nya.kitsunyan.foxydroid.utility.Utils -import nya.kitsunyan.foxydroid.utility.extension.resources.* -import nya.kitsunyan.foxydroid.utility.extension.text.* +import com.michatec.store.R +import com.michatec.store.database.Database +import com.michatec.store.entity.Repository +import com.michatec.store.network.Downloader +import com.michatec.store.service.Connection +import com.michatec.store.service.SyncService +import com.michatec.store.utility.RxUtils +import com.michatec.store.utility.Utils +import com.michatec.store.utility.extension.resources.* +import com.michatec.store.utility.extension.text.* import okhttp3.HttpUrl.Companion.toHttpUrl import okhttp3.Request import java.net.URI diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/MessageDialog.kt b/src/main/kotlin/com/michatec/store/screen/MessageDialog.kt similarity index 96% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/MessageDialog.kt rename to src/main/kotlin/com/michatec/store/screen/MessageDialog.kt index c482ab0..f46ccdf 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/MessageDialog.kt +++ b/src/main/kotlin/com/michatec/store/screen/MessageDialog.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.app.AlertDialog import android.content.ActivityNotFoundException @@ -9,12 +9,12 @@ import android.os.Parcel import androidx.core.os.BundleCompat import androidx.fragment.app.DialogFragment import androidx.fragment.app.FragmentManager -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.entity.Release -import nya.kitsunyan.foxydroid.utility.KParcelable -import nya.kitsunyan.foxydroid.utility.PackageItemResolver -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.text.* +import com.michatec.store.R +import com.michatec.store.entity.Release +import com.michatec.store.utility.KParcelable +import com.michatec.store.utility.PackageItemResolver +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.text.* import androidx.core.net.toUri class MessageDialog(): DialogFragment() { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/PreferencesFragment.kt b/src/main/kotlin/com/michatec/store/screen/PreferencesFragment.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/PreferencesFragment.kt rename to src/main/kotlin/com/michatec/store/screen/PreferencesFragment.kt index 01a0693..9908c1e 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/PreferencesFragment.kt +++ b/src/main/kotlin/com/michatec/store/screen/PreferencesFragment.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.app.AlertDialog import android.app.Dialog @@ -20,9 +20,9 @@ import android.widget.Toolbar import androidx.fragment.app.DialogFragment import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.disposables.Disposable -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.content.Preferences -import nya.kitsunyan.foxydroid.utility.extension.resources.* +import com.michatec.store.R +import com.michatec.store.content.Preferences +import com.michatec.store.utility.extension.resources.* import androidx.core.view.isNotEmpty class PreferencesFragment: ScreenFragment() { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ProductAdapter.kt b/src/main/kotlin/com/michatec/store/screen/ProductAdapter.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/ProductAdapter.kt rename to src/main/kotlin/com/michatec/store/screen/ProductAdapter.kt index 6a959ac..3986e9e 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ProductAdapter.kt +++ b/src/main/kotlin/com/michatec/store/screen/ProductAdapter.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.annotation.SuppressLint import android.content.ClipData @@ -40,25 +40,25 @@ import androidx.core.text.HtmlCompat import androidx.core.text.util.LinkifyCompat import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.RecyclerView -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.content.Preferences -import nya.kitsunyan.foxydroid.content.ProductPreferences -import nya.kitsunyan.foxydroid.entity.InstalledItem -import nya.kitsunyan.foxydroid.entity.Product -import nya.kitsunyan.foxydroid.entity.ProductPreference -import nya.kitsunyan.foxydroid.entity.Release -import nya.kitsunyan.foxydroid.entity.Repository -import nya.kitsunyan.foxydroid.graphics.PaddingDrawable -import nya.kitsunyan.foxydroid.network.PicassoDownloader -import nya.kitsunyan.foxydroid.utility.KParcelable -import nya.kitsunyan.foxydroid.utility.PackageItemResolver -import nya.kitsunyan.foxydroid.utility.Utils -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.resources.* -import nya.kitsunyan.foxydroid.utility.extension.text.* -import nya.kitsunyan.foxydroid.widget.ClickableMovementMethod -import nya.kitsunyan.foxydroid.widget.DividerItemDecoration -import nya.kitsunyan.foxydroid.widget.StableRecyclerAdapter +import com.michatec.store.R +import com.michatec.store.content.Preferences +import com.michatec.store.content.ProductPreferences +import com.michatec.store.entity.InstalledItem +import com.michatec.store.entity.Product +import com.michatec.store.entity.ProductPreference +import com.michatec.store.entity.Release +import com.michatec.store.entity.Repository +import com.michatec.store.graphics.PaddingDrawable +import com.michatec.store.network.PicassoDownloader +import com.michatec.store.utility.KParcelable +import com.michatec.store.utility.PackageItemResolver +import com.michatec.store.utility.Utils +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.resources.* +import com.michatec.store.utility.extension.text.* +import com.michatec.store.widget.ClickableMovementMethod +import com.michatec.store.widget.DividerItemDecoration +import com.michatec.store.widget.StableRecyclerAdapter import java.lang.ref.WeakReference import java.util.Locale import kotlin.math.* @@ -892,7 +892,7 @@ class ProductAdapter(private val callbacks: Callbacks, private val columns: Int) } ProductPreferences[switchItem.packageName] = productPreference items.asSequence().mapIndexedNotNull { index, item -> if (item is Item.HeaderItem || - item is Item.SectionItem) index else null }.forEach { notifyItemChanged(it, Payload.REFRESH) } + item is Item.SectionItem || item is Item.SwitchItem) index else null }.forEach { notifyItemChanged(it, Payload.REFRESH) } callbacks.onPreferenceChanged(productPreference) } } diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ProductFragment.kt b/src/main/kotlin/com/michatec/store/screen/ProductFragment.kt similarity index 95% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/ProductFragment.kt rename to src/main/kotlin/com/michatec/store/screen/ProductFragment.kt index 7917ebb..e2526ce 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ProductFragment.kt +++ b/src/main/kotlin/com/michatec/store/screen/ProductFragment.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.app.AlertDialog import android.content.ActivityNotFoundException @@ -24,20 +24,20 @@ import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.disposables.Disposable import io.reactivex.rxjava3.schedulers.Schedulers -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.content.ProductPreferences -import nya.kitsunyan.foxydroid.database.Database -import nya.kitsunyan.foxydroid.entity.InstalledItem -import nya.kitsunyan.foxydroid.entity.Product -import nya.kitsunyan.foxydroid.entity.ProductPreference -import nya.kitsunyan.foxydroid.entity.Release -import nya.kitsunyan.foxydroid.entity.Repository -import nya.kitsunyan.foxydroid.service.Connection -import nya.kitsunyan.foxydroid.service.DownloadService -import nya.kitsunyan.foxydroid.utility.RxUtils -import nya.kitsunyan.foxydroid.utility.Utils -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.widget.DividerItemDecoration +import com.michatec.store.R +import com.michatec.store.content.ProductPreferences +import com.michatec.store.database.Database +import com.michatec.store.entity.InstalledItem +import com.michatec.store.entity.Product +import com.michatec.store.entity.ProductPreference +import com.michatec.store.entity.Release +import com.michatec.store.entity.Repository +import com.michatec.store.service.Connection +import com.michatec.store.service.DownloadService +import com.michatec.store.utility.RxUtils +import com.michatec.store.utility.Utils +import com.michatec.store.utility.extension.android.* +import com.michatec.store.widget.DividerItemDecoration import androidx.core.net.toUri class ProductFragment(): ScreenFragment(), ProductAdapter.Callbacks { @@ -271,8 +271,8 @@ class ProductFragment(): ScreenFragment(), ProductAdapter.Callbacks { val toolbar = toolbar if (toolbar != null) { - for (action in sequenceOf(Action.INSTALL, Action.UPDATE, Action.UNINSTALL)) { - toolbar.menu.findItem(action.id).isEnabled = !downloading + for (action in sequenceOf(Action.INSTALL, Action.UPDATE, Action.UNINSTALL)) { + toolbar.menu.findItem(action.id).isEnabled = !downloading } } this.actions = Pair(actions, primaryAction) @@ -349,7 +349,6 @@ class ProductFragment(): ScreenFragment(), ProductAdapter.Callbacks { if (productRepository != null && release != null && binder != null) { binder.enqueue(packageName, productRepository.first.name, productRepository.second, release) } - Unit } ProductAdapter.Action.LAUNCH -> { val launcherActivities = installed?.launcherActivities.orEmpty() @@ -358,7 +357,6 @@ class ProductFragment(): ScreenFragment(), ProductAdapter.Callbacks { } else { launcherActivities.firstOrNull()?.let { startLauncherActivity(it.first) } } - Unit } ProductAdapter.Action.DETAILS -> { startActivity(Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS) @@ -373,9 +371,8 @@ class ProductFragment(): ScreenFragment(), ProductAdapter.Callbacks { if (downloading && binder != null) { binder.cancel(packageName) } - Unit } - }::class + } } private fun startLauncherActivity(name: String) { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ProductsAdapter.kt b/src/main/kotlin/com/michatec/store/screen/ProductsAdapter.kt similarity index 93% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/ProductsAdapter.kt rename to src/main/kotlin/com/michatec/store/screen/ProductsAdapter.kt index 8c4f7d7..8b2616e 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ProductsAdapter.kt +++ b/src/main/kotlin/com/michatec/store/screen/ProductsAdapter.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.annotation.SuppressLint import android.content.Context @@ -13,16 +13,16 @@ import android.widget.ImageView import android.widget.ProgressBar import android.widget.TextView import androidx.recyclerview.widget.RecyclerView -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.database.Database -import nya.kitsunyan.foxydroid.entity.ProductItem -import nya.kitsunyan.foxydroid.entity.Repository -import nya.kitsunyan.foxydroid.network.PicassoDownloader -import nya.kitsunyan.foxydroid.utility.Utils -import nya.kitsunyan.foxydroid.utility.extension.resources.* -import nya.kitsunyan.foxydroid.utility.extension.text.* -import nya.kitsunyan.foxydroid.widget.CursorRecyclerAdapter -import nya.kitsunyan.foxydroid.widget.DividerItemDecoration +import com.michatec.store.R +import com.michatec.store.database.Database +import com.michatec.store.entity.ProductItem +import com.michatec.store.entity.Repository +import com.michatec.store.network.PicassoDownloader +import com.michatec.store.utility.Utils +import com.michatec.store.utility.extension.resources.* +import com.michatec.store.utility.extension.text.* +import com.michatec.store.widget.CursorRecyclerAdapter +import com.michatec.store.widget.DividerItemDecoration class ProductsAdapter(private val onClick: (ProductItem) -> Unit): CursorRecyclerAdapter() { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ProductsFragment.kt b/src/main/kotlin/com/michatec/store/screen/ProductsFragment.kt similarity index 94% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/ProductsFragment.kt rename to src/main/kotlin/com/michatec/store/screen/ProductsFragment.kt index 04579c4..42ff46a 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ProductsFragment.kt +++ b/src/main/kotlin/com/michatec/store/screen/ProductsFragment.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.database.Cursor import android.os.Bundle @@ -13,13 +13,13 @@ import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.disposables.Disposable import io.reactivex.rxjava3.schedulers.Schedulers -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.database.CursorOwner -import nya.kitsunyan.foxydroid.database.Database -import nya.kitsunyan.foxydroid.entity.ProductItem -import nya.kitsunyan.foxydroid.utility.RxUtils -import nya.kitsunyan.foxydroid.widget.DividerItemDecoration -import nya.kitsunyan.foxydroid.widget.RecyclerFastScroller +import com.michatec.store.R +import com.michatec.store.database.CursorOwner +import com.michatec.store.database.Database +import com.michatec.store.entity.ProductItem +import com.michatec.store.utility.RxUtils +import com.michatec.store.widget.DividerItemDecoration +import com.michatec.store.widget.RecyclerFastScroller class ProductsFragment(): ScreenFragment(), CursorOwner.Callback { companion object { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/RepositoriesAdapter.kt b/src/main/kotlin/com/michatec/store/screen/RepositoriesAdapter.kt similarity index 88% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/RepositoriesAdapter.kt rename to src/main/kotlin/com/michatec/store/screen/RepositoriesAdapter.kt index b49720b..09e4413 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/RepositoriesAdapter.kt +++ b/src/main/kotlin/com/michatec/store/screen/RepositoriesAdapter.kt @@ -1,15 +1,15 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.view.View import android.view.ViewGroup import android.widget.Switch import android.widget.TextView import androidx.recyclerview.widget.RecyclerView -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.database.Database -import nya.kitsunyan.foxydroid.entity.Repository -import nya.kitsunyan.foxydroid.utility.extension.resources.* -import nya.kitsunyan.foxydroid.widget.CursorRecyclerAdapter +import com.michatec.store.R +import com.michatec.store.database.Database +import com.michatec.store.entity.Repository +import com.michatec.store.utility.extension.resources.* +import com.michatec.store.widget.CursorRecyclerAdapter class RepositoriesAdapter(private val onClick: (Repository) -> Unit, private val onSwitch: (repository: Repository, isEnabled: Boolean) -> Boolean): diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/RepositoriesFragment.kt b/src/main/kotlin/com/michatec/store/screen/RepositoriesFragment.kt similarity index 90% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/RepositoriesFragment.kt rename to src/main/kotlin/com/michatec/store/screen/RepositoriesFragment.kt index 88db686..129f4ba 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/RepositoriesFragment.kt +++ b/src/main/kotlin/com/michatec/store/screen/RepositoriesFragment.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.database.Cursor import android.os.Bundle @@ -10,11 +10,11 @@ import android.widget.FrameLayout import android.widget.Toolbar import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.database.CursorOwner -import nya.kitsunyan.foxydroid.service.Connection -import nya.kitsunyan.foxydroid.service.SyncService -import nya.kitsunyan.foxydroid.utility.Utils +import com.michatec.store.R +import com.michatec.store.database.CursorOwner +import com.michatec.store.service.Connection +import com.michatec.store.service.SyncService +import com.michatec.store.utility.Utils class RepositoriesFragment: ScreenFragment(), CursorOwner.Callback { private var recyclerView: RecyclerView? = null diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/RepositoryFragment.kt b/src/main/kotlin/com/michatec/store/screen/RepositoryFragment.kt similarity index 94% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/RepositoryFragment.kt rename to src/main/kotlin/com/michatec/store/screen/RepositoryFragment.kt index 33122a5..94de861 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/RepositoryFragment.kt +++ b/src/main/kotlin/com/michatec/store/screen/RepositoryFragment.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.os.Bundle import android.text.SpannableStringBuilder @@ -17,12 +17,12 @@ import android.widget.Toolbar import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.disposables.Disposable -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.database.Database -import nya.kitsunyan.foxydroid.service.Connection -import nya.kitsunyan.foxydroid.service.SyncService -import nya.kitsunyan.foxydroid.utility.Utils -import nya.kitsunyan.foxydroid.utility.extension.resources.* +import com.michatec.store.R +import com.michatec.store.database.Database +import com.michatec.store.service.Connection +import com.michatec.store.service.SyncService +import com.michatec.store.utility.Utils +import com.michatec.store.utility.extension.resources.* import java.util.Date import java.util.Locale diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ScreenActivity.kt b/src/main/kotlin/com/michatec/store/screen/ScreenActivity.kt similarity index 94% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/ScreenActivity.kt rename to src/main/kotlin/com/michatec/store/screen/ScreenActivity.kt index 2bc9930..a4b9f9d 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ScreenActivity.kt +++ b/src/main/kotlin/com/michatec/store/screen/ScreenActivity.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.content.Context import android.content.Intent @@ -14,15 +14,15 @@ import androidx.core.os.BundleCompat import androidx.core.view.WindowCompat import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentActivity -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.content.Cache -import nya.kitsunyan.foxydroid.content.Preferences -import nya.kitsunyan.foxydroid.database.CursorOwner -import nya.kitsunyan.foxydroid.utility.KParcelable -import nya.kitsunyan.foxydroid.utility.Utils -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.resources.* -import nya.kitsunyan.foxydroid.utility.extension.text.* +import com.michatec.store.R +import com.michatec.store.content.Cache +import com.michatec.store.content.Preferences +import com.michatec.store.database.CursorOwner +import com.michatec.store.utility.KParcelable +import com.michatec.store.utility.Utils +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.resources.* +import com.michatec.store.utility.extension.text.* abstract class ScreenActivity: FragmentActivity() { companion object { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ScreenFragment.kt b/src/main/kotlin/com/michatec/store/screen/ScreenFragment.kt similarity index 84% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/ScreenFragment.kt rename to src/main/kotlin/com/michatec/store/screen/ScreenFragment.kt index 33551d0..4a0f11f 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ScreenFragment.kt +++ b/src/main/kotlin/com/michatec/store/screen/ScreenFragment.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import androidx.fragment.app.Fragment diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ScreenshotsFragment.kt b/src/main/kotlin/com/michatec/store/screen/ScreenshotsFragment.kt similarity index 94% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/ScreenshotsFragment.kt rename to src/main/kotlin/com/michatec/store/screen/ScreenshotsFragment.kt index e7247c2..5727d5f 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/ScreenshotsFragment.kt +++ b/src/main/kotlin/com/michatec/store/screen/ScreenshotsFragment.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.app.Dialog import android.content.Context @@ -22,16 +22,16 @@ import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.disposables.Disposable import io.reactivex.rxjava3.schedulers.Schedulers -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.database.Database -import nya.kitsunyan.foxydroid.entity.Product -import nya.kitsunyan.foxydroid.entity.Repository -import nya.kitsunyan.foxydroid.graphics.PaddingDrawable -import nya.kitsunyan.foxydroid.network.PicassoDownloader -import nya.kitsunyan.foxydroid.utility.RxUtils -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.resources.* -import nya.kitsunyan.foxydroid.widget.StableRecyclerAdapter +import com.michatec.store.R +import com.michatec.store.database.Database +import com.michatec.store.entity.Product +import com.michatec.store.entity.Repository +import com.michatec.store.graphics.PaddingDrawable +import com.michatec.store.network.PicassoDownloader +import com.michatec.store.utility.RxUtils +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.resources.* +import com.michatec.store.widget.StableRecyclerAdapter class ScreenshotsFragment(): DialogFragment() { companion object { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/TabsFragment.kt b/src/main/kotlin/com/michatec/store/screen/TabsFragment.kt similarity index 97% rename from src/main/kotlin/nya/kitsunyan/foxydroid/screen/TabsFragment.kt rename to src/main/kotlin/com/michatec/store/screen/TabsFragment.kt index 673664d..6256b20 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/screen/TabsFragment.kt +++ b/src/main/kotlin/com/michatec/store/screen/TabsFragment.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.screen +package com.michatec.store.screen import android.animation.ValueAnimator import android.content.Context @@ -34,19 +34,19 @@ import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.disposables.Disposable import io.reactivex.rxjava3.schedulers.Schedulers -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.content.Preferences -import nya.kitsunyan.foxydroid.database.Database -import nya.kitsunyan.foxydroid.entity.ProductItem -import nya.kitsunyan.foxydroid.service.Connection -import nya.kitsunyan.foxydroid.service.SyncService -import nya.kitsunyan.foxydroid.utility.RxUtils -import nya.kitsunyan.foxydroid.utility.Utils -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.resources.* -import nya.kitsunyan.foxydroid.widget.DividerItemDecoration -import nya.kitsunyan.foxydroid.widget.FocusSearchView -import nya.kitsunyan.foxydroid.widget.StableRecyclerAdapter +import com.michatec.store.R +import com.michatec.store.content.Preferences +import com.michatec.store.database.Database +import com.michatec.store.entity.ProductItem +import com.michatec.store.service.Connection +import com.michatec.store.service.SyncService +import com.michatec.store.utility.RxUtils +import com.michatec.store.utility.Utils +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.resources.* +import com.michatec.store.widget.DividerItemDecoration +import com.michatec.store.widget.FocusSearchView +import com.michatec.store.widget.StableRecyclerAdapter import kotlin.math.* class TabsFragment: ScreenFragment() { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/service/Connection.kt b/src/main/kotlin/com/michatec/store/service/Connection.kt similarity index 96% rename from src/main/kotlin/nya/kitsunyan/foxydroid/service/Connection.kt rename to src/main/kotlin/com/michatec/store/service/Connection.kt index 749be63..3bf79dd 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/service/Connection.kt +++ b/src/main/kotlin/com/michatec/store/service/Connection.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.service +package com.michatec.store.service import android.content.ComponentName import android.content.Context diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/service/ConnectionService.kt b/src/main/kotlin/com/michatec/store/service/ConnectionService.kt similarity index 79% rename from src/main/kotlin/nya/kitsunyan/foxydroid/service/ConnectionService.kt rename to src/main/kotlin/com/michatec/store/service/ConnectionService.kt index 75b1412..803c935 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/service/ConnectionService.kt +++ b/src/main/kotlin/com/michatec/store/service/ConnectionService.kt @@ -1,9 +1,9 @@ -package nya.kitsunyan.foxydroid.service +package com.michatec.store.service import android.app.Service import android.content.Intent import android.os.IBinder -import nya.kitsunyan.foxydroid.utility.extension.android.* +import com.michatec.store.utility.extension.android.* abstract class ConnectionService: Service() { abstract override fun onBind(intent: Intent): T diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/service/DownloadService.kt b/src/main/kotlin/com/michatec/store/service/DownloadService.kt similarity index 96% rename from src/main/kotlin/nya/kitsunyan/foxydroid/service/DownloadService.kt rename to src/main/kotlin/com/michatec/store/service/DownloadService.kt index 535753a..f478439 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/service/DownloadService.kt +++ b/src/main/kotlin/com/michatec/store/service/DownloadService.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.service +package com.michatec.store.service import android.app.NotificationChannel import android.app.NotificationManager @@ -13,18 +13,18 @@ import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.disposables.Disposable import io.reactivex.rxjava3.subjects.PublishSubject -import nya.kitsunyan.foxydroid.BuildConfig -import nya.kitsunyan.foxydroid.Common -import nya.kitsunyan.foxydroid.MainActivity -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.content.Cache -import nya.kitsunyan.foxydroid.entity.Release -import nya.kitsunyan.foxydroid.entity.Repository -import nya.kitsunyan.foxydroid.network.Downloader -import nya.kitsunyan.foxydroid.utility.Utils -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.resources.* -import nya.kitsunyan.foxydroid.utility.extension.text.* +import com.michatec.store.BuildConfig +import com.michatec.store.Common +import com.michatec.store.MainActivity +import com.michatec.store.R +import com.michatec.store.content.Cache +import com.michatec.store.entity.Release +import com.michatec.store.entity.Repository +import com.michatec.store.network.Downloader +import com.michatec.store.utility.Utils +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.resources.* +import com.michatec.store.utility.extension.text.* import java.io.File import java.security.MessageDigest import java.util.concurrent.TimeUnit diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/service/SyncService.kt b/src/main/kotlin/com/michatec/store/service/SyncService.kt similarity index 96% rename from src/main/kotlin/nya/kitsunyan/foxydroid/service/SyncService.kt rename to src/main/kotlin/com/michatec/store/service/SyncService.kt index b96562e..f65a513 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/service/SyncService.kt +++ b/src/main/kotlin/com/michatec/store/service/SyncService.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.service +package com.michatec.store.service import android.app.NotificationChannel import android.app.NotificationManager @@ -18,19 +18,19 @@ import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.disposables.Disposable import io.reactivex.rxjava3.schedulers.Schedulers import io.reactivex.rxjava3.subjects.PublishSubject -import nya.kitsunyan.foxydroid.BuildConfig -import nya.kitsunyan.foxydroid.Common -import nya.kitsunyan.foxydroid.MainActivity -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.content.Preferences -import nya.kitsunyan.foxydroid.database.Database -import nya.kitsunyan.foxydroid.entity.ProductItem -import nya.kitsunyan.foxydroid.entity.Repository -import nya.kitsunyan.foxydroid.index.RepositoryUpdater -import nya.kitsunyan.foxydroid.utility.RxUtils -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.resources.* -import nya.kitsunyan.foxydroid.utility.extension.text.* +import com.michatec.store.BuildConfig +import com.michatec.store.Common +import com.michatec.store.MainActivity +import com.michatec.store.R +import com.michatec.store.content.Preferences +import com.michatec.store.database.Database +import com.michatec.store.entity.ProductItem +import com.michatec.store.entity.Repository +import com.michatec.store.index.RepositoryUpdater +import com.michatec.store.utility.RxUtils +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.resources.* +import com.michatec.store.utility.extension.text.* import java.lang.ref.WeakReference import java.util.concurrent.TimeUnit import kotlin.math.* diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/KParcelable.kt b/src/main/kotlin/com/michatec/store/utility/KParcelable.kt similarity index 93% rename from src/main/kotlin/nya/kitsunyan/foxydroid/utility/KParcelable.kt rename to src/main/kotlin/com/michatec/store/utility/KParcelable.kt index e006399..79c770b 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/KParcelable.kt +++ b/src/main/kotlin/com/michatec/store/utility/KParcelable.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.utility +package com.michatec.store.utility import android.os.Parcel import android.os.Parcelable diff --git a/src/main/kotlin/com/michatec/store/utility/PackageItemResolver.kt b/src/main/kotlin/com/michatec/store/utility/PackageItemResolver.kt new file mode 100644 index 0000000..c25993c --- /dev/null +++ b/src/main/kotlin/com/michatec/store/utility/PackageItemResolver.kt @@ -0,0 +1,109 @@ +package com.michatec.store.utility + +import android.content.Context +import android.content.pm.PackageItemInfo +import android.content.pm.PermissionInfo +import android.content.res.Resources +import java.util.Locale + +object PackageItemResolver { + class LocalCache { + internal val resources = mutableMapOf() + } + + private data class CacheKey(val locales: List, val packageName: String, val resId: Int) + + private val cache = mutableMapOf() + + private fun load(context: Context, localCache: LocalCache, packageName: String, + nonLocalized: CharSequence?, resId: Int): CharSequence? { + return when { + nonLocalized != null -> { + nonLocalized + } + resId != 0 -> { + val localesList = context.resources.configuration.locales + val locales = (0 until localesList.size()).map(localesList::get) + + val cacheKey = CacheKey(locales, packageName, resId) + if (cache.containsKey(cacheKey)) { + cache[cacheKey] + } else { + val resources = localCache.resources[packageName] ?: run { + val resources = try { + context.createPackageContext(packageName, 0) + .createConfigurationContext(context.resources.configuration) + .resources + } catch (_: Exception) { + null + } + resources?.let { localCache.resources[packageName] = it } + resources + } + val label = resources?.getString(resId) + cache[cacheKey] = label + label + } + } + else -> { + null + } + } + } + + fun loadLabel(context: Context, localCache: LocalCache, packageItemInfo: PackageItemInfo): CharSequence? { + return load(context, localCache, packageItemInfo.packageName, + packageItemInfo.nonLocalizedLabel, packageItemInfo.labelRes) + } + + fun loadDescription(context: Context, localCache: LocalCache, permissionInfo: PermissionInfo): CharSequence? { + return load(context, localCache, permissionInfo.packageName, + permissionInfo.nonLocalizedDescription, permissionInfo.descriptionRes) + } + + fun getPermissionGroup(permissionInfo: PermissionInfo): String? { + return when (permissionInfo.name) { + android.Manifest.permission.READ_CONTACTS, + android.Manifest.permission.WRITE_CONTACTS, + android.Manifest.permission.GET_ACCOUNTS -> + android.Manifest.permission_group.CONTACTS + android.Manifest.permission.READ_CALENDAR, + android.Manifest.permission.WRITE_CALENDAR -> + android.Manifest.permission_group.CALENDAR + android.Manifest.permission.SEND_SMS, + android.Manifest.permission.RECEIVE_SMS, + android.Manifest.permission.READ_SMS, + android.Manifest.permission.RECEIVE_MMS, + android.Manifest.permission.RECEIVE_WAP_PUSH, + "android.permission.READ_CELL_BROADCASTS" -> + android.Manifest.permission_group.SMS + android.Manifest.permission.READ_EXTERNAL_STORAGE, + android.Manifest.permission.WRITE_EXTERNAL_STORAGE, + android.Manifest.permission.ACCESS_MEDIA_LOCATION -> + android.Manifest.permission_group.STORAGE + android.Manifest.permission.ACCESS_FINE_LOCATION, + android.Manifest.permission.ACCESS_COARSE_LOCATION, + android.Manifest.permission.ACCESS_BACKGROUND_LOCATION -> + android.Manifest.permission_group.LOCATION + android.Manifest.permission.READ_CALL_LOG, + android.Manifest.permission.WRITE_CALL_LOG, + android.Manifest.permission.READ_PHONE_STATE, + android.Manifest.permission.READ_PHONE_NUMBERS, + android.Manifest.permission.CALL_PHONE, + android.Manifest.permission.ADD_VOICEMAIL, + android.Manifest.permission.USE_SIP, + android.Manifest.permission.ANSWER_PHONE_CALLS, + android.Manifest.permission.ACCEPT_HANDOVER -> + android.Manifest.permission_group.PHONE + android.Manifest.permission.RECORD_AUDIO -> + android.Manifest.permission_group.MICROPHONE + android.Manifest.permission.ACTIVITY_RECOGNITION -> + android.Manifest.permission_group.ACTIVITY_RECOGNITION + android.Manifest.permission.CAMERA -> + android.Manifest.permission_group.CAMERA + android.Manifest.permission.BODY_SENSORS -> + android.Manifest.permission_group.SENSORS + else -> null + } + } +} diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/ProgressInputStream.kt b/src/main/kotlin/com/michatec/store/utility/ProgressInputStream.kt similarity index 95% rename from src/main/kotlin/nya/kitsunyan/foxydroid/utility/ProgressInputStream.kt rename to src/main/kotlin/com/michatec/store/utility/ProgressInputStream.kt index d527c04..7c4e4a6 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/ProgressInputStream.kt +++ b/src/main/kotlin/com/michatec/store/utility/ProgressInputStream.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.utility +package com.michatec.store.utility import java.io.InputStream diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/RxUtils.kt b/src/main/kotlin/com/michatec/store/utility/RxUtils.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/utility/RxUtils.kt rename to src/main/kotlin/com/michatec/store/utility/RxUtils.kt index 12afd37..17d52a1 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/RxUtils.kt +++ b/src/main/kotlin/com/michatec/store/utility/RxUtils.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.utility +package com.michatec.store.utility import android.os.CancellationSignal import android.os.OperationCanceledException diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/Utils.kt b/src/main/kotlin/com/michatec/store/utility/Utils.kt similarity index 91% rename from src/main/kotlin/nya/kitsunyan/foxydroid/utility/Utils.kt rename to src/main/kotlin/com/michatec/store/utility/Utils.kt index ee9b91d..5831350 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/Utils.kt +++ b/src/main/kotlin/com/michatec/store/utility/Utils.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.utility +package com.michatec.store.utility import android.animation.ValueAnimator import android.annotation.SuppressLint @@ -8,11 +8,11 @@ import android.content.res.Configuration import android.graphics.drawable.Drawable import android.os.LocaleList import android.provider.Settings -import nya.kitsunyan.foxydroid.BuildConfig -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.utility.extension.android.* -import nya.kitsunyan.foxydroid.utility.extension.resources.* -import nya.kitsunyan.foxydroid.utility.extension.text.* +import com.michatec.store.BuildConfig +import com.michatec.store.R +import com.michatec.store.utility.extension.android.* +import com.michatec.store.utility.extension.resources.* +import com.michatec.store.utility.extension.text.* import java.security.MessageDigest import java.security.cert.Certificate import java.security.cert.CertificateEncodingException diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/extension/Android.kt b/src/main/kotlin/com/michatec/store/utility/extension/Android.kt similarity index 71% rename from src/main/kotlin/nya/kitsunyan/foxydroid/utility/extension/Android.kt rename to src/main/kotlin/com/michatec/store/utility/extension/Android.kt index d47a9a1..62a39c3 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/extension/Android.kt +++ b/src/main/kotlin/com/michatec/store/utility/extension/Android.kt @@ -1,5 +1,5 @@ @file:Suppress("PackageDirectoryMismatch") -package nya.kitsunyan.foxydroid.utility.extension.android +package com.michatec.store.utility.extension.android import android.app.NotificationManager import android.content.Context @@ -25,16 +25,15 @@ val Context.notificationManager: NotificationManager get() = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager val PackageInfo.versionCodeCompat: Long - get() = if (Android.sdk(28)) longVersionCode else @Suppress("DEPRECATION") versionCode.toLong() + get() = longVersionCode val PackageInfo.singleSignature: Signature? get() { - return if (Android.sdk(28)) { - val signingInfo = signingInfo - if (signingInfo?.hasMultipleSigners() == false) signingInfo.apkContentsSigners - ?.let { if (it.size == 1) it[0] else null } else null + val signingInfo = signingInfo + return if (signingInfo?.hasMultipleSigners() == false) { + signingInfo.apkContentsSigners?.let { if (it.size == 1) it[0] else null } } else { - null + null } } @@ -56,18 +55,17 @@ object Android { object PendingIntent { val FLAG_IMMUTABLE: Int - get() = if (sdk(23)) android.app.PendingIntent.FLAG_IMMUTABLE else 0 - + get() = android.app.PendingIntent.FLAG_IMMUTABLE } object PackageManager { val signaturesFlag: Int - get() = (if (sdk(28)) android.content.pm.PackageManager.GET_SIGNING_CERTIFICATES else 0) + get() = android.content.pm.PackageManager.GET_SIGNING_CERTIFICATES } object ServiceInfo { val FOREGROUND_SERVICE_TYPE_DATA_SYNC: Int - get() = if (sdk(29)) android.content.pm.ServiceInfo.FOREGROUND_SERVICE_TYPE_DATA_SYNC else 0 + get() = android.content.pm.ServiceInfo.FOREGROUND_SERVICE_TYPE_DATA_SYNC } object Device { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/extension/Json.kt b/src/main/kotlin/com/michatec/store/utility/extension/Json.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/utility/extension/Json.kt rename to src/main/kotlin/com/michatec/store/utility/extension/Json.kt index a3329ee..6826c55 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/extension/Json.kt +++ b/src/main/kotlin/com/michatec/store/utility/extension/Json.kt @@ -1,5 +1,5 @@ @file:Suppress("PackageDirectoryMismatch") -package nya.kitsunyan.foxydroid.utility.extension.json +package com.michatec.store.utility.extension.json import com.fasterxml.jackson.core.JsonFactory import com.fasterxml.jackson.core.JsonGenerator diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/extension/Resources.kt b/src/main/kotlin/com/michatec/store/utility/extension/Resources.kt similarity index 95% rename from src/main/kotlin/nya/kitsunyan/foxydroid/utility/extension/Resources.kt rename to src/main/kotlin/com/michatec/store/utility/extension/Resources.kt index 6f7a990..bda52d9 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/extension/Resources.kt +++ b/src/main/kotlin/com/michatec/store/utility/extension/Resources.kt @@ -1,5 +1,5 @@ @file:Suppress("PackageDirectoryMismatch") -package nya.kitsunyan.foxydroid.utility.extension.resources +package com.michatec.store.utility.extension.resources import android.content.Context import android.content.res.ColorStateList @@ -18,7 +18,7 @@ import androidx.core.content.ContextCompat import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat import com.squareup.picasso.Picasso import com.squareup.picasso.RequestCreator -import nya.kitsunyan.foxydroid.utility.extension.android.* +import com.michatec.store.utility.extension.android.* import org.xmlpull.v1.XmlPullParser import kotlin.math.* diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/extension/Text.kt b/src/main/kotlin/com/michatec/store/utility/extension/Text.kt similarity index 96% rename from src/main/kotlin/nya/kitsunyan/foxydroid/utility/extension/Text.kt rename to src/main/kotlin/com/michatec/store/utility/extension/Text.kt index ebdacc2..75aa4f1 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/extension/Text.kt +++ b/src/main/kotlin/com/michatec/store/utility/extension/Text.kt @@ -1,5 +1,5 @@ @file:Suppress("PackageDirectoryMismatch") -package nya.kitsunyan.foxydroid.utility.extension.text +package com.michatec.store.utility.extension.text import android.util.Log import java.util.Locale diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/ClickableMovementMethod.kt b/src/main/kotlin/com/michatec/store/widget/ClickableMovementMethod.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/widget/ClickableMovementMethod.kt rename to src/main/kotlin/com/michatec/store/widget/ClickableMovementMethod.kt index b5b9295..33429b5 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/ClickableMovementMethod.kt +++ b/src/main/kotlin/com/michatec/store/widget/ClickableMovementMethod.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.widget +package com.michatec.store.widget import android.text.Selection import android.text.Spannable diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/CursorRecyclerAdapter.kt b/src/main/kotlin/com/michatec/store/widget/CursorRecyclerAdapter.kt similarity index 98% rename from src/main/kotlin/nya/kitsunyan/foxydroid/widget/CursorRecyclerAdapter.kt rename to src/main/kotlin/com/michatec/store/widget/CursorRecyclerAdapter.kt index 658325f..8766177 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/CursorRecyclerAdapter.kt +++ b/src/main/kotlin/com/michatec/store/widget/CursorRecyclerAdapter.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.widget +package com.michatec.store.widget import android.annotation.SuppressLint import android.database.Cursor diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/DividerItemDecoration.kt b/src/main/kotlin/com/michatec/store/widget/DividerItemDecoration.kt similarity index 96% rename from src/main/kotlin/nya/kitsunyan/foxydroid/widget/DividerItemDecoration.kt rename to src/main/kotlin/com/michatec/store/widget/DividerItemDecoration.kt index 2d58a86..a8654ce 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/DividerItemDecoration.kt +++ b/src/main/kotlin/com/michatec/store/widget/DividerItemDecoration.kt @@ -1,12 +1,12 @@ -package nya.kitsunyan.foxydroid.widget +package com.michatec.store.widget import android.content.Context import android.graphics.Canvas import android.graphics.Rect import android.view.View import androidx.recyclerview.widget.RecyclerView -import nya.kitsunyan.foxydroid.R -import nya.kitsunyan.foxydroid.utility.extension.resources.* +import com.michatec.store.R +import com.michatec.store.utility.extension.resources.* import kotlin.math.* class DividerItemDecoration(context: Context, private val configure: (context: Context, diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/EnumRecyclerAdapter.kt b/src/main/kotlin/com/michatec/store/widget/EnumRecyclerAdapter.kt similarity index 95% rename from src/main/kotlin/nya/kitsunyan/foxydroid/widget/EnumRecyclerAdapter.kt rename to src/main/kotlin/com/michatec/store/widget/EnumRecyclerAdapter.kt index 3eab736..8ab87cc 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/EnumRecyclerAdapter.kt +++ b/src/main/kotlin/com/michatec/store/widget/EnumRecyclerAdapter.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.widget +package com.michatec.store.widget import android.util.SparseArray import android.view.ViewGroup diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/FocusSearchView.kt b/src/main/kotlin/com/michatec/store/widget/FocusSearchView.kt similarity index 96% rename from src/main/kotlin/nya/kitsunyan/foxydroid/widget/FocusSearchView.kt rename to src/main/kotlin/com/michatec/store/widget/FocusSearchView.kt index a71ae0e..1981258 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/FocusSearchView.kt +++ b/src/main/kotlin/com/michatec/store/widget/FocusSearchView.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.widget +package com.michatec.store.widget import android.content.Context import android.util.AttributeSet diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/FragmentLinearLayout.kt b/src/main/kotlin/com/michatec/store/widget/FragmentLinearLayout.kt similarity index 93% rename from src/main/kotlin/nya/kitsunyan/foxydroid/widget/FragmentLinearLayout.kt rename to src/main/kotlin/com/michatec/store/widget/FragmentLinearLayout.kt index 1da1419..dc8d1a5 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/FragmentLinearLayout.kt +++ b/src/main/kotlin/com/michatec/store/widget/FragmentLinearLayout.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.widget +package com.michatec.store.widget import android.content.Context import android.util.AttributeSet diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/RecyclerFastScroller.kt b/src/main/kotlin/com/michatec/store/widget/RecyclerFastScroller.kt similarity index 99% rename from src/main/kotlin/nya/kitsunyan/foxydroid/widget/RecyclerFastScroller.kt rename to src/main/kotlin/com/michatec/store/widget/RecyclerFastScroller.kt index 22725f9..c714a30 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/RecyclerFastScroller.kt +++ b/src/main/kotlin/com/michatec/store/widget/RecyclerFastScroller.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.widget +package com.michatec.store.widget import android.graphics.Canvas import android.graphics.Rect @@ -7,7 +7,7 @@ import android.view.MotionEvent import android.view.ViewGroup import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView -import nya.kitsunyan.foxydroid.utility.extension.resources.* +import com.michatec.store.utility.extension.resources.* import kotlin.math.* class RecyclerFastScroller(private val recyclerView: RecyclerView) { diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/StableRecyclerAdapter.kt b/src/main/kotlin/com/michatec/store/widget/StableRecyclerAdapter.kt similarity index 94% rename from src/main/kotlin/nya/kitsunyan/foxydroid/widget/StableRecyclerAdapter.kt rename to src/main/kotlin/com/michatec/store/widget/StableRecyclerAdapter.kt index 03cb321..e066086 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/StableRecyclerAdapter.kt +++ b/src/main/kotlin/com/michatec/store/widget/StableRecyclerAdapter.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.widget +package com.michatec.store.widget import androidx.recyclerview.widget.RecyclerView diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/Toolbar.kt b/src/main/kotlin/com/michatec/store/widget/Toolbar.kt similarity index 96% rename from src/main/kotlin/nya/kitsunyan/foxydroid/widget/Toolbar.kt rename to src/main/kotlin/com/michatec/store/widget/Toolbar.kt index 3ea53fe..f0a294a 100644 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/widget/Toolbar.kt +++ b/src/main/kotlin/com/michatec/store/widget/Toolbar.kt @@ -1,4 +1,4 @@ -package nya.kitsunyan.foxydroid.widget +package com.michatec.store.widget import android.content.Context import android.util.AttributeSet diff --git a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/PackageItemResolver.kt b/src/main/kotlin/nya/kitsunyan/foxydroid/utility/PackageItemResolver.kt deleted file mode 100644 index 91eb5ca..0000000 --- a/src/main/kotlin/nya/kitsunyan/foxydroid/utility/PackageItemResolver.kt +++ /dev/null @@ -1,122 +0,0 @@ -package nya.kitsunyan.foxydroid.utility - -import android.content.Context -import android.content.pm.PackageItemInfo -import android.content.pm.PermissionInfo -import android.content.res.Resources -import nya.kitsunyan.foxydroid.utility.extension.android.* -import java.util.Locale - -object PackageItemResolver { - class LocalCache { - internal val resources = mutableMapOf() - } - - private data class CacheKey(val locales: List, val packageName: String, val resId: Int) - - private val cache = mutableMapOf() - - private fun load(context: Context, localCache: LocalCache, packageName: String, - nonLocalized: CharSequence?, resId: Int): CharSequence? { - return when { - nonLocalized != null -> { - nonLocalized - } - resId != 0 -> { - val locales = if (Android.sdk(24)) { - val localesList = context.resources.configuration.locales - (0 until localesList.size()).map(localesList::get) - } else { - @Suppress("DEPRECATION") - listOf(context.resources.configuration.locale) - } - val cacheKey = CacheKey(locales, packageName, resId) - if (cache.containsKey(cacheKey)) { - cache[cacheKey] - } else { - val resources = localCache.resources[packageName] ?: run { - val resources = try { - val resources = context.packageManager.getResourcesForApplication(packageName) - @Suppress("DEPRECATION") - resources.updateConfiguration(context.resources.configuration, null) - resources - } catch (_: Exception) { - null - } - resources?.let { localCache.resources[packageName] = it } - resources - } - val label = resources?.getString(resId) - cache[cacheKey] = label - label - } - } - else -> { - null - } - } - } - - fun loadLabel(context: Context, localCache: LocalCache, packageItemInfo: PackageItemInfo): CharSequence? { - return load(context, localCache, packageItemInfo.packageName, - packageItemInfo.nonLocalizedLabel, packageItemInfo.labelRes) - } - - fun loadDescription(context: Context, localCache: LocalCache, permissionInfo: PermissionInfo): CharSequence? { - return load(context, localCache, permissionInfo.packageName, - permissionInfo.nonLocalizedDescription, permissionInfo.descriptionRes) - } - - fun getPermissionGroup(permissionInfo: PermissionInfo): String? { - return if (Android.sdk(29)) { - // Copied from package installer (Utils.java) - when (permissionInfo.name) { - android.Manifest.permission.READ_CONTACTS, - android.Manifest.permission.WRITE_CONTACTS, - android.Manifest.permission.GET_ACCOUNTS -> - android.Manifest.permission_group.CONTACTS - android.Manifest.permission.READ_CALENDAR, - android.Manifest.permission.WRITE_CALENDAR -> - android.Manifest.permission_group.CALENDAR - android.Manifest.permission.SEND_SMS, - android.Manifest.permission.RECEIVE_SMS, - android.Manifest.permission.READ_SMS, - android.Manifest.permission.RECEIVE_MMS, - android.Manifest.permission.RECEIVE_WAP_PUSH, - "android.permission.READ_CELL_BROADCASTS" -> - android.Manifest.permission_group.SMS - android.Manifest.permission.READ_EXTERNAL_STORAGE, - android.Manifest.permission.WRITE_EXTERNAL_STORAGE, - android.Manifest.permission.ACCESS_MEDIA_LOCATION -> - android.Manifest.permission_group.STORAGE - android.Manifest.permission.ACCESS_FINE_LOCATION, - android.Manifest.permission.ACCESS_COARSE_LOCATION, - android.Manifest.permission.ACCESS_BACKGROUND_LOCATION -> - android.Manifest.permission_group.LOCATION - android.Manifest.permission.READ_CALL_LOG, - android.Manifest.permission.WRITE_CALL_LOG, - @Suppress("DEPRECATION") android.Manifest.permission.PROCESS_OUTGOING_CALLS -> - android.Manifest.permission_group.CALL_LOG - android.Manifest.permission.READ_PHONE_STATE, - android.Manifest.permission.READ_PHONE_NUMBERS, - android.Manifest.permission.CALL_PHONE, - android.Manifest.permission.ADD_VOICEMAIL, - android.Manifest.permission.USE_SIP, - android.Manifest.permission.ANSWER_PHONE_CALLS, - android.Manifest.permission.ACCEPT_HANDOVER -> - android.Manifest.permission_group.PHONE - android.Manifest.permission.RECORD_AUDIO -> - android.Manifest.permission_group.MICROPHONE - android.Manifest.permission.ACTIVITY_RECOGNITION -> - android.Manifest.permission_group.ACTIVITY_RECOGNITION - android.Manifest.permission.CAMERA -> - android.Manifest.permission_group.CAMERA - android.Manifest.permission.BODY_SENSORS -> - android.Manifest.permission_group.SENSORS - else -> null - } - } else { - permissionInfo.group - } - } -} diff --git a/src/main/res/layout/edit_repository.xml b/src/main/res/layout/edit_repository.xml index 3a7f41b..413a4e7 100644 --- a/src/main/res/layout/edit_repository.xml +++ b/src/main/res/layout/edit_repository.xml @@ -95,7 +95,7 @@ android:fontFamily="monospace" android:textSize="16sp" android:inputType="textNoSuggestions|textMultiLine" - tools:ignore="Autofill,LabelFor" /> + tools:ignore="Autofill,LabelFor,Speakable" /> - - - + diff --git a/src/main/res/layout/product_header_item.xml b/src/main/res/layout/product_header_item.xml index d1c1bbb..ed3e38d 100644 --- a/src/main/res/layout/product_header_item.xml +++ b/src/main/res/layout/product_header_item.xml @@ -66,6 +66,7 @@ android:layout_height="wrap_content" android:layout_marginStart="8dp" android:layout_gravity="bottom" + android:text="@string/website" style="@android:style/Widget.Material.Button" /> diff --git a/src/main/res/layout/tabs_toolbar.xml b/src/main/res/layout/tabs_toolbar.xml index 7fd12df..70385fb 100644 --- a/src/main/res/layout/tabs_toolbar.xml +++ b/src/main/res/layout/tabs_toolbar.xml @@ -15,7 +15,7 @@ + android:layout_height="wrap_content"> Always Anti-features Application - Foxy Droid + Store Application not found Author email Author website