Commit 6866004a authored by DrKLO's avatar DrKLO

Material everywhere

parent ce33df07
......@@ -80,7 +80,7 @@ android {
defaultConfig {
minSdkVersion 8
targetSdkVersion 21
versionCode 382
versionCode 383
versionName "2.0.0"
}
}
/******************************************************************************
** This file is an amalgamation of many separate C source files from SQLite
** version 3.8.7. By combining all the individual C code files into this
** version 3.8.7.1. By combining all the individual C code files into this
** single large file, the entire code can be compiled as a single translation
** unit. This allows many compilers to do optimizations that would not be
** possible if the files were compiled separately. Performance improvements
......@@ -231,9 +231,9 @@ extern "C" {
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
** [sqlite_version()] and [sqlite_source_id()].
*/
#define SQLITE_VERSION "3.8.7"
#define SQLITE_VERSION "3.8.7.1"
#define SQLITE_VERSION_NUMBER 3008007
#define SQLITE_SOURCE_ID "2014-10-17 11:24:17 e4ab094f8afce0817f4074e823fabe59fc29ebb4"
#define SQLITE_SOURCE_ID "2014-10-29 13:59:56 3b7b72c4685aa5cf5e675c2c47ebec10d9704221"
/*
** CAPI3REF: Run-Time Library Version Numbers
......@@ -20756,11 +20756,7 @@ SQLITE_PRIVATE int sqlite3ApiExit(sqlite3* db, int rc){
** the glibc version so the glibc version is definitely preferred.
*/
#if !defined(HAVE_STRCHRNUL)
# if defined(linux)
# define HAVE_STRCHRNUL 1
# else
# define HAVE_STRCHRNUL 0
# endif
# define HAVE_STRCHRNUL 0
#endif
......@@ -42806,6 +42802,14 @@ static int pager_end_transaction(Pager *pPager, int hasMaster, int bCommit){
rc = SQLITE_OK;
}else{
rc = sqlite3OsTruncate(pPager->jfd, 0);
if( rc==SQLITE_OK && pPager->fullSync ){
/* Make sure the new file size is written into the inode right away.
** Otherwise the journal might resurrect following a power loss and
** cause the last transaction to roll back. See
** https://bugzilla.mozilla.org/show_bug.cgi?id=1072773
*/
rc = sqlite3OsSync(pPager->jfd, pPager->syncFlags);
}
}
pPager->journalOff = 0;
}else if( pPager->journalMode==PAGER_JOURNALMODE_PERSIST
......@@ -71443,7 +71447,7 @@ case OP_Column: {
if( pOp->p4type==P4_MEM ){
sqlite3VdbeMemShallowCopy(pDest, pOp->p4.pMem, MEM_Static);
}else{
MemSetTypeFlag(pDest, MEM_Null);
sqlite3VdbeMemSetNull(pDest);
}
goto op_column_out;
}
......@@ -93757,7 +93761,7 @@ SQLITE_PRIVATE void sqlite3DeleteFrom(
assert( nKey==nPk ); /* OP_Found will use an unpacked key */
assert( !IsVirtual(pTab) );
if( aToOpen[iDataCur-iTabCur] ){
assert( pPk!=0 );
assert( pPk!=0 || pTab->pSelect!=0 );
sqlite3VdbeAddOp4Int(v, OP_NotFound, iDataCur, addrBypass, iKey, nKey);
VdbeCoverage(v);
}
......@@ -111281,8 +111285,8 @@ SQLITE_PRIVATE void sqlite3Update(
/* Top of the update loop */
if( okOnePass ){
if( aToOpen[iDataCur-iBaseCur] ){
assert( pPk!=0 );
if( aToOpen[iDataCur-iBaseCur] && !isView ){
assert( pPk );
sqlite3VdbeAddOp4Int(v, OP_NotFound, iDataCur, labelBreak, regKey, nKey);
VdbeCoverageNeverTaken(v);
}
......@@ -107,9 +107,9 @@ extern "C" {
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
** [sqlite_version()] and [sqlite_source_id()].
*/
#define SQLITE_VERSION "3.8.7"
#define SQLITE_VERSION "3.8.7.1"
#define SQLITE_VERSION_NUMBER 3008007
#define SQLITE_SOURCE_ID "2014-10-17 11:24:17 e4ab094f8afce0817f4074e823fabe59fc29ebb4"
#define SQLITE_SOURCE_ID "2014-10-29 13:59:56 3b7b72c4685aa5cf5e675c2c47ebec10d9704221"
/*
** CAPI3REF: Run-Time Library Version Numbers
......
......@@ -1354,7 +1354,11 @@ public class MessagesController implements NotificationCenter.NotificationCenter
req.peer.user_id = user.id;
}
}
req.offset = 0;
if (load_type == 3) {
req.offset = -count / 2;
} else {
req.offset = 0;
}
req.limit = count;
req.max_id = max_id;
long reqId = ConnectionsManager.getInstance().performRpc(req, new RPCRequest.RPCRequestDelegate() {
......
......@@ -23,7 +23,6 @@ import android.widget.TextView;
import org.telegram.android.AndroidUtilities;
import org.telegram.messenger.R;
import org.telegram.ui.AnimationCompat.ViewProxy;
public class ActionBar extends FrameLayout {
......@@ -43,15 +42,17 @@ public class ActionBar extends FrameLayout {
private TextView subTitleTextView;
private ActionBarMenu menu;
private ActionBarMenu actionMode;
private View actionOverlay;
private boolean occupyStatusBar = Build.VERSION.SDK_INT >= 21;
private boolean allowOverlayTitle;
private CharSequence lastTitle;
private boolean showingOverlayTitle;
protected boolean isSearchFieldVisible;
protected int itemsBackgroundResourceId;
private boolean isBackOverlayVisible;
protected BaseFragment parentFragment;
public ActionBarMenuOnItemClick actionBarMenuOnItemClick;
private float alphaEx = 1;
private int extraHeight;
public ActionBar(Context context) {
......@@ -182,7 +183,6 @@ public class ActionBar extends FrameLayout {
}
backButtonImageView = new ImageView(getContext());
titleFrameLayout.addView(backButtonImageView);
backButtonImageView.setVisibility(VISIBLE);
backButtonImageView.setScaleType(ImageView.ScaleType.CENTER);
backButtonImageView.setBackgroundResource(itemsBackgroundResourceId);
backButtonImageView.setOnClickListener(new OnClickListener() {
......@@ -273,6 +273,7 @@ public class ActionBar extends FrameLayout {
createTitleTextView();
}
if (titleTextView != null) {
lastTitle = value;
titleTextView.setVisibility(value != null ? VISIBLE : GONE);
titleTextView.setText(value);
positionTitle(getMeasuredWidth(), getMeasuredHeight());
......@@ -364,7 +365,7 @@ public class ActionBar extends FrameLayout {
}
actionMode.setVisibility(GONE);
if (titleFrameLayout != null) {
titleFrameLayout.setVisibility(isSearchFieldVisible || actionOverlay == null || actionOverlay.getVisibility() == GONE ? VISIBLE : INVISIBLE);
titleFrameLayout.setVisibility(VISIBLE);
}
if (menu != null) {
menu.setVisibility(VISIBLE);
......@@ -387,7 +388,6 @@ public class ActionBar extends FrameLayout {
if (drawable != null && drawable instanceof MenuDrawable) {
((MenuDrawable)drawable).setRotation(visible ? 1 : 0, true);
}
positionBackOverlay(getMeasuredWidth(), getMeasuredHeight());
}
public void closeSearchField() {
......@@ -403,25 +403,10 @@ public class ActionBar extends FrameLayout {
positionBackImage(actionBarHeight);
positionMenu(MeasureSpec.getSize(widthMeasureSpec), actionBarHeight);
positionTitle(MeasureSpec.getSize(widthMeasureSpec), actionBarHeight);
positionBackOverlay(MeasureSpec.getSize(widthMeasureSpec), actionBarHeight);
actionBarHeight += occupyStatusBar ? AndroidUtilities.statusBarHeight : 0;
super.onMeasure(widthMeasureSpec, MeasureSpec.makeMeasureSpec(actionBarHeight + extraHeight, MeasureSpec.EXACTLY));
}
public void setAlphaEx(float alpha) {
alphaEx = alpha;
if (menu != null) {
ViewProxy.setAlpha(menu, alphaEx);
}
if (titleFrameLayout != null) {
ViewProxy.setAlpha(titleFrameLayout, alphaEx);
}
}
public float getAlphaEx() {
return alphaEx;
}
public void onMenuButtonPressed() {
if (menu != null) {
menu.onMenuButtonPressed();
......@@ -434,30 +419,24 @@ public class ActionBar extends FrameLayout {
}
}
public void setBackOverlay(int resourceId) {
LayoutInflater li = (LayoutInflater) getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
actionOverlay = li.inflate(resourceId, null);
addView(actionOverlay);
actionOverlay.setVisibility(GONE);
actionOverlay.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (actionBarMenuOnItemClick != null) {
actionBarMenuOnItemClick.onItemClick(-1);
}
}
});
public void setAllowOverlayTitle(boolean value) {
allowOverlayTitle = value;
}
public void setBackOverlayVisible(boolean visible) {
if (actionOverlay == null || parentFragment == null || parentFragment.parentLayout == null) {
public void setTitleOverlayText(String text) {
if (showingOverlayTitle == (text != null) || !allowOverlayTitle || parentFragment.parentLayout == null) {
return;
}
isBackOverlayVisible = visible;
if (visible) {
parentFragment.parentLayout.onOverlayShow(actionOverlay, parentFragment);
showingOverlayTitle = text != null;
CharSequence textToSet = text != null ? text : lastTitle;
if (textToSet != null && titleTextView == null) {
createTitleTextView();
}
if (titleTextView != null) {
titleTextView.setVisibility(textToSet != null ? VISIBLE : GONE);
titleTextView.setText(textToSet);
positionTitle(getMeasuredWidth(), getMeasuredHeight());
}
positionBackOverlay(getMeasuredWidth(), getMeasuredHeight());
}
public void setExtraHeight(int value, boolean layout) {
......@@ -471,24 +450,6 @@ public class ActionBar extends FrameLayout {
return extraHeight;
}
private void positionBackOverlay(int widthMeasureSpec, int heightMeasureSpec) {
if (actionOverlay == null) {
return;
}
titleFrameLayout.setVisibility(isSearchFieldVisible || actionOverlay == null || actionOverlay.getVisibility() == GONE ? VISIBLE : INVISIBLE);
actionOverlay.setVisibility(!isSearchFieldVisible && isBackOverlayVisible ? VISIBLE : GONE);
if (actionOverlay.getVisibility() == VISIBLE) {
MarginLayoutParams layoutParams = (MarginLayoutParams) actionOverlay.getLayoutParams();
layoutParams.width = LayoutParams.WRAP_CONTENT;
layoutParams.height = LayoutParams.MATCH_PARENT;
actionOverlay.setLayoutParams(layoutParams);
actionOverlay.measure(widthMeasureSpec, heightMeasureSpec);
layoutParams.topMargin = occupyStatusBar ? AndroidUtilities.statusBarHeight : 0;
layoutParams.width = Math.min(actionOverlay.getMeasuredWidth() + AndroidUtilities.dp(4), widthMeasureSpec - (menu != null ? menu.getMeasuredWidth() : 0));
actionOverlay.setLayoutParams(layoutParams);
}
}
public void setOccupyStatusBar(boolean value) {
occupyStatusBar = value;
}
......
......@@ -42,7 +42,6 @@ public class ActionBarLayout extends FrameLayout {
public static interface ActionBarLayoutDelegate {
public abstract boolean onPreIme();
public abstract void onOverlayShow(View view, BaseFragment fragment);
public abstract boolean needPresentFragment(BaseFragment fragment, boolean removeLast, boolean forceWithoutAnimation, ActionBarLayout layout);
public abstract boolean needAddFragmentToStack(BaseFragment fragment, ActionBarLayout layout);
public abstract boolean needCloseLastFragment(ActionBarLayout layout);
......@@ -128,6 +127,8 @@ public class ActionBarLayout extends FrameLayout {
private View backgroundView;
private boolean removeActionBarExtraHeight;
private String titleOverlayText;
private ActionBarLayoutDelegate delegate = null;
protected Activity parentActivity = null;
......@@ -332,6 +333,7 @@ public class ActionBarLayout extends FrameLayout {
lastFragment.actionBar.setOccupyStatusBar(false);
}
containerViewBack.addView(lastFragment.actionBar);
lastFragment.actionBar.setTitleOverlayText(titleOverlayText);
}
containerViewBack.addView(fragmentView);
ViewGroup.LayoutParams layoutParams = fragmentView.getLayoutParams();
......@@ -558,6 +560,7 @@ public class ActionBarLayout extends FrameLayout {
fragment.actionBar.setOccupyStatusBar(false);
}
containerViewBack.addView(fragment.actionBar);
fragment.actionBar.setTitleOverlayText(titleOverlayText);
}
containerViewBack.addView(fragmentView);
ViewGroup.LayoutParams layoutParams = fragmentView.getLayoutParams();
......@@ -695,6 +698,7 @@ public class ActionBarLayout extends FrameLayout {
previousFragment.actionBar.setOccupyStatusBar(false);
}
containerView.addView(previousFragment.actionBar);
previousFragment.actionBar.setTitleOverlayText(titleOverlayText);
}
containerView.addView(fragmentView);
ViewGroup.LayoutParams layoutParams = fragmentView.getLayoutParams();
......@@ -798,6 +802,7 @@ public class ActionBarLayout extends FrameLayout {
parent.removeView(previousFragment.actionBar);
}
containerView.addView(previousFragment.actionBar);
previousFragment.actionBar.setTitleOverlayText(titleOverlayText);
}
containerView.addView(fragmentView);
ViewGroup.LayoutParams layoutParams = fragmentView.getLayoutParams();
......@@ -842,12 +847,6 @@ public class ActionBarLayout extends FrameLayout {
return super.onKeyUp(keyCode, event);
}
protected void onOverlayShow(View view, BaseFragment fragment) {
if (delegate != null) {
delegate.onOverlayShow(view, fragment);
}
}
public void onActionModeStarted(ActionMode mode) {
if (currentActionBar != null) {
currentActionBar.setVisibility(GONE);
......@@ -942,4 +941,13 @@ public class ActionBarLayout extends FrameLayout {
public void setRemoveActionBarExtraHeight(boolean value) {
removeActionBarExtraHeight = value;
}
public void setTitleOverlayText(String text) {
titleOverlayText = text;
for (BaseFragment fragment : fragmentsStack) {
if (fragment.actionBar != null) {
fragment.actionBar.setTitleOverlayText(titleOverlayText);
}
}
}
}
......@@ -57,6 +57,7 @@ public class DialogsSearchAdapter extends BaseContactsSearchAdapter {
public DialogsSearchAdapter(Context context, boolean messagesSearch) {
mContext = context;
needMessagesSearch = messagesSearch;
needMessagesSearch = false;
}
public void setDelegate(MessagesActivitySearchAdapterDelegate delegate) {
......
......@@ -67,7 +67,7 @@ public class BlockedUsersActivity extends BaseFragment implements NotificationCe
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("BlockedUsers", R.string.BlockedUsers));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
......@@ -74,6 +74,8 @@ public class ChatMediaCell extends ChatBaseCell implements MediaController.FileD
private boolean photoNotSet = false;
private boolean cancelLoading = false;
private boolean allowedToSetPhoto = true;
private int TAG;
private int buttonState = 0;
......@@ -595,18 +597,19 @@ public class ChatMediaCell extends ChatBaseCell implements MediaController.FileD
}
}
if (photoExist || MediaController.getInstance().canDownloadMedia(MediaController.AUTODOWNLOAD_MASK_PHOTO)) {
if (messageObject.imagePreview != null) {
photoImage.setImage(currentPhotoObject.photoOwner.location, currentPhotoFilter, new BitmapDrawable(messageObject.imagePreview), noSize ? 0 : currentPhotoObject.photoOwner.size, false);
if (allowedToSetPhoto || ImageLoader.getInstance().getImageFromMemory(currentPhotoObject.photoOwner.location, null, currentPhotoFilter, null) != null) {
allowedToSetPhoto = true;
if (messageObject.imagePreview != null) {
photoImage.setImage(currentPhotoObject.photoOwner.location, currentPhotoFilter, new BitmapDrawable(messageObject.imagePreview), noSize ? 0 : currentPhotoObject.photoOwner.size, false);
} else {
photoImage.setImage(currentPhotoObject.photoOwner.location, currentPhotoFilter, null, noSize ? 0 : currentPhotoObject.photoOwner.size, false);
}
} else {
photoImage.setImage(currentPhotoObject.photoOwner.location, currentPhotoFilter, null, noSize ? 0 : currentPhotoObject.photoOwner.size, false);
photoImage.setImageBitmap(messageObject.imagePreview);
}
} else {
photoNotSet = true;
if (messageObject.imagePreview != null) {
photoImage.setImageBitmap(messageObject.imagePreview);
} else {
photoImage.setImageBitmap((Bitmap)null);
}
photoImage.setImageBitmap(messageObject.imagePreview);
}
}
} else {
......@@ -800,6 +803,18 @@ public class ChatMediaCell extends ChatBaseCell implements MediaController.FileD
}
}
public void setAllowedToSetPhoto(boolean value) {
if (allowedToSetPhoto == value) {
return;
}
allowedToSetPhoto = value;
if (value && currentMessageObject != null && currentMessageObject.type == 1) {
MessageObject temp = currentMessageObject;
currentMessageObject = null;
setMessageObject(temp);
}
}
@Override
protected void onAfterBackgroundDraw(Canvas canvas) {
boolean imageDrawn = false;
......
......@@ -58,7 +58,7 @@ public class ChangeChatNameActivity extends BaseFragment {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("EditName", R.string.EditName));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
......@@ -50,7 +50,7 @@ public class ChangeNameActivity extends BaseFragment {
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("EditName", R.string.EditName));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
......@@ -63,7 +63,7 @@ public class ChangeUsernameActivity extends BaseFragment {
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("Username", R.string.Username));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
......@@ -80,7 +80,7 @@ public class ContactAddActivity extends BaseFragment implements NotificationCent
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
if (addContact) {
actionBar.setTitle(LocaleController.getString("AddContactTitle", R.string.AddContactTitle));
} else {
......
......@@ -119,7 +119,7 @@ public class ContactsActivity extends BaseFragment implements NotificationCenter
searchWas = false;
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(destroyAfterSelect ? LocaleController.getString("SelectContact", R.string.SelectContact) : LocaleController.getString("Contacts", R.string.Contacts));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
......
......@@ -64,7 +64,7 @@ public class CountrySelectActivity extends BaseFragment {
public View createView(LayoutInflater inflater, final ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("ChooseCountry", R.string.ChooseCountry));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
......
......@@ -132,7 +132,7 @@ public class DocumentSelectActivity extends BaseFragment {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("SelectFile", R.string.SelectFile));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
......@@ -52,6 +52,7 @@ import org.telegram.ui.Adapters.ContactsSearchAdapter;
import org.telegram.ui.ActionBar.ActionBar;
import org.telegram.ui.ActionBar.ActionBarMenu;
import org.telegram.ui.ActionBar.BaseFragment;
import org.telegram.ui.Cells.UserCell;
import org.telegram.ui.Views.SectionsListView;
import java.util.ArrayList;
......@@ -145,7 +146,7 @@ public class GroupCreateActivity extends BaseFragment implements NotificationCen
searchWas = false;
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
if (isAlwaysShare) {
actionBar.setTitle(LocaleController.getString("AlwaysShareWithTitle", R.string.AlwaysShareWithTitle));
} else if (isNeverShare) {
......@@ -473,9 +474,7 @@ public class GroupCreateActivity extends BaseFragment implements NotificationCen
} else if (id == NotificationCenter.updateInterfaces) {
int mask = (Integer)args[0];
if ((mask & MessagesController.UPDATE_MASK_AVATAR) != 0 || (mask & MessagesController.UPDATE_MASK_NAME) != 0 || (mask & MessagesController.UPDATE_MASK_STATUS) != 0) {
if (listView != null) {
listView.invalidateViews();
}
updateVisibleRows(mask);
}
} else if (id == NotificationCenter.chatDidCreated) {
AndroidUtilities.runOnUIThread(new Runnable() {
......@@ -487,6 +486,18 @@ public class GroupCreateActivity extends BaseFragment implements NotificationCen
}
}
private void updateVisibleRows(int mask) {
if (listView != null) {
int count = listView.getChildCount();
for (int a = 0; a < count; a++) {
View child = listView.getChildAt(a);
if (child instanceof UserCell) {
((UserCell) child).update(mask);
}
}
}
}
public void setDelegate(GroupCreateActivityDelegate delegate) {
this.delegate = delegate;
}
......
......@@ -140,7 +140,7 @@ public class GroupCreateFinalActivity extends BaseFragment implements Notificati
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
if (isBroadcast) {
actionBar.setTitle(LocaleController.getString("NewBroadcastList", R.string.NewBroadcastList));
} else {
......
......@@ -21,7 +21,6 @@ import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import org.telegram.android.AndroidUtilities;
import org.telegram.android.LocaleController;
import org.telegram.messenger.TLRPC;
import org.telegram.android.MessagesController;
......@@ -47,7 +46,7 @@ public class IdenticonActivity extends BaseFragment {
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("EncryptionKey", R.string.EncryptionKey));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
......
......@@ -58,7 +58,7 @@ public class LanguageSelectActivity extends BaseFragment {
searchWas = false;
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("Language", R.string.Language));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
......
......@@ -101,7 +101,7 @@ public class LastSeenActivity extends BaseFragment implements NotificationCenter
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("PrivacyLastSeen", R.string.PrivacyLastSeen));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
......@@ -78,7 +78,7 @@ public class LastSeenUsersActivity extends BaseFragment implements NotificationC
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
if (isAlwaysShare) {
actionBar.setTitle(LocaleController.getString("AlwaysShareWithTitle", R.string.AlwaysShareWithTitle));
} else {
......
......@@ -34,7 +34,6 @@ import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;
import org.telegram.android.AndroidUtilities;
......@@ -917,7 +916,7 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa
Utilities.checkForUpdates(this);
ApplicationLoader.mainInterfacePaused = false;
ConnectionsManager.getInstance().setAppPaused(false, false);
//actionBarLayout.getActionBar().setBackOverlayVisible(currentConnectionState != 0);
updateCurrentConnectionState();
}
@Override
......@@ -958,13 +957,25 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa
if (currentConnectionState != state) {
FileLog.e("tmessages", "switch to state " + state);
currentConnectionState = state;
//actionBarLayout.getActionBar().setBackOverlayVisible(currentConnectionState != 0);
updateCurrentConnectionState();
}
} else if (id == NotificationCenter.mainUserInfoChanged) {
drawerLayoutAdapter.notifyDataSetChanged();
}
}
private void updateCurrentConnectionState() {
String text = null;
if (currentConnectionState == 1) {
text = LocaleController.getString("WaitingForNetwork", R.string.WaitingForNetwork);
} else if (currentConnectionState == 2) {
text = LocaleController.getString("Connecting", R.string.Connecting);
} else if (currentConnectionState == 3) {
text = LocaleController.getString("Updating", R.string.Updating);
}
actionBarLayout.setTitleOverlayText(text);
}
@Override
protected void onSaveInstanceState(Bundle outState) {
try {
......@@ -1070,24 +1081,6 @@ public class LaunchActivity extends Activity implements ActionBarLayout.ActionBa
return false;
}
@Override
public void onOverlayShow(View view, BaseFragment fragment) {
if (view == null || fragment == null || actionBarLayout.fragmentsStack.isEmpty()) {
return;
}
View backStatusButton = view.findViewById(R.id.back_button);
TextView statusText = (TextView)view.findViewById(R.id.status_text);
backStatusButton.setVisibility(actionBarLayout.fragmentsStack.get(0) == fragment ? View.GONE : View.VISIBLE);
view.setEnabled(actionBarLayout.fragmentsStack.get(0) != fragment);
if (currentConnectionState == 1) {
statusText.setText(LocaleController.getString("WaitingForNetwork", R.string.WaitingForNetwork));
} else if (currentConnectionState == 2) {
statusText.setText(LocaleController.getString("Connecting", R.string.Connecting));
} else if (currentConnectionState == 3) {
statusText.setText(LocaleController.getString("Updating", R.string.Updating));
}
}
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (AndroidUtilities.isTablet()) {
......
......@@ -93,7 +93,7 @@ public class LocationActivity extends BaseFragment implements NotificationCenter
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
if (messageObject != null) {
actionBar.setTitle(LocaleController.getString("ChatLocation", R.string.ChatLocation));
} else {
......
......@@ -89,7 +89,7 @@ public class MediaActivity extends BaseFragment implements NotificationCenter.No
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("SharedMedia", R.string.SharedMedia));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
......@@ -202,7 +202,7 @@ public class MessagesActivity extends BaseFragment implements NotificationCenter
actionBar.setBackButtonDrawable(new MenuDrawable());
actionBar.setTitle(LocaleController.getString("AppName", R.string.AppName));
}
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
......@@ -136,7 +136,7 @@ public class NotificationsSettingsActivity extends BaseFragment implements Notif
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("NotificationsAndSounds", R.string.NotificationsAndSounds));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
......@@ -331,7 +331,7 @@ public class PhotoCropActivity extends BaseFragment {
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("AddContact", R.string.AddContact));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
......@@ -145,9 +145,12 @@ public class PhotoPickerActivity extends BaseFragment implements NotificationCen
});
cancelButton.setText(LocaleController.getString("Cancel", R.string.Cancel).toUpperCase());
cancelButton.setTypeface(AndroidUtilities.getTypeface("fonts/rmedium.ttf"));
doneButtonTextView = (TextView)doneButton.findViewById(R.id.done_button_text);
doneButtonTextView.setText(LocaleController.getString("Send", R.string.Send).toUpperCase());
doneButtonTextView.setTypeface(AndroidUtilities.getTypeface("fonts/rmedium.ttf"));
doneButtonBadgeTextView = (TextView)doneButton.findViewById(R.id.done_button_badge);
doneButtonBadgeTextView.setTypeface(AndroidUtilities.getTypeface("fonts/rmedium.ttf"));
listView.setAdapter(listAdapter = new ListAdapter(getParentActivity()));
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
......
......@@ -911,9 +911,12 @@ public class PhotoViewer implements NotificationCenter.NotificationCenterDelegat
pickerView.setLayoutParams(layoutParams);
cancelButton.setText(LocaleController.getString("Cancel", R.string.Cancel).toUpperCase());
cancelButton.setTypeface(AndroidUtilities.getTypeface("fonts/rmedium.ttf"));
doneButtonTextView = (TextView)doneButton.findViewById(R.id.done_button_text);
doneButtonTextView.setText(LocaleController.getString("Send", R.string.Send).toUpperCase());
doneButtonTextView.setTypeface(AndroidUtilities.getTypeface("fonts/rmedium.ttf"));
doneButtonBadgeTextView = (TextView)doneButton.findViewById(R.id.done_button_badge);
doneButtonBadgeTextView.setTypeface(AndroidUtilities.getTypeface("fonts/rmedium.ttf"));
gestureDetector = new GestureDetector(containerView.getContext(), this);
gestureDetector.setOnDoubleTapListener(this);
......
......@@ -91,7 +91,7 @@ public class PrivacySettingsActivity extends BaseFragment implements Notificatio
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("PrivacySettings", R.string.PrivacySettings));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
......@@ -81,7 +81,7 @@ public class ProfileNotificationsActivity extends BaseFragment implements Notifi
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("NotificationsAndSounds", R.string.NotificationsAndSounds));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
......@@ -83,6 +83,9 @@ public class AvatarDrawable extends Drawable {
}
public static int getColorIndex(int id) {
if (id >= 0 && id < 8) {
return id;
}
try {
String str;
if (id >= 0) {
......
......@@ -103,7 +103,7 @@ public class WallpapersActivity extends BaseFragment implements NotificationCent
public View createView(LayoutInflater inflater, ViewGroup container) {
if (fragmentView == null) {
actionBar.setBackButtonImage(R.drawable.ic_ab_back);
actionBar.setBackOverlay(R.layout.updating_state_layout);
actionBar.setAllowOverlayTitle(true);
actionBar.setTitle(LocaleController.getString("ChatBackground", R.string.ChatBackground));
actionBar.setActionBarMenuOnItemClick(new ActionBar.ActionBarMenuOnItemClick() {
@Override
......
TMessagesProj/src/main/res/drawable-hdpi/btn_send_location_down.9.png

394 Bytes | W: | H:

TMessagesProj/src/main/res/drawable-hdpi/btn_send_location_down.9.png

1.21 KB | W: | H:

TMessagesProj/src/main/res/drawable-hdpi/btn_send_location_down.9.png
TMessagesProj/src/main/res/drawable-hdpi/btn_send_location_down.9.png
TMessagesProj/src/main/res/drawable-hdpi/btn_send_location_down.9.png
TMessagesProj/src/main/res/drawable-hdpi/btn_send_location_down.9.png
  • 2-up
  • Swipe
  • Onion skin
TMessagesProj/src/main/res/drawable-hdpi/btn_send_location_up.9.png

382 Bytes | W: | H:

TMessagesProj/src/main/res/drawable-hdpi/btn_send_location_up.9.png

1.21 KB | W: | H:

TMessagesProj/src/main/res/drawable-hdpi/btn_send_location_up.9.png
TMessagesProj/src/main/res/drawable-hdpi/btn_send_location_up.9.png
TMessagesProj/src/main/res/drawable-hdpi/btn_send_location_up.9.png
TMessagesProj/src/main/res/drawable-hdpi/btn_send_location_up.9.png
  • 2-up
  • Swipe
  • Onion skin
TMessagesProj/src/main/res/drawable-hdpi/ic_msg_panel_hide.png

1.31 KB | W: | H:

TMessagesProj/src/main/res/drawable-hdpi/ic_msg_panel_hide.png

1.32 KB | W: | H:

TMessagesProj/src/main/res/drawable-hdpi/ic_msg_panel_hide.png
TMessagesProj/src/main/res/drawable-hdpi/ic_msg_panel_hide.png
TMessagesProj/src/main/res/drawable-hdpi/ic_msg_panel_hide.png
TMessagesProj/src/main/res/drawable-hdpi/ic_msg_panel_hide.png
  • 2-up
  • Swipe
  • Onion skin
TMessagesProj/src/main/res/drawable-mdpi/btn_send_location_down.9.png

290 Bytes | W: | H:

TMessagesProj/src/main/res/drawable-mdpi/btn_send_location_down.9.png

1.13 KB | W: | H:

TMessagesProj/src/main/res/drawable-mdpi/btn_send_location_down.9.png
TMessagesProj/src/main/res/drawable-mdpi/btn_send_location_down.9.png
TMessagesProj/src/main/res/drawable-mdpi/btn_send_location_down.9.png
TMessagesProj/src/main/res/drawable-mdpi/btn_send_location_down.9.png
  • 2-up
  • Swipe
  • Onion skin
TMessagesProj/src/main/res/drawable-mdpi/btn_send_location_up.9.png

277 Bytes | W: | H:

TMessagesProj/src/main/res/drawable-mdpi/btn_send_location_up.9.png

1.11 KB | W: | H:

TMessagesProj/src/main/res/drawable-mdpi/btn_send_location_up.9.png
TMessagesProj/src/main/res/drawable-mdpi/btn_send_location_up.9.png
TMessagesProj/src/main/res/drawable-mdpi/btn_send_location_up.9.png
TMessagesProj/src/main/res/drawable-mdpi/btn_send_location_up.9.png
  • 2-up
  • Swipe
  • Onion skin
TMessagesProj/src/main/res/drawable-mdpi/ic_msg_panel_hide.png

1.21 KB | W: | H:

TMessagesProj/src/main/res/drawable-mdpi/ic_msg_panel_hide.png

1.14 KB | W: | H:

TMessagesProj/src/main/res/drawable-mdpi/ic_msg_panel_hide.png
TMessagesProj/src/main/res/drawable-mdpi/ic_msg_panel_hide.png
TMessagesProj/src/main/res/drawable-mdpi/ic_msg_panel_hide.png
TMessagesProj/src/main/res/drawable-mdpi/ic_msg_panel_hide.png
  • 2-up
  • Swipe
  • Onion skin
TMessagesProj/src/main/res/drawable-xhdpi/btn_send_location_up.9.png

500 Bytes | W: | H:

TMessagesProj/src/main/res/drawable-xhdpi/btn_send_location_up.9.png

1.32 KB | W: | H:

TMessagesProj/src/main/res/drawable-xhdpi/btn_send_location_up.9.png
TMessagesProj/src/main/res/drawable-xhdpi/btn_send_location_up.9.png
TMessagesProj/src/main/res/drawable-xhdpi/btn_send_location_up.9.png
TMessagesProj/src/main/res/drawable-xhdpi/btn_send_location_up.9.png
  • 2-up
  • Swipe
  • Onion skin
TMessagesProj/src/main/res/drawable-xhdpi/ic_msg_panel_hide.png

1.37 KB | W: | H:

TMessagesProj/src/main/res/drawable-xhdpi/ic_msg_panel_hide.png

1.41 KB | W: | H:

TMessagesProj/src/main/res/drawable-xhdpi/ic_msg_panel_hide.png
TMessagesProj/src/main/res/drawable-xhdpi/ic_msg_panel_hide.png
TMessagesProj/src/main/res/drawable-xhdpi/ic_msg_panel_hide.png
TMessagesProj/src/main/res/drawable-xhdpi/ic_msg_panel_hide.png
  • 2-up
  • Swipe
  • Onion skin
TMessagesProj/src/main/res/drawable-xxhdpi/ic_lock_header.png

1.27 KB | W: | H:

TMessagesProj/src/main/res/drawable-xxhdpi/ic_lock_header.png

1.19 KB | W: | H:

TMessagesProj/src/main/res/drawable-xxhdpi/ic_lock_header.png
TMessagesProj/src/main/res/drawable-xxhdpi/ic_lock_header.png
TMessagesProj/src/main/res/drawable-xxhdpi/ic_lock_header.png
TMessagesProj/src/main/res/drawable-xxhdpi/ic_lock_header.png
  • 2-up
  • Swipe
  • Onion skin
TMessagesProj/src/main/res/drawable-xxhdpi/ic_msg_panel_hide.png

1.51 KB | W: | H:

TMessagesProj/src/main/res/drawable-xxhdpi/ic_msg_panel_hide.png

1.74 KB | W: | H:

TMessagesProj/src/main/res/drawable-xxhdpi/ic_msg_panel_hide.png
TMessagesProj/src/main/res/drawable-xxhdpi/ic_msg_panel_hide.png
TMessagesProj/src/main/res/drawable-xxhdpi/ic_msg_panel_hide.png
TMessagesProj/src/main/res/drawable-xxhdpi/ic_msg_panel_hide.png
  • 2-up
  • Swipe
  • Onion skin
......@@ -31,7 +31,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="22dp"
android:textColor="#000000"
android:textColor="#212121"
android:layout_marginRight="88dp"
android:layout_marginTop="20dp"
android:layout_marginLeft="12dp"
......
......@@ -31,7 +31,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="22dp"
android:textColor="#000000"
android:textColor="#212121"
android:layout_marginLeft="88dp"
android:layout_marginTop="20dp"
android:layout_marginRight="12dp"
......
......@@ -14,21 +14,14 @@
android:paddingLeft="3dp"
android:layout_width="0.0dip"
android:layout_height="fill_parent"
android:layout_weight="1.0"
android:textStyle="bold"/>
<View
android:layout_gravity="center_vertical"
android:background="#5c5c5c"
android:layout_width="1px"
android:layout_height="28dp" />
android:layout_weight="1.0"/>
<FrameLayout
android:id="@+id/done_button"
android:background="@drawable/bar_selector_picker"
android:paddingRight="3dp"
android:clickable="true"
android:layout_width="0.0dip"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="1.0">
......@@ -45,11 +38,12 @@
android:background="@drawable/photobadge"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="19dp"
android:layout_height="23dp"
android:minWidth="23dp"
android:id="@+id/done_button_badge"
android:paddingLeft="6dp"
android:paddingRight="6dp"
android:textStyle="bold"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:paddingBottom="1dp"
android:layout_marginRight="10dp"/>
<TextView
......@@ -60,7 +54,7 @@
android:layout_height="wrap_content"
android:id="@+id/done_button_text"
android:drawablePadding="8dp"
android:textStyle="bold"/>
android:layout_gravity="center_vertical"/>
</LinearLayout>
......
<org.telegram.ui.Views.FrameLayoutFixed
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="400dp"
android:layout_height="fill_parent"
android:background="@drawable/bar_selector"
android:id="@+id/back_button_background"
android:layout_gravity="top">
<ImageView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:src="@drawable/ic_ab_back"
android:layout_gravity="center_vertical|left"
android:layout_marginLeft="3dp"
android:id="@+id/back_button"/>
<TextView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_marginLeft="16dp"
android:textColor="#ffffff"
android:textSize="17dp"
android:layout_gravity="center_vertical|left"
android:gravity="top|left"
android:ellipsize="end"
android:singleLine="true"
android:paddingRight="2dp"
android:id="@+id/status_text"/>
</org.telegram.ui.Views.FrameLayoutFixed>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment