Verified Commit eedbcb98 authored by Alex Catarineu's avatar Alex Catarineu Committed by Pier Angelo Vendrame
Browse files

Modify Addon support

Bug 40011: Hide option for disallowing addons in private mode

Bug 40016: Allow inheriting from AddonCollectionProvider

This will allow implementing our own AddonsProvider in fenix.
parent 42193329
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -154,6 +154,7 @@ class AddonManager(
            onSuccess = { ext ->
                val installedAddon = addon.copy(installedState = ext.toInstalledState())
                addonUpdater.registerForFutureUpdates(installedAddon.id)
                setAddonAllowedInPrivateBrowsing(installedAddon, true)
                completePendingAddonAction(pendingAction)
                onSuccess(installedAddon)
            },
+3 −3
Original line number Diff line number Diff line
@@ -58,7 +58,7 @@ internal const val PAGE_SIZE = 50
 * cache is being used by default
 */
@Suppress("LongParameterList")
class AddonCollectionProvider(
open class AddonCollectionProvider(
    private val context: Context,
    private val client: Client,
    private val serverURL: String = DEFAULT_SERVER_URL,
@@ -175,7 +175,7 @@ class AddonCollectionProvider(
     * a connectivity problem or a timeout.
     */
    @Throws(IOException::class)
    suspend fun getAddonIconBitmap(addon: Addon): Bitmap? {
    open suspend fun getAddonIconBitmap(addon: Addon): Bitmap? {
        var bitmap: Bitmap? = null
        if (addon.iconUrl != "") {
            client.fetch(
@@ -193,7 +193,7 @@ class AddonCollectionProvider(
    }

    @VisibleForTesting
    internal fun writeToDiskCache(collectionResponse: String, language: String?) {
    protected fun writeToDiskCache(collectionResponse: String, language: String?) {
        synchronized(diskCacheLock) {
            getCacheFile(context, language, useFallbackFile = false).writeString { collectionResponse }
        }
+1 −0
Original line number Diff line number Diff line
@@ -63,6 +63,7 @@
        />

    <androidx.appcompat.widget.AppCompatCheckBox
        android:visibility="gone"
        android:id="@+id/allow_in_private_browsing"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
+1 −0
Original line number Diff line number Diff line
@@ -70,6 +70,7 @@
                app:drawableStartCompat="@drawable/mozac_ic_permissions" />

        <androidx.appcompat.widget.SwitchCompat
            android:visibility="gone"
            android:id="@+id/allow_in_private_browsing_switch"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"