mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-05-02 14:43:09 +01:00
Migrate from SQLite and ciphertext blobs to SQLCipher + KeyStore
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package org.thoughtcrime.securesms.scribbles;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.annotation.TargetApi;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Bitmap;
|
||||
@@ -49,14 +50,12 @@ public class ScribbleActivity extends PassphraseRequiredActionBarActivity implem
|
||||
private VerticalSlideColorPicker colorPicker;
|
||||
private ScribbleToolbar toolbar;
|
||||
private ScribbleView scribbleView;
|
||||
private MasterSecret masterSecret;
|
||||
private GlideRequests glideRequests;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState, @NonNull MasterSecret masterSecret) {
|
||||
setContentView(R.layout.scribble_activity);
|
||||
|
||||
this.masterSecret = masterSecret;
|
||||
this.glideRequests = GlideApp.with(this);
|
||||
this.scribbleView = findViewById(R.id.scribble_view);
|
||||
this.toolbar = findViewById(R.id.toolbar);
|
||||
@@ -67,7 +66,7 @@ public class ScribbleActivity extends PassphraseRequiredActionBarActivity implem
|
||||
|
||||
scribbleView.setMotionViewCallback(motionViewCallback);
|
||||
scribbleView.setDrawingMode(false);
|
||||
scribbleView.setImage(masterSecret, glideRequests, getIntent().getData());
|
||||
scribbleView.setImage(glideRequests, getIntent().getData());
|
||||
|
||||
colorPicker.setOnColorChangeListener(this);
|
||||
colorPicker.setVisibility(View.GONE);
|
||||
@@ -144,6 +143,7 @@ public class ScribbleActivity extends PassphraseRequiredActionBarActivity implem
|
||||
return textLayer;
|
||||
}
|
||||
|
||||
@SuppressLint("StaticFieldLeak")
|
||||
@Override
|
||||
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
@@ -231,7 +231,7 @@ public class ScribbleActivity extends PassphraseRequiredActionBarActivity implem
|
||||
baos = null;
|
||||
result = null;
|
||||
|
||||
Uri uri = provider.create(masterSecret, data, MediaUtil.IMAGE_JPEG, null);
|
||||
Uri uri = provider.create(ScribbleActivity.this, data, MediaUtil.IMAGE_JPEG, null);
|
||||
Intent intent = new Intent();
|
||||
intent.setData(uri);
|
||||
setResult(RESULT_OK, intent);
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
*/
|
||||
package org.thoughtcrime.securesms.scribbles.widget;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.annotation.TargetApi;
|
||||
import android.content.Context;
|
||||
import android.graphics.Bitmap;
|
||||
@@ -34,7 +35,6 @@ import com.bumptech.glide.load.engine.DiskCacheStrategy;
|
||||
import com.bumptech.glide.request.target.Target;
|
||||
|
||||
import org.thoughtcrime.securesms.R;
|
||||
import org.thoughtcrime.securesms.crypto.MasterSecret;
|
||||
import org.thoughtcrime.securesms.mms.DecryptableStreamUriLoader.DecryptableUri;
|
||||
import org.thoughtcrime.securesms.mms.GlideRequests;
|
||||
import org.thoughtcrime.securesms.scribbles.widget.entity.MotionEntity;
|
||||
@@ -53,8 +53,7 @@ public class ScribbleView extends FrameLayout {
|
||||
private MotionView motionView;
|
||||
private CanvasView canvasView;
|
||||
|
||||
private @Nullable Uri imageUri;
|
||||
private @Nullable MasterSecret masterSecret;
|
||||
private @Nullable Uri imageUri;
|
||||
|
||||
public ScribbleView(Context context) {
|
||||
super(context);
|
||||
@@ -77,22 +76,22 @@ public class ScribbleView extends FrameLayout {
|
||||
initialize(context);
|
||||
}
|
||||
|
||||
public void setImage(@NonNull MasterSecret masterSecret, @NonNull GlideRequests glideRequests, @NonNull Uri uri) {
|
||||
public void setImage(@NonNull GlideRequests glideRequests, @NonNull Uri uri) {
|
||||
this.imageUri = uri;
|
||||
this.masterSecret = masterSecret;
|
||||
|
||||
glideRequests.load(new DecryptableUri(masterSecret, uri))
|
||||
glideRequests.load(new DecryptableUri(uri))
|
||||
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||
.fitCenter()
|
||||
.into(imageView);
|
||||
}
|
||||
|
||||
@SuppressLint("StaticFieldLeak")
|
||||
public @NonNull ListenableFuture<Bitmap> getRenderedImage(@NonNull GlideRequests glideRequests) {
|
||||
final SettableFuture<Bitmap> future = new SettableFuture<>();
|
||||
final Context context = getContext();
|
||||
final boolean isLowMemory = Util.isLowMemory(context);
|
||||
|
||||
if (imageUri == null || masterSecret == null) {
|
||||
if (imageUri == null) {
|
||||
future.set(null);
|
||||
return future;
|
||||
}
|
||||
@@ -110,7 +109,7 @@ public class ScribbleView extends FrameLayout {
|
||||
}
|
||||
|
||||
return glideRequests.asBitmap()
|
||||
.load(new DecryptableUri(masterSecret, imageUri))
|
||||
.load(new DecryptableUri(imageUri))
|
||||
.diskCacheStrategy(DiskCacheStrategy.NONE)
|
||||
.skipMemoryCache(true)
|
||||
.into(width, height)
|
||||
|
||||
Reference in New Issue
Block a user