Add some developer utils.

master
Greyson Parrelli 2020-02-13 16:02:12 -05:00
parent 4e7a92637c
commit 70d5b798b2
3 changed files with 19 additions and 0 deletions

View File

@ -78,8 +78,10 @@ import org.thoughtcrime.securesms.util.DynamicLanguage;
import org.thoughtcrime.securesms.util.DynamicTheme;
import org.thoughtcrime.securesms.util.FeatureFlags;
import org.thoughtcrime.securesms.util.IdentityUtil;
import org.thoughtcrime.securesms.util.ServiceUtil;
import org.thoughtcrime.securesms.util.TextSecurePreferences;
import org.thoughtcrime.securesms.util.ThemeUtil;
import org.thoughtcrime.securesms.util.Util;
import org.thoughtcrime.securesms.util.ViewUtil;
import org.thoughtcrime.securesms.util.concurrent.ListenableFuture;
import org.thoughtcrime.securesms.util.concurrent.SignalExecutors;
@ -235,6 +237,13 @@ public class RecipientPreferenceActivity extends PassphraseRequiredActionBarActi
this.avatar.setBackgroundColor(recipient.getColor().toActionBarColor(this));
this.toolbarLayout.setTitle(recipient.toShortString(this));
this.toolbarLayout.setContentScrimColor(recipient.getColor().toActionBarColor(this));
if (recipient.getUuid().isPresent()) {
toolbarLayout.setOnLongClickListener(v -> {
Util.copyToClipboard(this, recipient.getUuid().get().toString());
ServiceUtil.getVibrator(this).vibrate(200);
return true;
});
}
}
@Override

View File

@ -5,6 +5,8 @@ import android.app.ActivityManager;
import android.app.AlarmManager;
import android.app.NotificationManager;
import android.app.job.JobScheduler;
import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
import android.hardware.display.DisplayManager;
import android.location.LocationManager;
@ -69,6 +71,10 @@ public class ServiceUtil {
return (AccessibilityManager) context.getSystemService(Context.ACCESSIBILITY_SERVICE);
}
public static ClipboardManager getClipboardManager(@NonNull Context context) {
return (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);
}
@RequiresApi(26)
public static JobScheduler getJobScheduler(Context context) {
return (JobScheduler) context.getSystemService(JobScheduler.class);

View File

@ -569,6 +569,10 @@ public class Util {
}
}
public static void copyToClipboard(@NonNull Context context, @NonNull String text) {
ServiceUtil.getClipboardManager(context).setPrimaryClip(ClipData.newPlainText("text", text));
}
private static Handler getHandler() {
if (handler == null) {
synchronized (Util.class) {