Convert NotificationPreferenceFragment to Kotlin
							parent
							
								
									7c8882e1f3
								
							
						
					
					
						commit
						0aa5dc7969
					
				@ -1,190 +0,0 @@
 | 
			
		||||
package org.thoughtcrime.securesms.preferences;
 | 
			
		||||
 | 
			
		||||
import static android.app.Activity.RESULT_OK;
 | 
			
		||||
 | 
			
		||||
import static org.thoughtcrime.securesms.preferences.ListPreferenceDialogKt.listPreferenceDialog;
 | 
			
		||||
 | 
			
		||||
import android.annotation.SuppressLint;
 | 
			
		||||
import android.content.Context;
 | 
			
		||||
import android.content.Intent;
 | 
			
		||||
import android.media.Ringtone;
 | 
			
		||||
import android.media.RingtoneManager;
 | 
			
		||||
import android.net.Uri;
 | 
			
		||||
import android.os.AsyncTask;
 | 
			
		||||
import android.os.Bundle;
 | 
			
		||||
import android.provider.Settings;
 | 
			
		||||
import android.text.TextUtils;
 | 
			
		||||
 | 
			
		||||
import androidx.annotation.Nullable;
 | 
			
		||||
import androidx.preference.ListPreference;
 | 
			
		||||
import androidx.preference.Preference;
 | 
			
		||||
 | 
			
		||||
import org.session.libsession.utilities.TextSecurePreferences;
 | 
			
		||||
import org.thoughtcrime.securesms.ApplicationContext;
 | 
			
		||||
import org.thoughtcrime.securesms.components.SwitchPreferenceCompat;
 | 
			
		||||
import org.thoughtcrime.securesms.notifications.NotificationChannels;
 | 
			
		||||
import org.thoughtcrime.securesms.notifications.PushRegistry;
 | 
			
		||||
 | 
			
		||||
import javax.inject.Inject;
 | 
			
		||||
 | 
			
		||||
import dagger.hilt.android.AndroidEntryPoint;
 | 
			
		||||
import network.loki.messenger.R;
 | 
			
		||||
 | 
			
		||||
@AndroidEntryPoint
 | 
			
		||||
public class NotificationsPreferenceFragment extends ListSummaryPreferenceFragment {
 | 
			
		||||
 | 
			
		||||
  @SuppressWarnings("unused")
 | 
			
		||||
  private static final String TAG = NotificationsPreferenceFragment.class.getSimpleName();
 | 
			
		||||
 | 
			
		||||
  @Inject
 | 
			
		||||
  PushRegistry pushRegistry;
 | 
			
		||||
 | 
			
		||||
  @Override
 | 
			
