diff --git a/MessengerProj/src/main/java/com/b44t/messenger/MessageObject.java b/MessengerProj/src/main/java/com/b44t/messenger/MessageObject.java index 7fa6c526a..0288ecedf 100644 --- a/MessengerProj/src/main/java/com/b44t/messenger/MessageObject.java +++ b/MessengerProj/src/main/java/com/b44t/messenger/MessageObject.java @@ -50,7 +50,7 @@ public class MessageObject { public CharSequence caption; public final MessageObject replyMessageObject = null; - public int type = 1000; // 8: gif, 13: sticker + public int type = 1000; // 4: unused-geo, 8: gif, 12: unused-contact, 13: sticker public int contentType; // one of ChatActivity.ROWTYPE_MESSAGE_CELL, .ROWTYPE_ACTION_CELL or .ROWTYPE_UNREAD_CELL public float audioProgress; @@ -175,16 +175,16 @@ public class MessageObject { } } else if (messageOwner.media instanceof TLRPC.TL_messageMediaPhoto) { type = 1; - } else if (messageOwner.media instanceof TLRPC.TL_messageMediaGeo || messageOwner.media instanceof TLRPC.TL_messageMediaVenue) { - type = 4; + /*} else if (messageOwner.media instanceof TLRPC.TL_messageMediaGeo || messageOwner.media instanceof TLRPC.TL_messageMediaVenue) { + type = 4;*/ } else if (isVideo()) { type = 3; } else if (isVoice()) { type = 2; } else if (isMusic()) { type = 14; - } else if (messageOwner.media instanceof TLRPC.TL_messageMediaContact) { - type = 12; + /*} else if (messageOwner.media instanceof TLRPC.TL_messageMediaContact) { + type = 12;*/ /*} else if (messageOwner.media instanceof TLRPC.TL_messageMediaUnsupported) { type = 0;*/ } else if (messageOwner.media instanceof TLRPC.TL_messageMediaDocument) { @@ -885,8 +885,8 @@ public class MessageObject { return height; } else if (type == 2) { return AndroidUtilities.dp(72); - } else if (type == 12) { - return AndroidUtilities.dp(71); + /*} else if (type == 12) -- was: contact { + return AndroidUtilities.dp(71);*/ } else if (type == 9) { return AndroidUtilities.dp(100); } else if (type == 4) { diff --git a/MessengerProj/src/main/java/com/b44t/messenger/MusicBrowserService.java b/MessengerProj/src/main/java/com/b44t/messenger/MusicBrowserService.java index 0c867e642..16ef04b46 100644 --- a/MessengerProj/src/main/java/com/b44t/messenger/MusicBrowserService.java +++ b/MessengerProj/src/main/java/com/b44t/messenger/MusicBrowserService.java @@ -318,7 +318,7 @@ public class MusicBrowserService extends MediaBrowserService implements Notifica } } if (avatar == null || bitmap == null) { - builder.setIconUri(Uri.parse("android.resource://" + getApplicationContext().getPackageName() + "/drawable/contact_blue")); + builder.setIconUri(Uri.parse("android.resource://" + getApplicationContext().getPackageName() + "/drawable/audiosend_play")); } mediaItems.add(new MediaBrowser.MediaItem(builder.build(), MediaBrowser.MediaItem.FLAG_BROWSABLE)); } diff --git a/MessengerProj/src/main/java/com/b44t/messenger/NotificationCenter.java b/MessengerProj/src/main/java/com/b44t/messenger/NotificationCenter.java index 3ed4d61eb..36a96b25d 100644 --- a/MessengerProj/src/main/java/com/b44t/messenger/NotificationCenter.java +++ b/MessengerProj/src/main/java/com/b44t/messenger/NotificationCenter.java @@ -57,8 +57,6 @@ public class NotificationCenter { public static final int stickersDidLoaded = totalEvents++; public static final int didReplacedPhotoInMemCache = totalEvents++; public static final int musicDidLoaded = totalEvents++; - public static final int locationPermissionGranted = totalEvents++; - public static final int wasUnableToFindCurrentLocation = totalEvents++; public static final int reloadHints = totalEvents++; public static final int httpFileDidLoaded = totalEvents++; diff --git a/MessengerProj/src/main/java/com/b44t/messenger/SendMessagesHelper.java b/MessengerProj/src/main/java/com/b44t/messenger/SendMessagesHelper.java index 5f3a837ed..014e9d192 100644 --- a/MessengerProj/src/main/java/com/b44t/messenger/SendMessagesHelper.java +++ b/MessengerProj/src/main/java/com/b44t/messenger/SendMessagesHelper.java @@ -44,155 +44,6 @@ import java.util.HashMap; public class SendMessagesHelper implements NotificationCenter.NotificationCenterDelegate { - //private TLRPC.ChatFull currentChatInfo = null; - //private HashMap> delayedMessages = new HashMap<>(); - //private HashMap unsentMessages = new HashMap<>(); - //private HashMap sendingMessages = new HashMap<>(); - //private HashMap waitingForLocation = new HashMap<>(); - //private HashMap waitingForCallback = new HashMap<>(); - - /* - private LocationProvider locationProvider = new LocationProvider(new LocationProvider.LocationProviderDelegate() { - @Override - public void onLocationAcquired(Location location) { - sendLocation(location); - waitingForLocation.clear(); - } - - @Override - public void onUnableLocationAcquire() { - HashMap waitingForLocationCopy = new HashMap<>(waitingForLocation); - NotificationCenter.getInstance().postNotificationName(NotificationCenter.wasUnableToFindCurrentLocation, waitingForLocationCopy); - waitingForLocation.clear(); - } - }); - - public static class LocationProvider { - - public interface LocationProviderDelegate { - void onLocationAcquired(Location location); - void onUnableLocationAcquire(); - } - - private LocationProviderDelegate delegate; - private LocationManager locationManager; - private GpsLocationListener gpsLocationListener = new GpsLocationListener(); - private GpsLocationListener networkLocationListener = new GpsLocationListener(); - private Runnable locationQueryCancelRunnable; - private Location lastKnownLocation; - - private class GpsLocationListener implements LocationListener { - - @Override - public void onLocationChanged(Location location) { - if (location == null || locationQueryCancelRunnable == null) { - return; - } - FileLog.e("messenger", "found location " + location); - lastKnownLocation = location; - if (location.getAccuracy() < 100) { - if (delegate != null) { - delegate.onLocationAcquired(location); - } - if (locationQueryCancelRunnable != null) { - AndroidUtilities.cancelRunOnUIThread(locationQueryCancelRunnable); - } - cleanup(); - } - } - - @Override - public void onStatusChanged(String provider, int status, Bundle extras) { - - } - - @Override - public void onProviderEnabled(String provider) { - - } - - @Override - public void onProviderDisabled(String provider) { - - } - } - - public LocationProvider() { - - } - - public LocationProvider(LocationProviderDelegate locationProviderDelegate) { - delegate = locationProviderDelegate; - } - - public void setDelegate(LocationProviderDelegate locationProviderDelegate) { - delegate = locationProviderDelegate; - } - - private void cleanup() { - locationManager.removeUpdates(gpsLocationListener); - locationManager.removeUpdates(networkLocationListener); - lastKnownLocation = null; - locationQueryCancelRunnable = null; - } - - public void start() { - if (locationManager == null) { - locationManager = (LocationManager) ApplicationLoader.applicationContext.getSystemService(Context.LOCATION_SERVICE); - } - try { - locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1, 0, gpsLocationListener); - } catch (Exception e) { - FileLog.e("messenger", e); - } - try { - locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 1, 0, networkLocationListener); - } catch (Exception e) { - FileLog.e("messenger", e); - } - try { - lastKnownLocation = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER); - if (lastKnownLocation == null) { - lastKnownLocation = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER); - } - } catch (Exception e) { - FileLog.e("messenger", e); - } - if (locationQueryCancelRunnable != null) { - AndroidUtilities.cancelRunOnUIThread(locationQueryCancelRunnable); - } - locationQueryCancelRunnable = new Runnable() { - @Override - public void run() { - if (locationQueryCancelRunnable != this) { - return; - } - if (delegate != null) { - if (lastKnownLocation != null) { - delegate.onLocationAcquired(lastKnownLocation); - } else { - delegate.onUnableLocationAcquire(); - } - } - cleanup(); - } - }; - AndroidUtilities.runOnUIThread(locationQueryCancelRunnable, 5000); - } - - public void stop() { - if (locationManager == null) { - return; - } - if (locationQueryCancelRunnable != null) { - AndroidUtilities.cancelRunOnUIThread(locationQueryCancelRunnable); - - } - cleanup(); - } - } - */ - private static volatile SendMessagesHelper Instance = null; public static SendMessagesHelper getInstance() { @@ -224,10 +75,8 @@ public class SendMessagesHelper implements NotificationCenter.NotificationCenter //delayedMessages.clear(); //unsentMessages.clear(); //sendingMessages.clear(); - //waitingForLocation.clear(); //waitingForCallback.clear(); //currentChatInfo = null; - //locationProvider.stop(); } /* @@ -549,26 +398,33 @@ public class SendMessagesHelper implements NotificationCenter.NotificationCenter SendMessagesHelper.getInstance().sendMessageDocument((TLRPC.TL_document) document, null, null, peer, replyingMessageObject, null); } - public void sendMessageContact(TLRPC.User user, long peer, MessageObject reply_to_msg, HashMap params) { - sendMessage__(null, null, null, user, null, peer, null, params); + public void sendMessageContact(int contact_id, int dialog_id) { + MrContact contact = MrMailbox.getContact(contact_id); + String msg = contact.getName(); + if(msg.isEmpty()) { + msg = contact.getAddr(); + } + else { + msg += ": " + contact.getAddr(); + } + SendMessagesHelper.getInstance().sendMessageText(msg, dialog_id, null); } public void sendMessageDocument(TLRPC.TL_document document, VideoEditedInfo videoEditedInfo, String path, long peer, MessageObject reply_to_msg, HashMap params) { - sendMessage__(null, null, videoEditedInfo, null, document, peer, path, params); + sendMessage__(null, null, videoEditedInfo, document, peer, path, params); } public void sendMessageText(String message, long peer, HashMap params) { - sendMessage__(message, null, null, null, null, peer, null, params); + sendMessage__(message, null, null, null, peer, null, params); } public void sendMessagePhoto(TLRPC.TL_photo photo, String path, long peer, MessageObject reply_to_msg, HashMap params) { - sendMessage__(null, photo, null, null, null, peer, path, params); + sendMessage__(null, photo, null, null, peer, path, params); } private void sendMessage__(String message, TLRPC.TL_photo photo, VideoEditedInfo videoEditedInfo, - TLRPC.User user, TLRPC.TL_document document, long peer, String path, @@ -607,21 +463,6 @@ public class SendMessagesHelper implements NotificationCenter.NotificationCenter TLRPC.FileLocation location1 = photo.sizes.get(photo.sizes.size() - 1).location; newMsg.attachPath = FileLoader.getPathToAttach(location1, true).toString(); } - } else if (user != null) { - newMsg = new TLRPC.TL_message(); - newMsg.media = new TLRPC.TL_messageMediaContact(); - newMsg.media.phone_number = user.phone; - newMsg.media.first_name = user.first_name; - newMsg.media.last_name = user.last_name; - newMsg.media.user_id = user.id; - if (newMsg.media.first_name == null) { - user.first_name = newMsg.media.first_name = ""; - } - if (newMsg.media.last_name == null) { - user.last_name = newMsg.media.last_name = ""; - } - newMsg.message = ""; - type = 6; } else if (document != null) { // AUDIO, VIDEO etc. newMsg = new TLRPC.TL_message(); @@ -727,11 +568,6 @@ public class SendMessagesHelper implements NotificationCenter.NotificationCenter media.id.access_hash = document.access_hash; inputMedia = media; } - } else if (type == 6) { - inputMedia = new TLRPC.TL_inputMediaContact(); - inputMedia.phone_number = user.phone; - inputMedia.first_name = user.first_name; - inputMedia.last_name = user.last_name; } else if (type == 7 ) { if (document.access_hash == 0) { if ( originalPath != null && originalPath.length() > 0 && originalPath.startsWith("http") && params != null) { diff --git a/MessengerProj/src/main/java/com/b44t/messenger/TLRPC.java b/MessengerProj/src/main/java/com/b44t/messenger/TLRPC.java index 179086bb0..36e47b3cf 100644 --- a/MessengerProj/src/main/java/com/b44t/messenger/TLRPC.java +++ b/MessengerProj/src/main/java/com/b44t/messenger/TLRPC.java @@ -109,21 +109,12 @@ public class TLRPC { public static class TL_messageMediaEmpty extends MessageMedia { } - public static class TL_messageMediaVenue extends MessageMedia { - } - public static class TL_messageMediaDocument extends MessageMedia { } - public static class TL_messageMediaContact extends MessageMedia { - } - public static class TL_messageMediaPhoto extends MessageMedia { } - public static class TL_messageMediaGeo extends MessageMedia { - } - public static class PeerNotifySettings extends TLObject { public int flags; public boolean silent; @@ -139,14 +130,6 @@ public class TLRPC { public ArrayList documents = new ArrayList<>(); } - public static class InputGeoPoint extends TLObject { - public double lat; - public double _long; - } - - public static class TL_inputGeoPoint extends InputGeoPoint { - } - public static class Audio extends TLObject { public long id; public int date; @@ -206,9 +189,6 @@ public class TLRPC { public boolean min; } - public static class TL_userContact_old2 extends User { - } - public static class Video extends TLObject { public long id; public int user_id; @@ -259,21 +239,13 @@ public class TLRPC { public String mime_type; public ArrayList attributes = new ArrayList<>(); public String caption; - public InputGeoPoint geo_point; public String title; public String address; public String provider; - public String venue_id; - public String phone_number; - public String first_name; - public String last_name; public String url; public String q; } - public static class TL_inputMediaContact extends InputMedia { - } - public static class TL_inputMediaUploadedThumbDocument extends InputMedia { } @@ -284,15 +256,9 @@ public class TLRPC { public static class TL_inputMediaGifExternal extends InputMedia { } - public static class TL_inputMediaGeoPoint extends InputMedia { - } - public static class TL_inputMediaUploadedPhoto extends InputMedia { } - public static class TL_inputMediaVenue extends InputMedia { - } - public static class TL_inputMediaUploadedDocument extends InputMedia { } @@ -432,12 +398,8 @@ public class TLRPC { public String title; public String address; public String provider; - public String venue_id; public Document document; public String caption; - public String phone_number; - public String first_name; - public String last_name; public int user_id; public WebPage webpage; } diff --git a/MessengerProj/src/main/java/com/b44t/ui/ActionBar/Theme.java b/MessengerProj/src/main/java/com/b44t/ui/ActionBar/Theme.java index 8a1750336..7a7fe702c 100644 --- a/MessengerProj/src/main/java/com/b44t/ui/ActionBar/Theme.java +++ b/MessengerProj/src/main/java/com/b44t/ui/ActionBar/Theme.java @@ -185,7 +185,6 @@ public class Theme { public static Drawable shareIconDrawable; - public static Drawable[] contactDrawable = new Drawable[2]; public static Drawable[][] fileStatesDrawable = new Drawable[10][2]; public static Drawable[][] photoStatesDrawables = new Drawable[13][2]; public static Drawable[] docMenuDrawable = new Drawable[4]; @@ -267,9 +266,6 @@ public class Theme { docMenuDrawable[2] = context.getResources().getDrawable(R.drawable.doc_actions_b_s); docMenuDrawable[3] = context.getResources().getDrawable(R.drawable.video_actions); - contactDrawable[0] = context.getResources().getDrawable(R.drawable.contact_blue); - contactDrawable[1] = context.getResources().getDrawable(R.drawable.contact_green); - shareIconDrawable = context.getResources().getDrawable(R.drawable.ic_ab_reply); cornerOuter[0] = context.getResources().getDrawable(R.drawable.corner_out_tl); diff --git a/MessengerProj/src/main/java/com/b44t/ui/Cells/ChatMessageCell.java b/MessengerProj/src/main/java/com/b44t/ui/Cells/ChatMessageCell.java index 869744f2c..6230e0afc 100644 --- a/MessengerProj/src/main/java/com/b44t/ui/Cells/ChatMessageCell.java +++ b/MessengerProj/src/main/java/com/b44t/ui/Cells/ChatMessageCell.java @@ -689,7 +689,7 @@ public class ChatMessageCell extends BaseCell implements SeekBar.SeekBarDelegate */ private boolean checkOtherButtonMotionEvent(MotionEvent event) { - if (documentAttachType != DOCUMENT_ATTACH_TYPE_DOCUMENT && currentMessageObject.type != 12 && documentAttachType != DOCUMENT_ATTACH_TYPE_MUSIC && documentAttachType != DOCUMENT_ATTACH_TYPE_VIDEO && documentAttachType != DOCUMENT_ATTACH_TYPE_GIF && currentMessageObject.type != 8) { + if (documentAttachType != DOCUMENT_ATTACH_TYPE_DOCUMENT && documentAttachType != DOCUMENT_ATTACH_TYPE_MUSIC && documentAttachType != DOCUMENT_ATTACH_TYPE_VIDEO && documentAttachType != DOCUMENT_ATTACH_TYPE_GIF && currentMessageObject.type != 8) { return false; } @@ -739,13 +739,13 @@ public class ChatMessageCell extends BaseCell implements SeekBar.SeekBarDelegate imagePressed = true; result = true; } - if (currentMessageObject.type == 12) { + /*if (currentMessageObject.type == 12) -- contact { TLRPC.User user = MessagesController.getInstance().getUser(currentMessageObject.messageOwner.media.user_id); if (user == null) { imagePressed = false; result = false; } - } + }*/ } } if (imagePressed) { @@ -2115,7 +2115,7 @@ public class ChatMessageCell extends BaseCell implements SeekBar.SeekBarDelegate photoImage.setImageBitmap((Drawable) null); calcBackgroundWidth(maxWidth, timeMore, maxChildWidth); } - } else if (messageObject.type == 12) { + /*} else if (messageObject.type == 12) -- was: contact { drawName = false; drawForwardedName = true; drawPhotoImage = true; @@ -2163,7 +2163,7 @@ public class ChatMessageCell extends BaseCell implements SeekBar.SeekBarDelegate if (timeLeft < timeWidth) { totalHeight += AndroidUtilities.dp(8); } - } + }*/ } else if (messageObject.type == 2) { drawForwardedName = true; if (isTablet()) { @@ -2237,44 +2237,6 @@ public class ChatMessageCell extends BaseCell implements SeekBar.SeekBarDelegate } } } - } else if (messageObject.type == 4) { //geo - /* - double lat = messageObject.messageOwner.media.geo.lat; - double lon = messageObject.messageOwner.media.geo._long; - - if (messageObject.messageOwner.media.title != null && messageObject.messageOwner.media.title.length() > 0) { - if (isTablet()) { - backgroundWidth = Math.min(getMinTabletSide() - dp(isChat && messageObject.isFromUser() && !messageObject.isOutOwner() ? 102 : 50), dp(270)); - } else { - backgroundWidth = Math.min(displaySize.x - dp(isChat && messageObject.isFromUser() && !messageObject.isOutOwner() ? 102 : 50), dp(270)); - } - if (checkNeedDrawShareButton(messageObject)) { - backgroundWidth -= dp(20); - } - int maxWidth = backgroundWidth - dp(86 + 37); - - docTitleLayout = StaticLayoutEx.createStaticLayout(messageObject.messageOwner.media.title, locationTitlePaint, maxWidth, Layout.Alignment.ALIGN_NORMAL, 1.0f, 0.0f, false, TextUtils.TruncateAt.END, maxWidth, 2); - int lineCount = docTitleLayout.getLineCount(); - if (messageObject.messageOwner.media.address != null && messageObject.messageOwner.media.address.length() > 0) { - infoLayout = StaticLayoutEx.createStaticLayout(messageObject.messageOwner.media.address, locationAddressPaint, maxWidth, Layout.Alignment.ALIGN_NORMAL, 1.0f, 0.0f, false, TextUtils.TruncateAt.END, maxWidth, Math.min(3, 3 - lineCount)); - } else { - infoLayout = null; - } - - mediaBackground = false; - availableTimeWidth = maxWidth; - photoWidth = dp(86); - photoHeight = dp(86); - currentUrl = String.format(Locale.US, "https://maps.googleapis.com/maps/api/staticmap?center=%f,%f&zoom=15&size=72x72&maptype=roadmap&scale=%d&markers=color:red|size:mid|%f,%f&sensor=false", lat, lon, Math.min(2, (int) Math.ceil(density)), lat, lon); - } else { - availableTimeWidth = dp(200 - 14); - photoWidth = dp(200); - photoHeight = dp(100); - backgroundWidth = photoWidth + dp(12); - currentUrl = String.format(Locale.US, "https://maps.googleapis.com/maps/api/staticmap?center=%f,%f&zoom=15&size=200x100&maptype=roadmap&scale=%d&markers=color:red|size:mid|%f,%f&sensor=false", lat, lon, Math.min(2, (int) Math.ceil(density)), lat, lon); - } - photoImage.setImage(currentUrl, null, messageObject.isOutOwner() ? Theme.geoOutDrawable : Theme.geoInDrawable, null, 0); - */ } else if (messageObject.type == 13) { //webp drawBackground = false; for (int a = 0; a < messageObject.messageOwner.media.document.attributes.size(); a++) { diff --git a/MessengerProj/src/main/java/com/b44t/ui/ChatActivity.java b/MessengerProj/src/main/java/com/b44t/ui/ChatActivity.java index d123387b7..71d7ec7a5 100644 --- a/MessengerProj/src/main/java/com/b44t/ui/ChatActivity.java +++ b/MessengerProj/src/main/java/com/b44t/ui/ChatActivity.java @@ -1327,15 +1327,7 @@ public class ChatActivity extends BaseFragment implements NotificationCenter.Not fragment.setDelegate(new ContactsActivity.ContactsActivityDelegate() { @Override public void didSelectContact(final int selected_user_id) { - MrContact contact = MrMailbox.getContact(selected_user_id); - String msg = contact.getName(); - if(msg.isEmpty()) { - msg = contact.getAddr(); - } - else { - msg += ": " + contact.getAddr(); - } - SendMessagesHelper.getInstance().sendMessageText(msg, dialog_id, null); + SendMessagesHelper.getInstance().sendMessageContact(selected_user_id, (int)dialog_id); } }); presentFragment(fragment); diff --git a/MessengerProj/src/main/java/com/b44t/ui/LaunchActivity.java b/MessengerProj/src/main/java/com/b44t/ui/LaunchActivity.java index 630d90b48..a292f2224 100644 --- a/MessengerProj/src/main/java/com/b44t/ui/LaunchActivity.java +++ b/MessengerProj/src/main/java/com/b44t/ui/LaunchActivity.java @@ -27,10 +27,10 @@ import android.Manifest; import android.annotation.TargetApi; import android.app.Activity; import android.app.AlertDialog; +import android.app.Application; import android.content.ContentResolver; import android.content.DialogInterface; import android.content.Intent; -import android.content.SharedPreferences; import android.content.pm.PackageManager; import android.content.res.Configuration; import android.graphics.Point; @@ -60,8 +60,6 @@ import android.widget.Toast; import com.b44t.messenger.AndroidUtilities; import com.b44t.messenger.ContactsController; import com.b44t.messenger.ImageLoader; -import com.b44t.messenger.MessageObject; -import com.b44t.messenger.MessagesController; import com.b44t.messenger.MrChat; import com.b44t.messenger.MrMailbox; import com.b44t.messenger.SendMessagesHelper; @@ -86,23 +84,19 @@ import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.util.ArrayList; -import java.util.HashMap; -import java.util.Map; -import java.util.regex.Matcher; -import java.util.regex.Pattern; + public class LaunchActivity extends Activity implements ActionBarLayout.ActionBarLayoutDelegate, NotificationCenter.NotificationCenterDelegate, DialogsActivity.DialogsActivityDelegate { private boolean finished; private String videoPath; private String sendingText; - private TLRPC.TL_messageMediaGeo sendingLocation; private ArrayList photoPathsArray; private ArrayList documentsPathsArray; private ArrayList documentsUrisArray; private String documentsMimeType; private ArrayList documentsOriginalPathsArray; - private ArrayList contactsToSend; + private ArrayList contactsToSend; private int currentConnectionState; private static ArrayList mainFragmentsStack = new ArrayList<>(); private static ArrayList layerFragmentsStack = new ArrayList<>(); @@ -374,7 +368,6 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa NotificationCenter.getInstance().addObserver(this, NotificationCenter.mainUserInfoChanged); NotificationCenter.getInstance().addObserver(this, NotificationCenter.closeOtherAppActivities); NotificationCenter.getInstance().addObserver(this, NotificationCenter.didUpdatedConnectionState); - NotificationCenter.getInstance().addObserver(this, NotificationCenter.wasUnableToFindCurrentLocation); if (actionBarLayout.fragmentsStack.isEmpty()) { if ( MrMailbox.isConfigured()==0 ) { @@ -516,7 +509,7 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa private class VcardData { String name; - ArrayList phones = new ArrayList<>(); + ArrayList emails = new ArrayList<>(); } private boolean handleIntent(Intent intent, boolean isNew, boolean restore, boolean fromPassword) { @@ -530,9 +523,7 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa } else { boolean pushOpened = false; - //Integer push_user_id = 0; Integer push_chat_id = 0; - //Integer push_enc_id = 0; Integer open_settings = 0; long dialogId = intent != null && intent.getExtras() != null ? intent.getExtras().getLong("dialogId", 0) : 0; boolean showDialogsList = false; @@ -610,10 +601,10 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa } } } - } else if (args[0].startsWith("TEL")) { - String phone = "";//PhoneFormat.stripExceptNumbers(args[1], true); - if (phone.length() > 0) { - currentData.phones.add(phone); + } else if (args[0].startsWith("EMAIL")) { + String email = args[1]; + if (email.length() > 0) { + currentData.emails.add(email); } } } @@ -625,22 +616,20 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa } for (int a = 0; a < vcardDatas.size(); a++) { VcardData vcardData = vcardDatas.get(a); - if (vcardData.name != null && !vcardData.phones.isEmpty()) { + if (vcardData.name != null && !vcardData.emails.isEmpty()) { if (contactsToSend == null) { contactsToSend = new ArrayList<>(); } - for (int b = 0; b < vcardData.phones.size(); b++) { - String phone = vcardData.phones.get(b); - TLRPC.User user = new TLRPC.TL_userContact_old2(); - user.phone = phone; - user.first_name = vcardData.name; - user.last_name = ""; - user.id = 0; - contactsToSend.add(user); + for (int b = 0; b < vcardData.emails.size(); b++) { + int contact_to_send_id = MrMailbox.createContact(vcardData.name, vcardData.emails.get(b)); + contactsToSend.add(contact_to_send_id); } } } + if( contactsToSend==null ) { + Toast.makeText(this, ApplicationLoader.applicationContext.getString(R.string.BadEmailAddress), Toast.LENGTH_SHORT).show();; + } } else { error = true; } @@ -663,14 +652,7 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa } else { String subject = intent.getStringExtra(Intent.EXTRA_SUBJECT); - Pattern r = Pattern.compile("geo: ?(-?\\d+\\.\\d+),(-?\\d+\\.\\d+)(,|\\?z=)(-?\\d+)"); - Matcher m = r.matcher(text); - if (m.find()) { - sendingLocation = new TLRPC.TL_messageMediaGeo(); - sendingLocation.geo = new TLRPC.TL_geoPoint(); - sendingLocation.geo.lat = Double.parseDouble(m.group(1)); - sendingLocation.geo._long = Double.parseDouble(m.group(2)); - } else if (text != null && text.length() != 0) { + if (text != null && text.length() != 0) { if ((text.startsWith("http://") || text.startsWith("https://")) && subject != null && subject.length() != 0) { text = subject + "\n" + text; } @@ -722,7 +704,7 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa } } } - } else if (sendingText == null && sendingLocation == null) { + } else if (sendingText == null) { error = true; } } @@ -996,18 +978,14 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa } actionBarLayout.presentFragment(new AudioPlayerActivity(), false, true, true); pushOpened = true; - } else if (videoPath != null || photoPathsArray != null || sendingText != null || sendingLocation != null || documentsPathsArray != null || contactsToSend != null || documentsUrisArray != null) { + } else if (videoPath != null || photoPathsArray != null || sendingText != null || documentsPathsArray != null || contactsToSend != null || documentsUrisArray != null) { if (!AndroidUtilities.isTablet()) { NotificationCenter.getInstance().postNotificationName(NotificationCenter.closeChats); } if (dialogId == 0) { Bundle args = new Bundle(); args.putBoolean("onlySelect", true); - if (contactsToSend != null) { - args.putString("selectAlertString", LocaleController.getString("SendMessagesTo", R.string.SendMessagesTo)); - } else { - args.putString("selectAlertString", LocaleController.getString("SendMessagesTo", R.string.SendMessagesTo)); - } + args.putString("selectAlertString", LocaleController.getString("SendMessagesTo", R.string.SendMessagesTo)); DialogsActivity fragment = new DialogsActivity(args); fragment.setDelegate(this); boolean removeLast; @@ -1137,8 +1115,8 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa SendMessagesHelper.prepareSendingDocuments(documentsPathsArray, documentsOriginalPathsArray, documentsUrisArray, documentsMimeType, dialog_id, null); } if (contactsToSend != null && !contactsToSend.isEmpty()) { - for (TLRPC.User user : contactsToSend) { - SendMessagesHelper.getInstance().sendMessageContact(user, dialog_id, null, null); + for (int user_id : contactsToSend) { + SendMessagesHelper.getInstance().sendMessageContact(user_id, (int)dialog_id); } } } @@ -1146,7 +1124,6 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa photoPathsArray = null; videoPath = null; sendingText = null; - sendingLocation = null; documentsPathsArray = null; documentsOriginalPathsArray = null; contactsToSend = null; @@ -1165,7 +1142,6 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa NotificationCenter.getInstance().removeObserver(this, NotificationCenter.mainUserInfoChanged); NotificationCenter.getInstance().removeObserver(this, NotificationCenter.closeOtherAppActivities); NotificationCenter.getInstance().removeObserver(this, NotificationCenter.didUpdatedConnectionState); - NotificationCenter.getInstance().removeObserver(this, NotificationCenter.wasUnableToFindCurrentLocation); } public void presentFragment(BaseFragment fragment) { @@ -1357,10 +1333,6 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa builder.setNegativeButton(LocaleController.getString("Cancel", R.string.Cancel), null); builder.show(); return; - } else if (requestCode == 2) { - if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) { - NotificationCenter.getInstance().postNotificationName(NotificationCenter.locationPermissionGranted); - } } if (actionBarLayout.fragmentsStack.size() != 0) { BaseFragment fragment = actionBarLayout.fragmentsStack.get(actionBarLayout.fragmentsStack.size() - 1); @@ -1484,41 +1456,6 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa } } else if (id == NotificationCenter.mainUserInfoChanged) { drawerLayoutAdapter.notifyDataSetChanged(); - } else if (id == NotificationCenter.wasUnableToFindCurrentLocation) { - final HashMap waitingForLocation = (HashMap) args[0]; - AlertDialog.Builder builder = new AlertDialog.Builder(this); - builder.setPositiveButton(LocaleController.getString("OK", R.string.OK), null); - builder.setNegativeButton(LocaleController.getString("ShareYouLocationUnableManually", R.string.ShareYouLocationUnableManually), new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialogInterface, int i) { - /*Telegram FOSS: manual Location selection not available */ - Toast.makeText(getApplicationContext(),"Disabled for now.", Toast.LENGTH_LONG).show(); - /* - if (mainFragmentsStack.isEmpty()) { - return; - } - BaseFragment lastFragment = mainFragmentsStack.get(mainFragmentsStack.size() - 1); - if (!AndroidUtilities.isGoogleMapsInstalled(lastFragment)) { - return; - } - LocationActivity fragment = new LocationActivity(); - fragment.setDelegate(new LocationActivity.LocationActivityDelegate() { - @Override - public void didSelectLocation(TLRPC.MessageMedia location) { - for (HashMap.Entry entry : waitingForLocation.entrySet()) { - MessageObject messageObject = entry.getValue(); - SendMessagesHelper.getInstance().sendMessage(location, messageObject.getDialogId(), messageObject, null, null); - } - } - }); - presentFragment(fragment); - */ - } - }); - builder.setMessage(LocaleController.getString("ShareYouLocationUnable", R.string.ShareYouLocationUnable)); - if (!mainFragmentsStack.isEmpty()) { - mainFragmentsStack.get(mainFragmentsStack.size() - 1).showDialog(builder.create()); - } } } diff --git a/MessengerProj/src/main/java/com/b44t/ui/ProfileActivity.java b/MessengerProj/src/main/java/com/b44t/ui/ProfileActivity.java index 59139d8f1..f3520db96 100644 --- a/MessengerProj/src/main/java/com/b44t/ui/ProfileActivity.java +++ b/MessengerProj/src/main/java/com/b44t/ui/ProfileActivity.java @@ -38,7 +38,7 @@ import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; -import android.graphics.Typeface; + import android.os.Build; import android.os.Bundle; import android.view.Gravity; @@ -59,7 +59,6 @@ import com.b44t.messenger.LocaleController; import com.b44t.messenger.MrChat; import com.b44t.messenger.MrContact; import com.b44t.messenger.MrMailbox; -import com.b44t.messenger.SendMessagesHelper; import com.b44t.messenger.ApplicationLoader; import com.b44t.messenger.support.widget.LinearLayoutManager; import com.b44t.messenger.support.widget.RecyclerView; @@ -92,7 +91,7 @@ import com.b44t.ui.ActionBar.Theme; import java.util.ArrayList; -public class ProfileActivity extends BaseFragment implements NotificationCenter.NotificationCenterDelegate, DialogsActivity.DialogsActivityDelegate, PhotoViewer.PhotoViewerProvider { +public class ProfileActivity extends BaseFragment implements NotificationCenter.NotificationCenterDelegate, PhotoViewer.PhotoViewerProvider { private int user_id; // show the profile of a single user private int chat_id; // show the profile of a group @@ -1221,31 +1220,6 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter. } } - @Override - public void didSelectDialog(DialogsActivity fragment, long dialog_id, boolean param) { - if (dialog_id != 0) { - Bundle args = new Bundle(); - args.putBoolean("scrollToTopOnResume", true); - int lower_part = (int) dialog_id; - if (lower_part != 0) { - if (lower_part > 0) { - args.putInt("user_id", lower_part); - } else if (lower_part < 0) { - args.putInt("chat_id", -lower_part); - } - } else { - args.putInt("enc_id", (int) (dialog_id >> 32)); - } - - NotificationCenter.getInstance().removeObserver(this, NotificationCenter.closeChats); - NotificationCenter.getInstance().postNotificationName(NotificationCenter.closeChats); - presentFragment(new ChatActivity(args), true); - removeSelfFromStack(); - TLRPC.User user = MessagesController.getInstance().getUser(user_id); - SendMessagesHelper.getInstance().sendMessageContact(user, dialog_id, null, null); - } - } - private class ListAdapter extends RecyclerListView.Adapter { private Context mContext; diff --git a/MessengerProj/src/main/res/drawable-hdpi/contact_blue.png b/MessengerProj/src/main/res/drawable-hdpi/contact_blue.png deleted file mode 100755 index 0f52e8781..000000000 Binary files a/MessengerProj/src/main/res/drawable-hdpi/contact_blue.png and /dev/null differ diff --git a/MessengerProj/src/main/res/drawable-hdpi/contact_green.png b/MessengerProj/src/main/res/drawable-hdpi/contact_green.png deleted file mode 100755 index 1b3c67d76..000000000 Binary files a/MessengerProj/src/main/res/drawable-hdpi/contact_green.png and /dev/null differ diff --git a/MessengerProj/src/main/res/drawable-mdpi/contact_blue.png b/MessengerProj/src/main/res/drawable-mdpi/contact_blue.png deleted file mode 100755 index 1b2beced2..000000000 Binary files a/MessengerProj/src/main/res/drawable-mdpi/contact_blue.png and /dev/null differ diff --git a/MessengerProj/src/main/res/drawable-mdpi/contact_green.png b/MessengerProj/src/main/res/drawable-mdpi/contact_green.png deleted file mode 100755 index 0cb733438..000000000 Binary files a/MessengerProj/src/main/res/drawable-mdpi/contact_green.png and /dev/null differ diff --git a/MessengerProj/src/main/res/drawable-xhdpi/contact_blue.png b/MessengerProj/src/main/res/drawable-xhdpi/contact_blue.png deleted file mode 100755 index 0691158e3..000000000 Binary files a/MessengerProj/src/main/res/drawable-xhdpi/contact_blue.png and /dev/null differ diff --git a/MessengerProj/src/main/res/drawable-xhdpi/contact_green.png b/MessengerProj/src/main/res/drawable-xhdpi/contact_green.png deleted file mode 100755 index d50586ac1..000000000 Binary files a/MessengerProj/src/main/res/drawable-xhdpi/contact_green.png and /dev/null differ diff --git a/MessengerProj/src/main/res/drawable-xxhdpi/contact_blue.png b/MessengerProj/src/main/res/drawable-xxhdpi/contact_blue.png deleted file mode 100755 index aa2f30e37..000000000 Binary files a/MessengerProj/src/main/res/drawable-xxhdpi/contact_blue.png and /dev/null differ diff --git a/MessengerProj/src/main/res/drawable-xxhdpi/contact_green.png b/MessengerProj/src/main/res/drawable-xxhdpi/contact_green.png deleted file mode 100755 index 1fb42bf40..000000000 Binary files a/MessengerProj/src/main/res/drawable-xxhdpi/contact_green.png and /dev/null differ diff --git a/MessengerProj/src/main/res/values-de/strings.xml b/MessengerProj/src/main/res/values-de/strings.xml index a74885019..6aa6da172 100644 --- a/MessengerProj/src/main/res/values-de/strings.xml +++ b/MessengerProj/src/main/res/values-de/strings.xml @@ -47,7 +47,6 @@ Bilder ohne Komprimierung senden Galerie - Standort Video Datei Kamera @@ -291,8 +290,6 @@ Ausgewählte Nachrichten an ]]>%1$s]]> weiterleiten? Nachricht an ]]>%1$s]]> senden? Chat löschen? Der Chat wird dann nicht mehr in der Chatliste angezeigt, die Nachrichten verbleiben auf dem Server. - App kann deinen aktuellen Standort nicht bestimmen - Selbst wählen Diesen Kontakt wirklich blockieren? Diesen Kontakt wirklich löschen? Möchtest du \"Zum Sprechen ans Ohr\" für Sprachnachrichten aktivieren? diff --git a/MessengerProj/src/main/res/values-es/strings.xml b/MessengerProj/src/main/res/values-es/strings.xml index 60ae7d239..a0fc989fb 100644 --- a/MessengerProj/src/main/res/values-es/strings.xml +++ b/MessengerProj/src/main/res/values-es/strings.xml @@ -44,7 +44,6 @@ Para enviar imágenes sin compresión Galería - Ubicación Vídeo Archivo Cámara @@ -289,8 +288,6 @@ ¿Reenviar mensajes a ]]>%1$s]]>? ¿Enviar mensajes a ]]>%1$s]]>? ¿Quieres eliminar este chat? - La aplicación no pudo determinar tu ubicación actual - Elegir manualmente ¿Quieres bloquear este contacto? ¿Quieres eliminar este contacto? ¿Quieres habilitar “Elevar para hablar” para mensajes de voz? diff --git a/MessengerProj/src/main/res/values-fr/strings.xml b/MessengerProj/src/main/res/values-fr/strings.xml index 9251c78e6..fd0932168 100644 --- a/MessengerProj/src/main/res/values-fr/strings.xml +++ b/MessengerProj/src/main/res/values-fr/strings.xml @@ -42,7 +42,6 @@ Pour envoyer des images sans compression Gallerie - Localisation Vidéo Fichier Appareil photo @@ -286,8 +285,6 @@ Renvoyer les messages sélectionnés à ]]>%1$s]]> ? Envoyer les messages à ]]>%1$s]]> ? Êtes-vous sûr de vouloir supprimer cette conversation ? La conversation n\'apparaîtra plus dans la liste des conversations, mais les messages resteront sur le serveur. - L\'application n\'a pas pu déterminer votre localisation actuelle - Choisir manuellement Êtes-vous sûr de vouloir bloquer cet utilisateur ? Êtes-vous sûr de vouloir supprimer cet utilisateur ? Voulez-vous activer le "Soulever pour parler" pour les messages vocaux ? diff --git a/MessengerProj/src/main/res/values-it/strings.xml b/MessengerProj/src/main/res/values-it/strings.xml index 898499c18..67ba74c16 100644 --- a/MessengerProj/src/main/res/values-it/strings.xml +++ b/MessengerProj/src/main/res/values-it/strings.xml @@ -44,7 +44,6 @@ Per inviare immagini senza compressione Galleria - Posizione Video File Foto @@ -289,8 +288,6 @@ Vuoi inoltrare i messaggi a ]]>%1$s]]>? Inviare i messaggi a ]]>%1$s]]>? Sei sicuro di voler eliminare questa chat? - L\'app non è riuscita a determinare la tua posizione corrente - Scegli manualmente Vuoi bloccare questo contatto? Sei sicuro di voler eliminare questo contatto? Vuoi attivare \"Alza per parlare\" per i messaggi vocali? diff --git a/MessengerProj/src/main/res/values-nl/strings.xml b/MessengerProj/src/main/res/values-nl/strings.xml index d0810e123..7a51cbd5b 100644 --- a/MessengerProj/src/main/res/values-nl/strings.xml +++ b/MessengerProj/src/main/res/values-nl/strings.xml @@ -44,7 +44,6 @@ Om bestanden ongecomprimeerd te versturen Galerij - Locatie Video Bestand Camera @@ -289,8 +288,6 @@ Berichten doorsturen naar ]]>%1$s]]>? Berichten naar ]]>%1$s]]> versturen? Chat echt verwijderen? - Huidige locatie kon niet worden vastgesteld - Handmatig kiezen Weet je zeker dat je deze persoon wilt blokkeren? Contact echt verwijderen? Wil je \"Houd bij oor\" inschakelen voor spraakberichten? diff --git a/MessengerProj/src/main/res/values-pl/strings.xml b/MessengerProj/src/main/res/values-pl/strings.xml index 1c3340674..51f19ba55 100644 --- a/MessengerProj/src/main/res/values-pl/strings.xml +++ b/MessengerProj/src/main/res/values-pl/strings.xml @@ -47,7 +47,6 @@ Wyślij obrazki bez kompresji Galeria - Lokalizacja Wideo Plik Kamera @@ -291,8 +290,6 @@ Przekazać wybrane wiadomości do ]]>%1$s]]>? Wysłać wiadomość do ]]>%1$s]]>? Usunąć ten czat? Czat nie będzie widoczny na liście czatów, wiadomości pozostaną na serwerze. - Aplikacja nie była w stanie określić twojej aktualnej lokalizacji - Wybierz ręcznie Czy na pewno chcesz zablokować ten kontakt? Czy na pewno chcesz usunąć ten kontakt? Czy chcesz włączyć funkcję „Odbierz i mów / słuchaj” dla wiadomości głosowych? diff --git a/MessengerProj/src/main/res/values-pt/strings.xml b/MessengerProj/src/main/res/values-pt/strings.xml index fdb166d2e..289c72eee 100644 --- a/MessengerProj/src/main/res/values-pt/strings.xml +++ b/MessengerProj/src/main/res/values-pt/strings.xml @@ -44,7 +44,6 @@ Para enviar imagens sem compressão Galeria - Localização Vídeo Arquivo Câmera @@ -289,8 +288,6 @@ Encaminhar mensagem para ]]>%1$s]]>? Enviar mensagens para ]]>%1$s]]>? Você tem certeza que deseja apagar esta conversa? - O aplicativo foi impossibilitado de determinar sua localização atual. - Escolher manualmente Você tem certeza que deseja bloquear este contato? Você tem certeza que deseja apagar este contato? Gostaria de habilitar o \"Levantar para Falar\" para mensagens de voz? diff --git a/MessengerProj/src/main/res/values/strings.xml b/MessengerProj/src/main/res/values/strings.xml index 2f7dc25ba..02a4acc7d 100644 --- a/MessengerProj/src/main/res/values/strings.xml +++ b/MessengerProj/src/main/res/values/strings.xml @@ -47,7 +47,6 @@ To send images without compression Gallery - Location Video File Camera @@ -291,8 +290,6 @@ Forward selected messages to ]]>%1$s]]>? Send messages to ]]>%1$s]]>? Delete this chat? The chat will no longer be shown in the chat list, the messages will stay on the server. - App was unable to determine your current location - Choose manually Are you sure you want to block this contact? Are you sure you want to delete this contact? Would you like to enable "Raise to speak" for voice messages?