diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobmanager/Constraint.java b/app/src/main/java/org/thoughtcrime/securesms/jobmanager/Constraint.java index 854804d746..dd766bbbb3 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobmanager/Constraint.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobmanager/Constraint.java @@ -8,11 +8,6 @@ public interface Constraint { boolean isMet(); - @NonNull String getFactoryKey(); - - @RequiresApi(26) - void applyToJobInfo(@NonNull JobInfo.Builder jobInfoBuilder); - interface Factory { T create(); } diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobmanager/impl/NetworkConstraint.java b/app/src/main/java/org/thoughtcrime/securesms/jobmanager/impl/NetworkConstraint.java index 1546883b85..7b128bf9fe 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobmanager/impl/NetworkConstraint.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobmanager/impl/NetworkConstraint.java @@ -28,17 +28,6 @@ public class NetworkConstraint implements Constraint { return activeNetworkInfo != null && activeNetworkInfo.isConnected(); } - @Override - public @NonNull String getFactoryKey() { - return KEY; - } - - @RequiresApi(26) - @Override - public void applyToJobInfo(@NonNull JobInfo.Builder jobInfoBuilder) { - jobInfoBuilder.setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY); - } - public static final class Factory implements Constraint.Factory { private final Application application; diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/LongClickCopySpan.java b/app/src/main/java/org/thoughtcrime/securesms/util/LongClickCopySpan.java deleted file mode 100644 index e3447b3cec..0000000000 --- a/app/src/main/java/org/thoughtcrime/securesms/util/LongClickCopySpan.java +++ /dev/null @@ -1,61 +0,0 @@ -package org.thoughtcrime.securesms.util; - -import android.content.ClipData; -import android.content.Context; -import android.text.TextPaint; -import android.text.style.URLSpan; -import android.view.View; -import android.widget.Toast; - -import androidx.annotation.ColorInt; -import androidx.annotation.NonNull; - -import network.loki.messenger.R; - -public class LongClickCopySpan extends URLSpan { - private static final String PREFIX_MAILTO = "mailto:"; - private static final String PREFIX_TEL = "tel:"; - - private boolean isHighlighted; - @ColorInt - private int highlightColor; - - public LongClickCopySpan(String url) { - super(url); - } - - void onLongClick(View widget) { - Context context = widget.getContext(); - String preparedUrl = prepareUrl(getURL()); - copyUrl(context, preparedUrl); - Toast.makeText(context, - context.getString(R.string.ConversationItem_copied_text, preparedUrl), Toast.LENGTH_SHORT).show(); - } - - @Override - public void updateDrawState(@NonNull TextPaint ds) { - super.updateDrawState(ds); - ds.bgColor = highlightColor; - ds.setUnderlineText(!isHighlighted); - } - - private void copyUrl(Context context, String url) { - copyUriSdk11(context, url); - } - - private void copyUriSdk11(Context context, String url) { - android.content.ClipboardManager clipboard = - (android.content.ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE); - ClipData clip = ClipData.newPlainText(context.getString(R.string.app_name), url); - clipboard.setPrimaryClip(clip); - } - - private String prepareUrl(String url) { - if (url.startsWith(PREFIX_MAILTO)) { - return url.substring(PREFIX_MAILTO.length()); - } else if (url.startsWith(PREFIX_TEL)) { - return url.substring(PREFIX_TEL.length()); - } - return url; - } -} diff --git a/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioManagerCompat.java b/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioManagerCompat.java index 315737c51c..50af4f36c0 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioManagerCompat.java +++ b/app/src/main/java/org/thoughtcrime/securesms/webrtc/audio/AudioManagerCompat.java @@ -10,7 +10,6 @@ import android.media.AudioManager; import android.media.SoundPool; import androidx.annotation.NonNull; -import androidx.annotation.RequiresApi; import org.session.libsession.utilities.ServiceUtil; import org.session.libsignal.utilities.Log; @@ -174,44 +173,4 @@ public abstract class AudioManagerCompat { audioFocusRequest = null; } } - - @RequiresApi(21) - private static class Api21AudioManagerCompat extends AudioManagerCompat { - - private static AudioAttributes AUDIO_ATTRIBUTES = new AudioAttributes.Builder() - .setContentType(AudioAttributes.CONTENT_TYPE_SPEECH) - .setUsage(AudioAttributes.USAGE_VOICE_COMMUNICATION) - .setLegacyStreamType(AudioManager.STREAM_VOICE_CALL) - .build(); - - private Api21AudioManagerCompat(@NonNull Context context) { - super(context); - } - - @Override - public SoundPool createSoundPool() { - return new SoundPool.Builder() - .setAudioAttributes(AUDIO_ATTRIBUTES) - .setMaxStreams(1) - .build(); - } - - @Override - public void requestCallAudioFocus() { - int result = audioManager.requestAudioFocus(onAudioFocusChangeListener, AudioManager.STREAM_VOICE_CALL, AUDIOFOCUS_GAIN); - - if (result != AudioManager.AUDIOFOCUS_REQUEST_GRANTED) { - Log.w(TAG, "Audio focus not granted. Result code: " + result); - } - } - - @Override - public void abandonCallAudioFocus() { - int result = audioManager.abandonAudioFocus(onAudioFocusChangeListener); - - if (result != AudioManager.AUDIOFOCUS_REQUEST_GRANTED) { - Log.w(TAG, "Audio focus abandon failed. Result code: " + result); - } - } - } }