		||||
  public void onCreate(Bundle paramBundle) {
 | 
			
		||||
    super.onCreate(paramBundle);
 | 
			
		||||
 | 
			
		||||
    // Set up FCM toggle
 | 
			
		||||
    String fcmKey = "pref_key_use_fcm";
 | 
			
		||||
    ((SwitchPreferenceCompat)findPreference(fcmKey)).setChecked(TextSecurePreferences.isPushEnabled(getContext()));
 | 
			
		||||
    this.findPreference(fcmKey)
 | 
			
		||||
      .setOnPreferenceChangeListener((preference, newValue) -> {
 | 
			
		||||
        TextSecurePreferences.setPushEnabled(getContext(), (boolean) newValue);
 | 
			
		||||
        pushRegistry.refresh(true);
 | 
			
		||||
        return true;
 | 
			
		||||
      });
 | 
			
		||||
 | 
			
		||||
    if (NotificationChannels.supported()) {
 | 
			
		||||
      TextSecurePreferences.setNotificationRingtone(getContext(), NotificationChannels.getMessageRingtone(getContext()).toString());
 | 
			
		||||
      TextSecurePreferences.setNotificationVibrateEnabled(getContext(), NotificationChannels.getMessageVibrate(getContext()));
 | 
			
		||||
    }
 | 
			
		||||
    this.findPreference(TextSecurePreferences.RINGTONE_PREF)
 | 
			
		||||
        .setOnPreferenceChangeListener(new RingtoneSummaryListener());
 | 
			
		||||
    this.findPreference(TextSecurePreferences.NOTIFICATION_PRIVACY_PREF)
 | 
			
		||||
        .setOnPreferenceChangeListener(new NotificationPrivacyListener());
 | 
			
		||||
    this.findPreference(TextSecurePreferences.VIBRATE_PREF)
 | 
			
		||||
        .setOnPreferenceChangeListener((preference, newValue) -> {
 | 
			
		||||
          NotificationChannels.updateMessageVibrate(getContext(), (boolean) newValue);
 | 
			
		||||
          return true;
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
    this.findPreference(TextSecurePreferences.RINGTONE_PREF)
 | 
			
		||||
        .setOnPreferenceClickListener(preference -> {
 | 
			
		||||
          Uri current = TextSecurePreferences.getNotificationRingtone(getContext());
 | 
			
		||||
 | 
			
		||||
          Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
 | 
			
		||||
          intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_DEFAULT, true);
 | 
			
		||||
          intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT, true);
 | 
			
		||||
          intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, RingtoneManager.TYPE_NOTIFICATION);
 | 
			
		||||
          intent.putExtra(RingtoneManager.EXTRA_RINGTONE_DEFAULT_URI, Settings.System.DEFAULT_NOTIFICATION_URI);
 | 
			
		||||
          intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, current);
 | 
			
		||||
 | 
			
		||||
          startActivityForResult(intent, 1);
 | 
			
		||||
 | 
			
		||||
          return true;
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
    this.findPreference(TextSecurePreferences.NOTIFICATION_PRIVACY_PREF)
 | 
			
		||||
        .setOnPreferenceClickListener(preference -> {
 | 
			
		||||
          ListPreference listPreference = (ListPreference) preference;
 | 
			
		||||
          listPreference.setDialogMessage(R.string.preferences_notifications__content_message);
 | 
			
		||||
          listPreferenceDialog(getContext(), listPreference, () -> {
 | 
			
		||||
              initializeListSummary(findPreference(TextSecurePreferences.NOTIFICATION_PRIVACY_PREF));
 | 
			
		||||
              return null;
 | 
			
		||||
          });
 | 
			
		||||
          return true;
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
    initializeListSummary((ListPreference) findPreference(TextSecurePreferences.NOTIFICATION_PRIVACY_PREF));
 | 
			
		||||
 | 
			
		||||
    if (NotificationChannels.supported()) {
 | 
			
		||||
      this.findPreference(TextSecurePreferences.NOTIFICATION_PRIORITY_PREF)
 | 
			
		||||
          .setOnPreferenceClickListener(preference -> {
 | 
			
		||||
            Intent intent = new Intent(Settings.ACTION_CHANNEL_NOTIFICATION_SETTINGS);
 | 
			
		||||
            intent.putExtra(Settings.EXTRA_CHANNEL_ID, NotificationChannels.getMessagesChannel(getContext()));
 | 
			
		||||
            intent.putExtra(Settings.EXTRA_APP_PACKAGE, getContext().getPackageName());
 | 
			
		||||
            startActivity(intent);
 | 
			
		||||
            return true;
 | 
			
		||||
          });
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    initializeRingtoneSummary(findPreference(TextSecurePreferences.RINGTONE_PREF));
 | 
			
		||||
    initializeMessageVibrateSummary((SwitchPreferenceCompat)findPreference(TextSecurePreferences.VIBRATE_PREF));
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @Override
 | 
			
		||||
  public void onCreatePreferences(@Nullable Bundle savedInstanceState, String rootKey) {
 | 
			
		||||
    addPreferencesFromResource(R.xml.preferences_notifications);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @Override
 | 
			
		||||
  public void onActivityResult(int requestCode, int resultCode, Intent data) {
 | 
			
		||||
    if (requestCode == 1 && resultCode == RESULT_OK && data != null) {
 | 
			
		||||
      Uri uri = data.getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI);
 | 
			
		||||
 | 
			
		||||
      if (Settings.System.DEFAULT_NOTIFICATION_URI.equals(uri)) {
 | 
			
		||||
        NotificationChannels.updateMessageRingtone(getContext(), uri);
 | 
			
		||||
        TextSecurePreferences.removeNotificationRingtone(getContext());
 | 
			
		||||
      } else {
 | 
			
		||||
        uri = uri == null ? Uri.EMPTY : uri;
 | 
			
		||||
        NotificationChannels.updateMessageRingtone(getContext(), uri);
 | 
			
		||||
        TextSecurePreferences.setNotificationRingtone(getContext(), uri.toString());
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      initializeRingtoneSummary(findPreference(TextSecurePreferences.RINGTONE_PREF));
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  private class RingtoneSummaryListener implements Preference.OnPreferenceChangeListener {
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean onPreferenceChange(Preference preference, Object newValue) {
 | 
			
		||||
      Uri value = (Uri) newValue;
 | 
			
		||||
 | 
			
		||||
      if (value == null || TextUtils.isEmpty(value.toString())) {
 | 
			
		||||
        preference.setSummary(R.string.preferences__silent);
 | 
			
		||||
      } else {
 | 
			
		||||
        Ringtone tone = RingtoneManager.getRingtone(getActivity(), value);
 | 
			
		||||
 | 
			
		||||
        if (tone != null) {
 | 
			
		||||
          preference.setSummary(tone.getTitle(getActivity()));
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      return true;
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  private void initializeRingtoneSummary(Preference pref) {
 | 
			
		||||
    RingtoneSummaryListener listener = (RingtoneSummaryListener) pref.getOnPreferenceChangeListener();
 | 
			
		||||
    Uri                     uri      = TextSecurePreferences.getNotificationRingtone(getContext());
 | 
			
		||||
 | 
			
		||||
    listener.onPreferenceChange(pref, uri);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  private void initializeMessageVibrateSummary(SwitchPreferenceCompat pref) {
 | 
			
		||||
    pref.setChecked(TextSecurePreferences.isNotificationVibrateEnabled(getContext()));
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  public static CharSequence getSummary(Context context) {
 | 
			
		||||
    final int onCapsResId   = R.string.ApplicationPreferencesActivity_On;
 | 
			
		||||
    final int offCapsResId  = R.string.ApplicationPreferencesActivity_Off;
 | 
			
		||||
 | 
			
		||||
    return context.getString(TextSecurePreferences.isNotificationsEnabled(context) ? onCapsResId : offCapsResId);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  private class NotificationPrivacyListener extends ListSummaryListener {
 | 
			
		||||
    @SuppressLint("StaticFieldLeak")
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean onPreferenceChange(Preference preference, Object value) {
 | 
			
		||||
      new AsyncTask<Void, Void, Void>() {
 | 
			
		||||
        @Override
 | 
			
		||||
        protected Void doInBackground(Void... params) {
 | 
			
		||||
          ApplicationContext.getInstance(getActivity()).messageNotifier.updateNotification(getActivity());
 | 
			
		||||
          return null;
 | 
			
		||||
        }
 | 
			
		||||
      }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
 | 
			
		||||
 | 
			
		||||
      return super.onPreferenceChange(preference, value);
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,172 @@
 | 
			
		||||
package org.thoughtcrime.securesms.preferences
 | 
			
		||||
 | 
			
		||||
import android.annotation.SuppressLint
 | 
			
		||||
import android.app.Activity
 | 
			
		||||
import android.content.Context
 | 
			
		||||
import android.content.Intent
 | 
			
		||||
import android.media.RingtoneManager
 | 
			
		||||
import android.net.Uri
 | 
			
		||||
import android.os.AsyncTask
 | 
			
		||||
import android.os.Bundle
 | 
			
		||||
import android.provider.Settings
 | 
			
		||||
import android.text.TextUtils
 | 
			
		||||
import androidx.lifecycle.lifecycleScope
 | 
			
		||||
import androidx.preference.ListPreference
 | 
			
		||||
import androidx.preference.Preference
 | 
			
		||||
import dagger.hilt.android.AndroidEntryPoint
 | 
			
		||||
import kotlinx.coroutines.Dispatchers
 | 
			
		||||
import kotlinx.coroutines.launch
 | 
			
		||||
import kotlinx.coroutines.withContext
 | 
			
		||||
import network.loki.messenger.R
 | 
			
		||||
import org.session.libsession.utilities.TextSecurePreferences
 | 
			
		||||
import org.session.libsession.utilities.TextSecurePreferences.Companion.isNotificationsEnabled
 | 
			
		||||
import org.thoughtcrime.securesms.ApplicationContext
 | 
			
		||||
import org.thoughtcrime.securesms.components.SwitchPreferenceCompat
 | 
			
		||||
import org.thoughtcrime.securesms.notifications.NotificationChannels
 | 
			
		||||
import org.thoughtcrime.securesms.notifications.PushRegistry
 | 
			
		||||
import javax.inject.Inject
 | 
			
		||||
 | 
			
		||||
@AndroidEntryPoint
 | 
			
		||||
class NotificationsPreferenceFragment : ListSummaryPreferenceFragment() {
 | 
			
		||||
    @Inject
 | 
			
		||||
    lateinit var pushRegistry: PushRegistry
 | 
			
		||||
    @Inject
 | 
			
		||||
    lateinit var prefs: TextSecurePreferences
 | 
			
		||||
 | 
			
		||||
    override fun onCreate(paramBundle: Bundle?) {
 | 
			
		||||
        super.onCreate(paramBundle)
 | 
			
		||||
 | 
			
		||||
        // Set up FCM toggle
 | 
			
		||||
        val fcmKey = "pref_key_use_fcm"
 | 
			
		||||
        val fcmPreference: SwitchPreferenceCompat = findPreference(fcmKey)!!
 | 
			
		||||
        fcmPreference.isChecked = prefs.isPushEnabled()
 | 
			
		||||
        fcmPreference.setOnPreferenceChangeListener { _: Preference, newValue: Any ->
 | 
			
		||||
                prefs.setPushEnabled(newValue as Boolean)
 | 
			
		||||
                pushRegistry.refresh(true)
 | 
			
		||||
                true
 | 
			
		||||
            }
 | 
			
		||||
        if (NotificationChannels.supported()) {
 | 
			
		||||
            prefs.setNotificationRingtone(
 | 
			
		||||
                NotificationChannels.getMessageRingtone(requireContext()).toString()
 | 
			
		||||
            )
 | 
			
		||||
            prefs.setNotificationVibrateEnabled(
 | 
			
		||||
                NotificationChannels.getMessageVibrate(requireContext())
 | 
			
		||||
            )
 | 
			
		||||
        }
 | 
			
		||||
        findPreference<Preference>(TextSecurePreferences.RINGTONE_PREF)!!.onPreferenceChangeListener = RingtoneSummaryListener()
 | 
			
		||||
        findPreference<Preference>(TextSecurePreferences.NOTIFICATION_PRIVACY_PREF)!!.onPreferenceChangeListener = NotificationPrivacyListener()
 | 
			
		||||
        findPreference<Preference>(TextSecurePreferences.VIBRATE_PREF)!!.onPreferenceChangeListener =
 | 
			
		||||
            Preference.OnPreferenceChangeListener { _: Preference?, newValue: Any ->
 | 
			
		||||
                NotificationChannels.updateMessageVibrate(requireContext(), newValue as Boolean)
 | 
			
		||||
                true
 | 
			
		||||
            }
 | 
			
		||||
        findPreference<Preference>(TextSecurePreferences.RINGTONE_PREF)!!.onPreferenceClickListener =
 | 
			
		||||
            Preference.OnPreferenceClickListener {
 | 
			
		||||
                val current = prefs.getNotificationRingtone()
 | 
			
		||||
                val intent = Intent(RingtoneManager.ACTION_RINGTONE_PICKER)
 | 
			
		||||
                intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_DEFAULT, true)
 | 
			
		||||
                intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT, true)
 | 
			
		||||
                intent.putExtra(
 | 
			
		||||
                    RingtoneManager.EXTRA_RINGTONE_TYPE,
 | 
			
		||||
                    RingtoneManager.TYPE_NOTIFICATION
 | 
			
		||||
                )
 | 
			
		||||
                intent.putExtra(
 | 
			
		||||
                    RingtoneManager.EXTRA_RINGTONE_DEFAULT_URI,
 | 
			
		||||
                    Settings.System.DEFAULT_NOTIFICATION_URI
 | 
			
		||||
                )
 | 
			
		||||
                intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, current)
 | 
			
		||||
                startActivityForResult(intent, 1)
 | 
			
		||||
                true
 | 
			
		||||
            }
 | 
			
		||||
        findPreference<Preference>(TextSecurePreferences.NOTIFICATION_PRIVACY_PREF)!!.onPreferenceClickListener =
 | 
			
		||||
            Preference.OnPreferenceClickListener { preference: Preference ->
 | 
			
		||||
                val listPreference = preference as ListPreference
 | 
			
		||||
                listPreference.setDialogMessage(R.string.preferences_notifications__content_message)
 | 
			
		||||
                listPreferenceDialog(requireContext(), listPreference) {
 | 
			
		||||
                    initializeListSummary(findPreference(TextSecurePreferences.NOTIFICATION_PRIVACY_PREF))
 | 
			
		||||
                }
 | 
			
		||||
                true
 | 
			
		||||
            }
 | 
			
		||||
        initializeListSummary(findPreference<Preference>(TextSecurePreferences.NOTIFICATION_PRIVACY_PREF) as ListPreference?)
 | 
			
		||||
        if (NotificationChannels.supported()) {
 | 
			
		||||
            findPreference<Preference>(TextSecurePreferences.NOTIFICATION_PRIORITY_PREF)!!.onPreferenceClickListener =
 | 
			
		||||
                Preference.OnPreferenceClickListener {
 | 
			
		||||
                    val intent = Intent(Settings.ACTION_CHANNEL_NOTIFICATION_SETTINGS)
 | 
			
		||||
                    intent.putExtra(
 | 
			
		||||
                        Settings.EXTRA_CHANNEL_ID, NotificationChannels.getMessagesChannel(requireContext())
 | 
			
		||||
                    )
 | 
			
		||||
                    intent.putExtra(Settings.EXTRA_APP_PACKAGE, requireContext().packageName)
 | 
			
		||||
                    startActivity(intent)
 | 
			
		||||
                    true
 | 
			
		||||
                }
 | 
			
		||||
        }
 | 
			
		||||
        initializeRingtoneSummary(findPreference(TextSecurePreferences.RINGTONE_PREF))
 | 
			
		||||
        initializeMessageVibrateSummary(findPreference<Preference>(TextSecurePreferences.VIBRATE_PREF) as SwitchPreferenceCompat?)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
 | 
			
		||||
        addPreferencesFromResource(R.xml.preferences_notifications)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
 | 
			
		||||
        if (requestCode == 1 && resultCode == Activity.RESULT_OK && data != null) {
 | 
			
		||||
            var uri = data.getParcelableExtra<Uri>(RingtoneManager.EXTRA_RINGTONE_PICKED_URI)
 | 
			
		||||
            if (Settings.System.DEFAULT_NOTIFICATION_URI == uri) {
 | 
			
		||||
                NotificationChannels.updateMessageRingtone(requireContext(), uri)
 | 
			
		||||
                prefs.removeNotificationRingtone()
 | 
			
		||||
            } else {
 | 
			
		||||
                uri = uri ?: Uri.EMPTY
 | 
			
		||||
                NotificationChannels.updateMessageRingtone(requireContext(), uri)
 | 
			
		||||
                prefs.setNotificationRingtone(uri.toString())
 | 
			
		||||
            }
 | 
			
		||||
            initializeRingtoneSummary(findPreference(TextSecurePreferences.RINGTONE_PREF))
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private inner class RingtoneSummaryListener : Preference.OnPreferenceChangeListener {
 | 
			
		||||
        override fun onPreferenceChange(preference: Preference, newValue: Any): Boolean {
 | 
			
		||||
            val value = newValue as? Uri
 | 
			
		||||
            if (value == null || TextUtils.isEmpty(value.toString())) {
 | 
			
		||||
                preference.setSummary(R.string.preferences__silent)
 | 
			
		||||
            } else {
 | 
			
		||||
                RingtoneManager.getRingtone(activity, value)
 | 
			
		||||
                    ?.getTitle(activity)
 | 
			
		||||
                    ?.let { preference.summary = it }
 | 
			
		||||
 | 
			
		||||
            }
 | 
			
		||||
            return true
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private fun initializeRingtoneSummary(pref: Preference?) {
 | 
			
		||||
        val listener = pref!!.onPreferenceChangeListener as RingtoneSummaryListener?
 | 
			
		||||
        val uri = prefs.getNotificationRingtone()
 | 
			
		||||
        listener!!.onPreferenceChange(pref, uri)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private fun initializeMessageVibrateSummary(pref: SwitchPreferenceCompat?) {
 | 
			
		||||
        pref!!.isChecked = prefs.isNotificationVibrateEnabled()
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private inner class NotificationPrivacyListener : ListSummaryListener() {
 | 
			
		||||
        @SuppressLint("StaticFieldLeak")
 | 
			
		||||
        override fun onPreferenceChange(preference: Preference, value: Any): Boolean {
 | 
			
		||||
            object : AsyncTask<Void?, Void?, Void?>() {
 | 
			
		||||
                override fun doInBackground(vararg params: Void?): Void? {
 | 
			
		||||
                    ApplicationContext.getInstance(activity).messageNotifier.updateNotification(activity!!)
 | 
			
		||||
                    return null
 | 
			
		||||
                }
 | 
			
		||||
            }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR)
 | 
			
		||||
            return super.onPreferenceChange(preference, value)
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    companion object {
 | 
			
		||||
        @Suppress("unused")
 | 
			
		||||
        private val TAG = NotificationsPreferenceFragment::class.java.simpleName
 | 
			
		||||
        fun getSummary(context: Context): CharSequence = when (isNotificationsEnabled(context)) {
 | 
			
		||||
                true -> R.string.ApplicationPreferencesActivity_On
 | 
			
		||||
                false -> R.string.ApplicationPreferencesActivity_Off
 | 
			
		||||
            }.let(context::getString)
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
					Loading…
					
					
				
		Reference in New Issue