Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Verified Commit 99a2293c authored by Marvin W.'s avatar Marvin W. 🐿️
Browse files

Fix build without nearby services

parent b842af98
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -37,7 +37,7 @@ class SettingsFragment : ResourceSettingsFragment() {
            findNavController().navigate(requireContext(), R.id.openUnifiedNlpSettings)
            true
        }
        findPreference<Preference>(PREF_EXPOSURE)!!.onPreferenceClickListener = Preference.OnPreferenceClickListener {
        findPreference<Preference>(PREF_EXPOSURE)?.onPreferenceClickListener = Preference.OnPreferenceClickListener {
            findNavController().navigate(requireContext(), NearbyPreferencesIntegration.exposureNotificationNavigationId)
            true
        }
@@ -71,8 +71,9 @@ class SettingsFragment : ResourceSettingsFragment() {
        val backendCount = UnifiedLocationClient[requireContext()].getLocationBackends().size + UnifiedLocationClient[requireContext()].getGeocoderBackends().size
        findPreference<Preference>(PREF_UNIFIEDNLP)!!.summary = resources.getQuantityString(R.plurals.pref_unifiednlp_summary, backendCount, backendCount);

        findPreference<Preference>(PREF_EXPOSURE)!!.isVisible = NearbyPreferencesIntegration.isAvailable
        findPreference<Preference>(PREF_EXPOSURE)!!.summary = NearbyPreferencesIntegration.getExposurePreferenceSummary(requireContext())
        findPreference<Preference>(PREF_EXPOSURE)?.isVisible = NearbyPreferencesIntegration.isAvailable
        findPreference<Preference>(PREF_EXPOSURE)?.icon = NearbyPreferencesIntegration.getIcon(requireContext())
        findPreference<Preference>(PREF_EXPOSURE)?.summary = NearbyPreferencesIntegration.getExposurePreferenceSummary(requireContext())
    }

    companion object {
+0 −1
Original line number Diff line number Diff line
@@ -63,7 +63,6 @@
            android:key="pref_unifiednlp"
            android:title="@string/nlp_backends_title" />
        <Preference
            android:icon="@drawable/ic_virus_outline"
            android:key="pref_exposure"
            android:title="@string/service_name_exposure"
            app:isPreferenceVisible="false" />
+4 −0
Original line number Diff line number Diff line
@@ -7,7 +7,9 @@ package org.microg.gms.ui

import android.content.Context
import android.content.Intent
import android.graphics.drawable.Drawable
import android.net.Uri
import androidx.core.content.ContextCompat
import com.google.android.gms.R
import org.microg.gms.nearby.exposurenotification.Constants
import org.microg.gms.nearby.exposurenotification.getExposureNotificationsServiceInfo
@@ -26,6 +28,8 @@ interface NearbyPreferencesIntegration {
            }
        }

        fun getIcon(context: Context): Drawable? = ContextCompat.getDrawable(context, org.microg.gms.nearby.core.R.drawable.ic_virus_outline)

        val isAvailable: Boolean = android.os.Build.VERSION.SDK_INT >= 21

        const val exposureNotificationNavigationId: Int = R.id.openExposureNotificationSettings
+2 −0
Original line number Diff line number Diff line
@@ -7,12 +7,14 @@ package org.microg.gms.ui

import android.content.Context
import android.content.Intent
import android.graphics.drawable.Drawable
import com.google.android.gms.R

interface NearbyPreferencesIntegration {
    companion object {
        suspend fun getExposurePreferenceSummary(context: Context): String = context.getString(R.string.service_status_disabled_short)
        fun preProcessSettingsIntent(intent: Intent) {}
        fun getIcon(context: Context): Drawable? = null
        const val exposureNotificationNavigationId: Int = 0
        const val isAvailable: Boolean = false
    }