mirror of
https://github.com/DrKLO/Telegram.git
synced 2024-12-22 14:35:03 +01:00
Update to 5.15.0 (1866)
This commit is contained in:
parent
2eafc07314
commit
071d511494
15 changed files with 63 additions and 36 deletions
|
@ -283,7 +283,7 @@ android {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
defaultConfig.versionCode = 1864
|
defaultConfig.versionCode = 1866
|
||||||
|
|
||||||
applicationVariants.all { variant ->
|
applicationVariants.all { variant ->
|
||||||
variant.outputs.all { output ->
|
variant.outputs.all { output ->
|
||||||
|
|
|
@ -3345,6 +3345,7 @@ void ConnectionsManager::pauseNetwork() {
|
||||||
}
|
}
|
||||||
lastMonotonicPauseTime = lastPauseTime = getCurrentTimeMonotonicMillis();
|
lastMonotonicPauseTime = lastPauseTime = getCurrentTimeMonotonicMillis();
|
||||||
lastSystemPauseTime = getCurrentTime();
|
lastSystemPauseTime = getCurrentTime();
|
||||||
|
saveConfig();
|
||||||
}
|
}
|
||||||
|
|
||||||
void ConnectionsManager::setNetworkAvailable(bool value, int32_t type, bool slow) {
|
void ConnectionsManager::setNetworkAvailable(bool value, int32_t type, bool slow) {
|
||||||
|
|
|
@ -1383,7 +1383,7 @@ public class AndroidUtilities {
|
||||||
roundMessageInset = dp(2);
|
roundMessageInset = dp(2);
|
||||||
}
|
}
|
||||||
if (BuildVars.LOGS_ENABLED) {
|
if (BuildVars.LOGS_ENABLED) {
|
||||||
FileLog.e("display size = " + displaySize.x + " " + displaySize.y + " " + displayMetrics.xdpi + "x" + displayMetrics.ydpi);
|
FileLog.e("density = " + density + " display size = " + displaySize.x + " " + displaySize.y + " " + displayMetrics.xdpi + "x" + displayMetrics.ydpi);
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
FileLog.e(e);
|
FileLog.e(e);
|
||||||
|
|
|
@ -19,7 +19,7 @@ public class BuildVars {
|
||||||
public static boolean USE_CLOUD_STRINGS = true;
|
public static boolean USE_CLOUD_STRINGS = true;
|
||||||
public static boolean CHECK_UPDATES = true;
|
public static boolean CHECK_UPDATES = true;
|
||||||
public static boolean TON_WALLET_STANDALONE = false;
|
public static boolean TON_WALLET_STANDALONE = false;
|
||||||
public static int BUILD_VERSION = 1864;
|
public static int BUILD_VERSION = 1866;
|
||||||
public static String BUILD_VERSION_STRING = "5.15.0";
|
public static String BUILD_VERSION_STRING = "5.15.0";
|
||||||
public static int APP_ID = 4;
|
public static int APP_ID = 4;
|
||||||
public static String APP_HASH = "014b35b6184100b085b0d0572f9b5103";
|
public static String APP_HASH = "014b35b6184100b085b0d0572f9b5103";
|
||||||
|
|
|
@ -2019,6 +2019,8 @@ public class MediaDataController extends BaseController {
|
||||||
return MEDIA_PHOTOVIDEO;
|
return MEDIA_PHOTOVIDEO;
|
||||||
} else if (MessageObject.isStickerMessage(message) || MessageObject.isAnimatedStickerMessage(message)) {
|
} else if (MessageObject.isStickerMessage(message) || MessageObject.isAnimatedStickerMessage(message)) {
|
||||||
return -1;
|
return -1;
|
||||||
|
} else if (MessageObject.isNewGifMessage(message)) {
|
||||||
|
return -1;
|
||||||
} else if (MessageObject.isMusicMessage(message)) {
|
} else if (MessageObject.isMusicMessage(message)) {
|
||||||
return MEDIA_MUSIC;
|
return MEDIA_MUSIC;
|
||||||
} else {
|
} else {
|
||||||
|
@ -2051,7 +2053,7 @@ public class MediaDataController extends BaseController {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return false;
|
return MediaDataController.getMediaType(message) != -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processLoadedMedia(final TLRPC.messages_Messages res, final long uid, int count, int max_id, final int type, final int fromCache, final int classGuid, final boolean isChannel, final boolean topReached) {
|
private void processLoadedMedia(final TLRPC.messages_Messages res, final long uid, int count, int max_id, final int type, final int fromCache, final int classGuid, final boolean isChannel, final boolean topReached) {
|
||||||
|
|
|
@ -3213,7 +3213,7 @@ public class MessagesController extends BaseController implements NotificationCe
|
||||||
} else {
|
} else {
|
||||||
TLRPC.TL_messages_deleteHistory req = new TLRPC.TL_messages_deleteHistory();
|
TLRPC.TL_messages_deleteHistory req = new TLRPC.TL_messages_deleteHistory();
|
||||||
req.peer = peer;
|
req.peer = peer;
|
||||||
req.max_id = (onlyHistory == 0 ? Integer.MAX_VALUE : max_id_delete);
|
req.max_id = max_id_delete > 0 ? max_id_delete : Integer.MAX_VALUE;
|
||||||
req.just_clear = onlyHistory != 0;
|
req.just_clear = onlyHistory != 0;
|
||||||
req.revoke = revoke;
|
req.revoke = revoke;
|
||||||
final int max_id_delete_final = max_id_delete;
|
final int max_id_delete_final = max_id_delete;
|
||||||
|
@ -3444,7 +3444,7 @@ public class MessagesController extends BaseController implements NotificationCe
|
||||||
array.put(req.id.get(a1), (Integer) vector.objects.get(a1));
|
array.put(req.id.get(a1), (Integer) vector.objects.get(a1));
|
||||||
}
|
}
|
||||||
getMessagesStorage().putChannelViews(channelViews, req.peer instanceof TLRPC.TL_inputPeerChannel);
|
getMessagesStorage().putChannelViews(channelViews, req.peer instanceof TLRPC.TL_inputPeerChannel);
|
||||||
AndroidUtilities.runOnUIThread(() -> getNotificationCenter().postNotificationName(NotificationCenter.didUpdatedMessagesViews, channelViews));
|
AndroidUtilities.runOnUIThread(() -> getNotificationCenter().postNotificationName(NotificationCenter.didUpdateMessagesViews, channelViews));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -10818,7 +10818,7 @@ public class MessagesController extends BaseController implements NotificationCe
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (channelViewsFinal != null) {
|
if (channelViewsFinal != null) {
|
||||||
getNotificationCenter().postNotificationName(NotificationCenter.didUpdatedMessagesViews, channelViewsFinal);
|
getNotificationCenter().postNotificationName(NotificationCenter.didUpdateMessagesViews, channelViewsFinal);
|
||||||
}
|
}
|
||||||
if (updateMask != 0) {
|
if (updateMask != 0) {
|
||||||
getNotificationCenter().postNotificationName(NotificationCenter.updateInterfaces, updateMask);
|
getNotificationCenter().postNotificationName(NotificationCenter.updateInterfaces, updateMask);
|
||||||
|
|
|
@ -72,7 +72,7 @@ public class NotificationCenter {
|
||||||
public static final int musicDidLoad = totalEvents++;
|
public static final int musicDidLoad = totalEvents++;
|
||||||
public static final int needShowAlert = totalEvents++;
|
public static final int needShowAlert = totalEvents++;
|
||||||
public static final int needShowPlayServicesAlert = totalEvents++;
|
public static final int needShowPlayServicesAlert = totalEvents++;
|
||||||
public static final int didUpdatedMessagesViews = totalEvents++;
|
public static final int didUpdateMessagesViews = totalEvents++;
|
||||||
public static final int needReloadRecentDialogsSearch = totalEvents++;
|
public static final int needReloadRecentDialogsSearch = totalEvents++;
|
||||||
public static final int peerSettingsDidLoad = totalEvents++;
|
public static final int peerSettingsDidLoad = totalEvents++;
|
||||||
public static final int wasUnableToFindCurrentLocation = totalEvents++;
|
public static final int wasUnableToFindCurrentLocation = totalEvents++;
|
||||||
|
|
|
@ -243,6 +243,7 @@ public class Theme {
|
||||||
idx = 0;
|
idx = 0;
|
||||||
}
|
}
|
||||||
int idx2 = isSelected ? 1 : 0;
|
int idx2 = isSelected ? 1 : 0;
|
||||||
|
boolean forceSetColor = false;
|
||||||
if (currentBackgroundDrawableRadius[idx2][idx] != newRad) {
|
if (currentBackgroundDrawableRadius[idx2][idx] != newRad) {
|
||||||
currentBackgroundDrawableRadius[idx2][idx] = newRad;
|
currentBackgroundDrawableRadius[idx2][idx] = newRad;
|
||||||
try {
|
try {
|
||||||
|
@ -256,7 +257,7 @@ public class Theme {
|
||||||
draw(canvas, shadowPaint);
|
draw(canvas, shadowPaint);
|
||||||
|
|
||||||
backgroundDrawable[idx2][idx] = new NinePatchDrawable(bitmap, getByteBuffer(bitmap.getWidth() / 2 - 1, bitmap.getWidth() / 2 + 1, bitmap.getHeight() / 2 - 1, bitmap.getHeight() / 2 + 1).array(), new Rect(), null);
|
backgroundDrawable[idx2][idx] = new NinePatchDrawable(bitmap, getByteBuffer(bitmap.getWidth() / 2 - 1, bitmap.getWidth() / 2 + 1, bitmap.getHeight() / 2 - 1, bitmap.getHeight() / 2 + 1).array(), new Rect(), null);
|
||||||
backgroundDrawableColor[idx2][idx] = 0;
|
forceSetColor = true;
|
||||||
setBounds(backupRect);
|
setBounds(backupRect);
|
||||||
} catch (Throwable ignore) {
|
} catch (Throwable ignore) {
|
||||||
|
|
||||||
|
@ -268,7 +269,7 @@ public class Theme {
|
||||||
} else {
|
} else {
|
||||||
color = getColor(isOut ? key_chat_outBubble : key_chat_inBubble);
|
color = getColor(isOut ? key_chat_outBubble : key_chat_inBubble);
|
||||||
}
|
}
|
||||||
if (backgroundDrawable[idx2][idx] != null && backgroundDrawableColor[idx2][idx] != color) {
|
if (backgroundDrawable[idx2][idx] != null && (backgroundDrawableColor[idx2][idx] != color || forceSetColor)) {
|
||||||
backgroundDrawable[idx2][idx].setColorFilter(new PorterDuffColorFilter(color, PorterDuff.Mode.MULTIPLY));
|
backgroundDrawable[idx2][idx].setColorFilter(new PorterDuffColorFilter(color, PorterDuff.Mode.MULTIPLY));
|
||||||
backgroundDrawableColor[idx2][idx] = color;
|
backgroundDrawableColor[idx2][idx] = color;
|
||||||
}
|
}
|
||||||
|
@ -287,6 +288,7 @@ public class Theme {
|
||||||
} else {
|
} else {
|
||||||
idx = 0;
|
idx = 0;
|
||||||
}
|
}
|
||||||
|
boolean forceSetColor = false;
|
||||||
if (currentShadowDrawableRadius[idx] != newRad) {
|
if (currentShadowDrawableRadius[idx] != newRad) {
|
||||||
currentShadowDrawableRadius[idx] = newRad;
|
currentShadowDrawableRadius[idx] = newRad;
|
||||||
try {
|
try {
|
||||||
|
@ -315,13 +317,13 @@ public class Theme {
|
||||||
}
|
}
|
||||||
|
|
||||||
shadowDrawable[idx] = new NinePatchDrawable(bitmap, getByteBuffer(bitmap.getWidth() / 2 - 1, bitmap.getWidth() / 2 + 1, bitmap.getHeight() / 2 - 1, bitmap.getHeight() / 2 + 1).array(), new Rect(), null);
|
shadowDrawable[idx] = new NinePatchDrawable(bitmap, getByteBuffer(bitmap.getWidth() / 2 - 1, bitmap.getWidth() / 2 + 1, bitmap.getHeight() / 2 - 1, bitmap.getHeight() / 2 + 1).array(), new Rect(), null);
|
||||||
shadowDrawableColor[idx] = 0;
|
forceSetColor = true;
|
||||||
} catch (Throwable ignore) {
|
} catch (Throwable ignore) {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
int color = getColor(isOut ? key_chat_outBubbleShadow : key_chat_inBubbleShadow);
|
int color = getColor(isOut ? key_chat_outBubbleShadow : key_chat_inBubbleShadow);
|
||||||
if (shadowDrawable[idx] != null && shadowDrawableColor[idx] != color) {
|
if (shadowDrawable[idx] != null && (shadowDrawableColor[idx] != color || forceSetColor)) {
|
||||||
shadowDrawable[idx].setColorFilter(new PorterDuffColorFilter(color, PorterDuff.Mode.MULTIPLY));
|
shadowDrawable[idx].setColorFilter(new PorterDuffColorFilter(color, PorterDuff.Mode.MULTIPLY));
|
||||||
shadowDrawableColor[idx] = color;
|
shadowDrawableColor[idx] = color;
|
||||||
}
|
}
|
||||||
|
@ -527,6 +529,10 @@ public class Theme {
|
||||||
if (isOut) {
|
if (isOut) {
|
||||||
selectedPaint.setAlpha((int) (Color.alpha(getColor(key_chat_outBubbleGradientSelectedOverlay)) * (alpha / 255.0f)));
|
selectedPaint.setAlpha((int) (Color.alpha(getColor(key_chat_outBubbleGradientSelectedOverlay)) * (alpha / 255.0f)));
|
||||||
}
|
}
|
||||||
|
if (gradientShader == null) {
|
||||||
|
Drawable background = getBackgroundDrawable();
|
||||||
|
background.setAlpha(alpha);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -3642,6 +3642,7 @@ public class ArticleViewer implements NotificationCenter.NotificationCenterDeleg
|
||||||
progressView = new ContextProgressView(activity, 2);
|
progressView = new ContextProgressView(activity, 2);
|
||||||
progressView.setVisibility(View.GONE);
|
progressView.setVisibility(View.GONE);
|
||||||
menuContainer.addView(progressView, LayoutHelper.createFrame(48, 56));
|
menuContainer.addView(progressView, LayoutHelper.createFrame(48, 56));
|
||||||
|
menuButton.setOnClickListener(v -> menuButton.toggleSubMenu());
|
||||||
menuButton.setDelegate(id -> {
|
menuButton.setDelegate(id -> {
|
||||||
if (currentPage == null || parentActivity == null) {
|
if (currentPage == null || parentActivity == null) {
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -450,7 +450,7 @@ public class SharedAudioCell extends FrameLayout implements DownloadController.F
|
||||||
super.onInitializeAccessibilityNodeInfo(info);
|
super.onInitializeAccessibilityNodeInfo(info);
|
||||||
if (currentMessageObject.isMusic()) {
|
if (currentMessageObject.isMusic()) {
|
||||||
info.setText(LocaleController.formatString("AccDescrMusicInfo", R.string.AccDescrMusicInfo, currentMessageObject.getMusicAuthor(), currentMessageObject.getMusicTitle()));
|
info.setText(LocaleController.formatString("AccDescrMusicInfo", R.string.AccDescrMusicInfo, currentMessageObject.getMusicAuthor(), currentMessageObject.getMusicTitle()));
|
||||||
} else { // voice message
|
} else if (titleLayout != null && descriptionLayout != null) {
|
||||||
info.setText(titleLayout.getText() + ", " + descriptionLayout.getText());
|
info.setText(titleLayout.getText() + ", " + descriptionLayout.getText());
|
||||||
}
|
}
|
||||||
if (checkBox.isChecked()) {
|
if (checkBox.isChecked()) {
|
||||||
|
|
|
@ -964,7 +964,7 @@ public class ChatActivity extends BaseFragment implements NotificationCenter.Not
|
||||||
getNotificationCenter().addObserver(this, NotificationCenter.botKeyboardDidLoad);
|
getNotificationCenter().addObserver(this, NotificationCenter.botKeyboardDidLoad);
|
||||||
getNotificationCenter().addObserver(this, NotificationCenter.chatSearchResultsAvailable);
|
getNotificationCenter().addObserver(this, NotificationCenter.chatSearchResultsAvailable);
|
||||||
getNotificationCenter().addObserver(this, NotificationCenter.chatSearchResultsLoading);
|
getNotificationCenter().addObserver(this, NotificationCenter.chatSearchResultsLoading);
|
||||||
getNotificationCenter().addObserver(this, NotificationCenter.didUpdatedMessagesViews);
|
getNotificationCenter().addObserver(this, NotificationCenter.didUpdateMessagesViews);
|
||||||
getNotificationCenter().addObserver(this, NotificationCenter.pinnedMessageDidLoad);
|
getNotificationCenter().addObserver(this, NotificationCenter.pinnedMessageDidLoad);
|
||||||
getNotificationCenter().addObserver(this, NotificationCenter.peerSettingsDidLoad);
|
getNotificationCenter().addObserver(this, NotificationCenter.peerSettingsDidLoad);
|
||||||
getNotificationCenter().addObserver(this, NotificationCenter.newDraftReceived);
|
getNotificationCenter().addObserver(this, NotificationCenter.newDraftReceived);
|
||||||
|
@ -1153,7 +1153,7 @@ public class ChatActivity extends BaseFragment implements NotificationCenter.Not
|
||||||
getNotificationCenter().removeObserver(this, NotificationCenter.chatSearchResultsAvailable);
|
getNotificationCenter().removeObserver(this, NotificationCenter.chatSearchResultsAvailable);
|
||||||
getNotificationCenter().removeObserver(this, NotificationCenter.chatSearchResultsLoading);
|
getNotificationCenter().removeObserver(this, NotificationCenter.chatSearchResultsLoading);
|
||||||
getNotificationCenter().removeObserver(this, NotificationCenter.messagePlayingPlayStateChanged);
|
getNotificationCenter().removeObserver(this, NotificationCenter.messagePlayingPlayStateChanged);
|
||||||
getNotificationCenter().removeObserver(this, NotificationCenter.didUpdatedMessagesViews);
|
getNotificationCenter().removeObserver(this, NotificationCenter.didUpdateMessagesViews);
|
||||||
getNotificationCenter().removeObserver(this, NotificationCenter.chatInfoCantLoad);
|
getNotificationCenter().removeObserver(this, NotificationCenter.chatInfoCantLoad);
|
||||||
getNotificationCenter().removeObserver(this, NotificationCenter.pinnedMessageDidLoad);
|
getNotificationCenter().removeObserver(this, NotificationCenter.pinnedMessageDidLoad);
|
||||||
getNotificationCenter().removeObserver(this, NotificationCenter.peerSettingsDidLoad);
|
getNotificationCenter().removeObserver(this, NotificationCenter.peerSettingsDidLoad);
|
||||||
|
@ -11564,11 +11564,12 @@ public class ChatActivity extends BaseFragment implements NotificationCenter.Not
|
||||||
messagesSearchAdapter.notifyDataSetChanged();
|
messagesSearchAdapter.notifyDataSetChanged();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (id == NotificationCenter.didUpdatedMessagesViews) {
|
} else if (id == NotificationCenter.didUpdateMessagesViews) {
|
||||||
SparseArray<SparseIntArray> channelViews = (SparseArray<SparseIntArray>) args[0];
|
SparseArray<SparseIntArray> channelViews = (SparseArray<SparseIntArray>) args[0];
|
||||||
SparseIntArray array = channelViews.get((int) dialog_id);
|
SparseIntArray array = channelViews.get((int) dialog_id);
|
||||||
if (array != null) {
|
if (array != null) {
|
||||||
boolean updated = false;
|
boolean updated = false;
|
||||||
|
LongSparseArray<MessageObject.GroupedMessages> newGroups = null;
|
||||||
for (int a = 0; a < array.size(); a++) {
|
for (int a = 0; a < array.size(); a++) {
|
||||||
int messageId = array.keyAt(a);
|
int messageId = array.keyAt(a);
|
||||||
MessageObject messageObject = messagesDict[0].get(messageId);
|
MessageObject messageObject = messagesDict[0].get(messageId);
|
||||||
|
@ -11576,11 +11577,33 @@ public class ChatActivity extends BaseFragment implements NotificationCenter.Not
|
||||||
int newValue = array.get(messageId);
|
int newValue = array.get(messageId);
|
||||||
if (newValue > messageObject.messageOwner.views) {
|
if (newValue > messageObject.messageOwner.views) {
|
||||||
messageObject.messageOwner.views = newValue;
|
messageObject.messageOwner.views = newValue;
|
||||||
|
if (messageObject.hasValidGroupId()) {
|
||||||
|
MessageObject.GroupedMessages groupedMessages = groupedMessagesMap.get(messageObject.getGroupId());
|
||||||
|
if (groupedMessages != null) {
|
||||||
|
if (newGroups == null) {
|
||||||
|
newGroups = new LongSparseArray<>();
|
||||||
|
}
|
||||||
|
newGroups.put(groupedMessages.groupId, groupedMessages);
|
||||||
|
}
|
||||||
|
}
|
||||||
updated = true;
|
updated = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (updated) {
|
if (updated) {
|
||||||
|
if (newGroups != null) {
|
||||||
|
for (int b = 0; b < newGroups.size(); b++) {
|
||||||
|
MessageObject.GroupedMessages groupedMessages = newGroups.valueAt(b);
|
||||||
|
MessageObject messageObject = groupedMessages.messages.get(groupedMessages.messages.size() - 1);
|
||||||
|
int index = messages.indexOf(messageObject);
|
||||||
|
if (index >= 0) {
|
||||||
|
if (chatAdapter != null) {
|
||||||
|
chatAdapter.notifyItemRangeChanged(index + chatAdapter.messagesStartRow, groupedMessages.messages.size());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
updateVisibleRows();
|
updateVisibleRows();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -145,7 +145,7 @@ public class GestureDetector2 {
|
||||||
|
|
||||||
private static final int LONGPRESS_TIMEOUT = ViewConfiguration.getLongPressTimeout();
|
private static final int LONGPRESS_TIMEOUT = ViewConfiguration.getLongPressTimeout();
|
||||||
private static final int TAP_TIMEOUT = ViewConfiguration.getTapTimeout();
|
private static final int TAP_TIMEOUT = ViewConfiguration.getTapTimeout();
|
||||||
private static final int DOUBLE_TAP_TIMEOUT = 150;
|
private static final int DOUBLE_TAP_TIMEOUT = 200;
|
||||||
private static final int DOUBLE_TAP_MIN_TIME = 40;
|
private static final int DOUBLE_TAP_MIN_TIME = 40;
|
||||||
|
|
||||||
private static final int SHOW_PRESS = 1;
|
private static final int SHOW_PRESS = 1;
|
||||||
|
|
|
@ -709,6 +709,7 @@ public class LocationActivity extends BaseFragment implements NotificationCenter
|
||||||
mapTypeButton.setBackgroundDrawable(drawable);
|
mapTypeButton.setBackgroundDrawable(drawable);
|
||||||
mapTypeButton.setIcon(R.drawable.location_type);
|
mapTypeButton.setIcon(R.drawable.location_type);
|
||||||
mapViewClip.addView(mapTypeButton, LayoutHelper.createFrame(Build.VERSION.SDK_INT >= 21 ? 40 : 44, Build.VERSION.SDK_INT >= 21 ? 40 : 44, Gravity.RIGHT | Gravity.TOP, 0, 12, 12, 0));
|
mapViewClip.addView(mapTypeButton, LayoutHelper.createFrame(Build.VERSION.SDK_INT >= 21 ? 40 : 44, Build.VERSION.SDK_INT >= 21 ? 40 : 44, Gravity.RIGHT | Gravity.TOP, 0, 12, 12, 0));
|
||||||
|
mapTypeButton.setOnClickListener(v -> mapTypeButton.toggleSubMenu());
|
||||||
mapTypeButton.setDelegate(id -> {
|
mapTypeButton.setDelegate(id -> {
|
||||||
if (googleMap == null) {
|
if (googleMap == null) {
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -524,7 +524,6 @@ public class PeopleNearbyActivity extends BaseFragment implements NotificationCe
|
||||||
getMessagesController().putChats(updates.chats, false);
|
getMessagesController().putChats(updates.chats, false);
|
||||||
users.clear();
|
users.clear();
|
||||||
chats.clear();
|
chats.clear();
|
||||||
boolean hasSelf = false;
|
|
||||||
UserConfig userConfig = getUserConfig();
|
UserConfig userConfig = getUserConfig();
|
||||||
boolean saveConfig = false;
|
boolean saveConfig = false;
|
||||||
if (userConfig.sharingMyLocationUntil != 0) {
|
if (userConfig.sharingMyLocationUntil != 0) {
|
||||||
|
@ -545,7 +544,6 @@ public class PeopleNearbyActivity extends BaseFragment implements NotificationCe
|
||||||
chats.add(peerLocated);
|
chats.add(peerLocated);
|
||||||
}
|
}
|
||||||
} else if (object instanceof TLRPC.TL_peerSelfLocated) {
|
} else if (object instanceof TLRPC.TL_peerSelfLocated) {
|
||||||
hasSelf = true;
|
|
||||||
TLRPC.TL_peerSelfLocated peerSelfLocated = (TLRPC.TL_peerSelfLocated) object;
|
TLRPC.TL_peerSelfLocated peerSelfLocated = (TLRPC.TL_peerSelfLocated) object;
|
||||||
if (userConfig.sharingMyLocationUntil != peerSelfLocated.expires) {
|
if (userConfig.sharingMyLocationUntil != peerSelfLocated.expires) {
|
||||||
userConfig.sharingMyLocationUntil = peerSelfLocated.expires;
|
userConfig.sharingMyLocationUntil = peerSelfLocated.expires;
|
||||||
|
@ -555,10 +553,6 @@ public class PeopleNearbyActivity extends BaseFragment implements NotificationCe
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!hasSelf && userConfig.sharingMyLocationUntil != 0) {
|
|
||||||
userConfig.sharingMyLocationUntil = 0;
|
|
||||||
saveConfig = true;
|
|
||||||
}
|
|
||||||
if (saveConfig) {
|
if (saveConfig) {
|
||||||
userConfig.saveConfig(false);
|
userConfig.saveConfig(false);
|
||||||
}
|
}
|
||||||
|
@ -893,7 +887,7 @@ public class PeopleNearbyActivity extends BaseFragment implements NotificationCe
|
||||||
actionCell.setText(LocaleController.getString("NearbyCreateGroup", R.string.NearbyCreateGroup), null, R.drawable.groups_create, chatsStartRow != -1);
|
actionCell.setText(LocaleController.getString("NearbyCreateGroup", R.string.NearbyCreateGroup), null, R.drawable.groups_create, chatsStartRow != -1);
|
||||||
} else if (position == showMeRow) {
|
} else if (position == showMeRow) {
|
||||||
if (showingMe = (getUserConfig().sharingMyLocationUntil > getConnectionsManager().getCurrentTime())) {
|
if (showingMe = (getUserConfig().sharingMyLocationUntil > getConnectionsManager().getCurrentTime())) {
|
||||||
actionCell.setText(LocaleController.getString("StopShowingMe", R.string.StopShowingMe), null, R.drawable.actions_nearby_off, chatsStartRow != -1);
|
actionCell.setText(LocaleController.getString("StopShowingMe", R.string.StopShowingMe), null, R.drawable.actions_nearby_off, usersStartRow != -1);
|
||||||
actionCell.setColors(Theme.key_windowBackgroundWhiteRedText5, Theme.key_windowBackgroundWhiteRedText5);
|
actionCell.setColors(Theme.key_windowBackgroundWhiteRedText5, Theme.key_windowBackgroundWhiteRedText5);
|
||||||
} else {
|
} else {
|
||||||
actionCell.setText(LocaleController.getString("MakeMyselfVisible", R.string.MakeMyselfVisible), null, R.drawable.actions_nearby_on, usersStartRow != -1);
|
actionCell.setText(LocaleController.getString("MakeMyselfVisible", R.string.MakeMyselfVisible), null, R.drawable.actions_nearby_on, usersStartRow != -1);
|
||||||
|
|
|
@ -1050,7 +1050,7 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter.
|
||||||
Theme.createProfileResources(context);
|
Theme.createProfileResources(context);
|
||||||
|
|
||||||
hasOwnBackground = true;
|
hasOwnBackground = true;
|
||||||
extraHeight = AndroidUtilities.dpf2(88f);
|
extraHeight = AndroidUtilities.dp(88f);
|
||||||
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
|
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
|
||||||
@Override
|
@Override
|
||||||
public void onItemClick(final int id) {
|
public void onItemClick(final int id) {
|
||||||
|
@ -2001,7 +2001,7 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter.
|
||||||
avatarImage.setTranslationY(AndroidUtilities.lerp((float) Math.ceil(avatarY), 0f, value));
|
avatarImage.setTranslationY(AndroidUtilities.lerp((float) Math.ceil(avatarY), 0f, value));
|
||||||
avatarImage.setRoundRadius((int) AndroidUtilities.lerp(AndroidUtilities.dpf2(21f), 0f, value));
|
avatarImage.setRoundRadius((int) AndroidUtilities.lerp(AndroidUtilities.dpf2(21f), 0f, value));
|
||||||
|
|
||||||
if (extraHeight > AndroidUtilities.dpf2(88f) && expandProgress < 0.33f) {
|
if (extraHeight > AndroidUtilities.dp(88f) && expandProgress < 0.33f) {
|
||||||
refreshNameAndOnlineXY();
|
refreshNameAndOnlineXY();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2047,13 +2047,13 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter.
|
||||||
statusColor = Theme.getColor(Theme.key_avatar_subtitleInProfileBlue);
|
statusColor = Theme.getColor(Theme.key_avatar_subtitleInProfileBlue);
|
||||||
}
|
}
|
||||||
onlineTextView[1].setTextColor(ColorUtils.blendARGB(statusColor, Color.argb(179, 255, 255, 255), value));
|
onlineTextView[1].setTextColor(ColorUtils.blendARGB(statusColor, Color.argb(179, 255, 255, 255), value));
|
||||||
if (extraHeight > AndroidUtilities.dpf2(88f)) {
|
if (extraHeight > AndroidUtilities.dp(88f)) {
|
||||||
nameTextView[1].setPivotY(AndroidUtilities.lerp(0, nameTextView[1].getMeasuredHeight(), value));
|
nameTextView[1].setPivotY(AndroidUtilities.lerp(0, nameTextView[1].getMeasuredHeight(), value));
|
||||||
nameTextView[1].setScaleX(AndroidUtilities.lerp(1.12f, 1.67f, value));
|
nameTextView[1].setScaleX(AndroidUtilities.lerp(1.12f, 1.67f, value));
|
||||||
nameTextView[1].setScaleY(AndroidUtilities.lerp(1.12f, 1.67f, value));
|
nameTextView[1].setScaleY(AndroidUtilities.lerp(1.12f, 1.67f, value));
|
||||||
}
|
}
|
||||||
|
|
||||||
needLayoutText(Math.min(1f, extraHeight / AndroidUtilities.dpf2(88f)));
|
needLayoutText(Math.min(1f, extraHeight / AndroidUtilities.dp(88f)));
|
||||||
|
|
||||||
nameTextView[1].setTextColor(ColorUtils.blendARGB(Theme.getColor(Theme.key_profile_title), Color.WHITE, value));
|
nameTextView[1].setTextColor(ColorUtils.blendARGB(Theme.getColor(Theme.key_profile_title), Color.WHITE, value));
|
||||||
actionBar.setItemsColor(ColorUtils.blendARGB(Theme.getColor(Theme.key_actionBarDefaultIcon), Color.WHITE, value), false);
|
actionBar.setItemsColor(ColorUtils.blendARGB(Theme.getColor(Theme.key_actionBarDefaultIcon), Color.WHITE, value), false);
|
||||||
|
@ -2677,7 +2677,7 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter.
|
||||||
}
|
}
|
||||||
|
|
||||||
if (avatarImage != null) {
|
if (avatarImage != null) {
|
||||||
final float diff = Math.min(1f, extraHeight / AndroidUtilities.dpf2(88f));
|
final float diff = Math.min(1f, extraHeight / AndroidUtilities.dp(88f));
|
||||||
|
|
||||||
listView.setTopGlowOffset((int) extraHeight);
|
listView.setTopGlowOffset((int) extraHeight);
|
||||||
|
|
||||||
|
@ -2734,8 +2734,8 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter.
|
||||||
avatarY = (actionBar.getOccupyStatusBar() ? AndroidUtilities.statusBarHeight : 0) + ActionBar.getCurrentActionBarHeight() / 2.0f * (1.0f + diff) - 21 * AndroidUtilities.density + 27 * AndroidUtilities.density * diff + actionBar.getTranslationY();
|
avatarY = (actionBar.getOccupyStatusBar() ? AndroidUtilities.statusBarHeight : 0) + ActionBar.getCurrentActionBarHeight() / 2.0f * (1.0f + diff) - 21 * AndroidUtilities.density + 27 * AndroidUtilities.density * diff + actionBar.getTranslationY();
|
||||||
|
|
||||||
float h = openAnimationInProgress ? initialAnimationExtraHeight : extraHeight;
|
float h = openAnimationInProgress ? initialAnimationExtraHeight : extraHeight;
|
||||||
if (h > AndroidUtilities.dpf2(88f) || isPulledDown) {
|
if (h > AndroidUtilities.dp(88f) || isPulledDown) {
|
||||||
expandProgress = Math.max(0f, Math.min(1f, (h - AndroidUtilities.dpf2(88f)) / (listView.getMeasuredWidth() - newTop - AndroidUtilities.dpf2(88f))));
|
expandProgress = Math.max(0f, Math.min(1f, (h - AndroidUtilities.dp(88f)) / (listView.getMeasuredWidth() - newTop - AndroidUtilities.dp(88f))));
|
||||||
avatarScale = AndroidUtilities.lerp((42f + 18f) / 42f, (42f + 42f + 18f) / 42f, Math.min(1f, expandProgress * 3f));
|
avatarScale = AndroidUtilities.lerp((42f + 18f) / 42f, (42f + 42f + 18f) / 42f, Math.min(1f, expandProgress * 3f));
|
||||||
|
|
||||||
final float durationFactor = Math.min(AndroidUtilities.dpf2(2000f), Math.max(AndroidUtilities.dpf2(1100f), Math.abs(listViewVelocityY))) / AndroidUtilities.dpf2(1100f);
|
final float durationFactor = Math.min(AndroidUtilities.dpf2(2000f), Math.max(AndroidUtilities.dpf2(1100f), Math.abs(listViewVelocityY))) / AndroidUtilities.dpf2(1100f);
|
||||||
|
@ -2869,11 +2869,10 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter.
|
||||||
}
|
}
|
||||||
|
|
||||||
final FrameLayout.LayoutParams params = (FrameLayout.LayoutParams) avatarImage.getLayoutParams();
|
final FrameLayout.LayoutParams params = (FrameLayout.LayoutParams) avatarImage.getLayoutParams();
|
||||||
//params.width = params.height = (int) AndroidUtilities.lerp(AndroidUtilities.dpf2(42f), listView.getMeasuredWidth() / avatarScale, animationProgress);
|
|
||||||
params.width = params.height = (int) AndroidUtilities.lerp(AndroidUtilities.dpf2(42f), (extraHeight + newTop) / avatarScale, animationProgress);
|
params.width = params.height = (int) AndroidUtilities.lerp(AndroidUtilities.dpf2(42f), (extraHeight + newTop) / avatarScale, animationProgress);
|
||||||
params.leftMargin = (int) AndroidUtilities.lerp(AndroidUtilities.dpf2(64f), 0f, animationProgress);
|
params.leftMargin = (int) AndroidUtilities.lerp(AndroidUtilities.dpf2(64f), 0f, animationProgress);
|
||||||
avatarImage.requestLayout();
|
avatarImage.requestLayout();
|
||||||
} else if (extraHeight <= AndroidUtilities.dpf2(88f)) {
|
} else if (extraHeight <= AndroidUtilities.dp(88f)) {
|
||||||
avatarScale = (42 + 18 * diff) / 42.0f;
|
avatarScale = (42 + 18 * diff) / 42.0f;
|
||||||
float nameScale = 1.0f + 0.12f * diff;
|
float nameScale = 1.0f + 0.12f * diff;
|
||||||
if (expandAnimator == null || !expandAnimator.isRunning()) {
|
if (expandAnimator == null || !expandAnimator.isRunning()) {
|
||||||
|
@ -2933,7 +2932,7 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter.
|
||||||
private void needLayoutText(float diff) {
|
private void needLayoutText(float diff) {
|
||||||
FrameLayout.LayoutParams layoutParams;
|
FrameLayout.LayoutParams layoutParams;
|
||||||
float scale = nameTextView[1].getScaleX();
|
float scale = nameTextView[1].getScaleX();
|
||||||
float maxScale = extraHeight > AndroidUtilities.dpf2(88f) ? 1.67f : 1.12f;
|
float maxScale = extraHeight > AndroidUtilities.dp(88f) ? 1.67f : 1.12f;
|
||||||
|
|
||||||
if (extraHeight > AndroidUtilities.dp(88f) && scale != maxScale) {
|
if (extraHeight > AndroidUtilities.dp(88f) && scale != maxScale) {
|
||||||
return;
|
return;
|
||||||
|
@ -3333,7 +3332,7 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter.
|
||||||
bD = (int) ((Color.blue(color) - b) * progress);
|
bD = (int) ((Color.blue(color) - b) * progress);
|
||||||
aD = (int) ((Color.alpha(color) - a) * progress);
|
aD = (int) ((Color.alpha(color) - a) * progress);
|
||||||
for (int i = 0; i < 2; i++) {
|
for (int i = 0; i < 2; i++) {
|
||||||
if (nameTextView[i] == null) {
|
if (nameTextView[i] == null || i == 1 && playProfileAnimation == 2) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
nameTextView[i].setTextColor(Color.argb(a + aD, r + rD, g + gD, b + bD));
|
nameTextView[i].setTextColor(Color.argb(a + aD, r + rD, g + gD, b + bD));
|
||||||
|
@ -3400,7 +3399,7 @@ public class ProfileActivity extends BaseFragment implements NotificationCenter.
|
||||||
}
|
}
|
||||||
nameTextView[1].setLayoutParams(layoutParams);
|
nameTextView[1].setLayoutParams(layoutParams);
|
||||||
|
|
||||||
initialAnimationExtraHeight = AndroidUtilities.dpf2(88f);
|
initialAnimationExtraHeight = AndroidUtilities.dp(88f);
|
||||||
} else {
|
} else {
|
||||||
layoutParams = (FrameLayout.LayoutParams) nameTextView[1].getLayoutParams();
|
layoutParams = (FrameLayout.LayoutParams) nameTextView[1].getLayoutParams();
|
||||||
layoutParams.width = (int) ((AndroidUtilities.displaySize.x - AndroidUtilities.dp(32)) / 1.67f);
|
layoutParams.width = (int) ((AndroidUtilities.displaySize.x - AndroidUtilities.dp(32)) / 1.67f);
|
||||||
|
|
Loading…
Reference in a new issue