mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-19 08:09:12 +01:00
committed by
Moxie Marlinspike
parent
60ab71099f
commit
59f2446a2b
@@ -16,7 +16,6 @@
|
||||
*/
|
||||
package org.thoughtcrime.securesms;
|
||||
|
||||
import android.annotation.TargetApi;
|
||||
import android.content.ActivityNotFoundException;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
@@ -98,7 +97,7 @@ import org.thoughtcrime.securesms.mms.OutgoingMediaMessage;
|
||||
import org.thoughtcrime.securesms.mms.OutgoingSecureMediaMessage;
|
||||
import org.thoughtcrime.securesms.mms.Slide;
|
||||
import org.thoughtcrime.securesms.notifications.MessageNotifier;
|
||||
import org.thoughtcrime.securesms.providers.CaptureProvider;
|
||||
import org.thoughtcrime.securesms.providers.PersistentBlobProvider;
|
||||
import org.thoughtcrime.securesms.recipients.Recipient;
|
||||
import org.thoughtcrime.securesms.recipients.RecipientFactory;
|
||||
import org.thoughtcrime.securesms.recipients.RecipientFormattingException;
|
||||
@@ -201,7 +200,6 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
private DynamicTheme dynamicTheme = new DynamicTheme();
|
||||
private DynamicLanguage dynamicLanguage = new DynamicLanguage();
|
||||
|
||||
@TargetApi(Build.VERSION_CODES.KITKAT)
|
||||
@Override
|
||||
protected void onPreCreate() {
|
||||
dynamicTheme.onCreate(this);
|
||||
@@ -311,13 +309,13 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
switch (reqCode) {
|
||||
case PICK_IMAGE:
|
||||
boolean isGif = MediaUtil.isGif(MediaUtil.getMimeType(this, data.getData()));
|
||||
setMedia(data.getData(), isGif ? MediaType.GIF : MediaType.IMAGE, false);
|
||||
setMedia(data.getData(), isGif ? MediaType.GIF : MediaType.IMAGE);
|
||||
break;
|
||||
case PICK_VIDEO:
|
||||
setMedia(data.getData(), MediaType.VIDEO, false);
|
||||
setMedia(data.getData(), MediaType.VIDEO);
|
||||
break;
|
||||
case PICK_AUDIO:
|
||||
setMedia(data.getData(), MediaType.AUDIO, false);
|
||||
setMedia(data.getData(), MediaType.AUDIO);
|
||||
break;
|
||||
case PICK_CONTACT_INFO:
|
||||
addAttachmentContactInfo(data.getData());
|
||||
@@ -331,7 +329,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
break;
|
||||
case TAKE_PHOTO:
|
||||
if (attachmentManager.getCaptureUri() != null) {
|
||||
setMedia(attachmentManager.getCaptureUri(), MediaType.IMAGE, true);
|
||||
setMedia(attachmentManager.getCaptureUri(), MediaType.IMAGE);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -717,9 +715,9 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
|
||||
if (draftText != null) composeText.setText(draftText);
|
||||
|
||||
if (draftImage != null) setMedia(draftImage, MediaType.IMAGE, false);
|
||||
else if (draftAudio != null) setMedia(draftAudio, MediaType.AUDIO, false);
|
||||
else if (draftVideo != null) setMedia(draftVideo, MediaType.VIDEO, false);
|
||||
if (draftImage != null) setMedia(draftImage, MediaType.IMAGE);
|
||||
else if (draftAudio != null) setMedia(draftAudio, MediaType.AUDIO);
|
||||
else if (draftVideo != null) setMedia(draftVideo, MediaType.VIDEO);
|
||||
|
||||
if (draftText == null && draftImage == null && draftAudio == null && draftVideo == null) {
|
||||
initializeDraftFromDatabase();
|
||||
@@ -753,11 +751,11 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
if (draft.getType().equals(Draft.TEXT)) {
|
||||
composeText.setText(draft.getValue());
|
||||
} else if (draft.getType().equals(Draft.IMAGE)) {
|
||||
setMedia(Uri.parse(draft.getValue()), MediaType.IMAGE, false);
|
||||
setMedia(Uri.parse(draft.getValue()), MediaType.IMAGE);
|
||||
} else if (draft.getType().equals(Draft.AUDIO)) {
|
||||
setMedia(Uri.parse(draft.getValue()), MediaType.AUDIO, false);
|
||||
setMedia(Uri.parse(draft.getValue()), MediaType.AUDIO);
|
||||
} else if (draft.getType().equals(Draft.VIDEO)) {
|
||||
setMedia(Uri.parse(draft.getValue()), MediaType.VIDEO, false);
|
||||
setMedia(Uri.parse(draft.getValue()), MediaType.VIDEO);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1012,8 +1010,8 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
}
|
||||
}
|
||||
|
||||
private void setMedia(Uri uri, MediaType mediaType, boolean isCapture) {
|
||||
attachmentManager.setMedia(masterSecret, uri, mediaType, getCurrentMediaConstraints(), isCapture);
|
||||
private void setMedia(Uri uri, MediaType mediaType) {
|
||||
attachmentManager.setMedia(masterSecret, uri, mediaType, getCurrentMediaConstraints());
|
||||
}
|
||||
|
||||
private void addAttachmentContactInfo(Uri contactUri) {
|
||||
@@ -1053,7 +1051,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
drafts.add(new Draft(Draft.TEXT, composeText.getText().toString()));
|
||||
}
|
||||
|
||||
for (Slide slide : attachmentManager.getSlideDeck().getSlides()) {
|
||||
for (Slide slide : attachmentManager.buildSlideDeck().getSlides()) {
|
||||
if (slide.hasAudio()) drafts.add(new Draft(Draft.AUDIO, slide.getUri().toString()));
|
||||
else if (slide.hasVideo()) drafts.add(new Draft(Draft.VIDEO, slide.getUri().toString()));
|
||||
else if (slide.hasImage()) drafts.add(new Draft(Draft.IMAGE, slide.getUri().toString()));
|
||||
@@ -1263,7 +1261,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
{
|
||||
final Context context = getApplicationContext();
|
||||
OutgoingMediaMessage outgoingMessage = new OutgoingMediaMessage(recipients,
|
||||
attachmentManager.getSlideDeck(),
|
||||
attachmentManager.buildSlideDeck(),
|
||||
getMessage(),
|
||||
System.currentTimeMillis(),
|
||||
distributionType);
|
||||
@@ -1336,7 +1334,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||
|
||||
@Override
|
||||
public void onImageCapture(@NonNull final byte[] imageBytes) {
|
||||
setMedia(CaptureProvider.getInstance(this).create(masterSecret, recipients, imageBytes), MediaType.IMAGE, true);
|
||||
setMedia(PersistentBlobProvider.getInstance(this).create(masterSecret, recipients, imageBytes), MediaType.IMAGE);
|
||||
quickAttachmentDrawer.hide(false);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user