bug fixes
This commit is contained in:
parent
9c7bace28e
commit
8ec18a70d2
|
@ -1,10 +0,0 @@
|
|||
<component name="libraryTable">
|
||||
<library name="android-easing-1.0.3">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/it.sephiroth.android.library.easing/android-easing/1.0.3/res" />
|
||||
<root url="jar://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/it.sephiroth.android.library.easing/android-easing/1.0.3/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</component>
|
|
@ -1,8 +1,8 @@
|
|||
<component name="libraryTable">
|
||||
<library name="imagezoom-1.0.5">
|
||||
<library name="imagezoom-2.0.3">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/it.sephiroth.android.library.imagezoom/imagezoom/1.0.5/res" />
|
||||
<root url="jar://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/it.sephiroth.android.library.imagezoom/imagezoom/1.0.5/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/it.sephiroth.android.library.imagezoom/imagezoom/2.0.3/res" />
|
||||
<root url="jar://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/it.sephiroth.android.library.imagezoom/imagezoom/2.0.3/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
|
@ -1,8 +1,8 @@
|
|||
<component name="libraryTable">
|
||||
<library name="library-1.0">
|
||||
<library name="library-1.0.1">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/com.negusoft.holoaccent/library/1.0/res" />
|
||||
<root url="jar://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/com.negusoft.holoaccent/library/1.0/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/com.negusoft.holoaccent/library/1.0.1/res" />
|
||||
<root url="jar://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/com.negusoft.holoaccent/library/1.0.1/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
|
@ -1,8 +1,8 @@
|
|||
<component name="libraryTable">
|
||||
<library name="play-services-5.0.77">
|
||||
<library name="play-services-5.2.08">
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/com.google.android.gms/play-services/5.0.77/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/com.google.android.gms/play-services/5.0.77/res" />
|
||||
<root url="jar://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/com.google.android.gms/play-services/5.2.08/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/twidere/build/intermediates/exploded-aar/com.google.android.gms/play-services/5.2.08/res" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
|
@ -64,8 +64,8 @@ android {
|
|||
|
||||
dependencies {
|
||||
compile 'com.android.support:support-v13:20.0.0'
|
||||
compile 'com.google.android.gms:play-services:5.0.77'
|
||||
compile 'com.negusoft.holoaccent:library:+'
|
||||
compile 'com.google.android.gms:play-services:+'
|
||||
compile 'com.negusoft.holoaccent:library:1.0.1'
|
||||
compile 'com.etsy.android.grid:library:1.0.5'
|
||||
compile 'com.sothree.slidinguppanel:library:2.0.0'
|
||||
compile 'it.sephiroth.android.library.imagezoom:imagezoom:+'
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -148,8 +148,10 @@ public interface Constants extends TwidereConstants {
|
|||
public static final String TWIDERE_PREVIEW_TEXT_HTML = "Twidere is an open source twitter client for Android, see <a href='https://github.com/mariotaku/twidere'>github.com/mariotak…<a/>";
|
||||
public static final String TWIDERE_PREVIEW_SOURCE = "Twidere for Android";
|
||||
|
||||
public static final int HONDAJOJO_ID = 514378421;
|
||||
public static final String HONDAJOJO_SCREEN_NAME = "@HondaJOJO";
|
||||
public static final long HONDAJOJO_ID = 514378421;
|
||||
public static final String HONDAJOJO_SCREEN_NAME = "HondaJOJO";
|
||||
public static final int UUCKY_ID = 1062473329;
|
||||
public static final String UUCKY_SCREEN_NAME = "Uucky_Lee";
|
||||
public static final String EASTER_EGG_TRIGGER_TEXT = "\u718A\u5B69\u5B50";
|
||||
public static final String EASTER_EGG_RESTORE_TEXT_PART1 = "\u5927\u738B";
|
||||
public static final String EASTER_EGG_RESTORE_TEXT_PART2 = "\u5C0F\u7684";
|
||||
|
|
|
@ -179,14 +179,16 @@ public class SettingsActivity extends BasePreferenceActivity {
|
|||
mPreferences = getSharedPreferences(SHARED_PREFERENCES_NAME, MODE_PRIVATE);
|
||||
mCompactCards = mPreferences.getBoolean(KEY_COMPACT_CARDS, false);
|
||||
mPlainListStyle = mPreferences.getBoolean(KEY_PLAIN_LIST_STYLE, false);
|
||||
mCurrentThemeColor = getOverrideAccentColor();
|
||||
mCurrentThemeColor = ThemeUtils.getUserThemeColor(this);
|
||||
mCurrentThemeFontFamily = getThemeFontFamily();
|
||||
mCurrentThemeBackgroundAlpha = getThemeBackgroundAlpha();
|
||||
mCurrentIsDarkDrawerEnabled = isDarkDrawerEnabled();
|
||||
super.onCreate(savedInstanceState);
|
||||
setIntent(getIntent().addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT));
|
||||
final ActionBar actionBar = getActionBar();
|
||||
actionBar.setDisplayHomeAsUpEnabled(true);
|
||||
if (actionBar != null) {
|
||||
actionBar.setDisplayHomeAsUpEnabled(true);
|
||||
}
|
||||
if (savedInstanceState != null) {
|
||||
invalidateHeaders();
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@ import android.content.DialogInterface;
|
|||
import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
import android.content.res.Resources;
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.Rect;
|
||||
import android.location.Criteria;
|
||||
import android.location.Location;
|
||||
|
@ -68,6 +69,7 @@ import android.widget.TextView;
|
|||
import android.widget.TextView.OnEditorActionListener;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.nostra13.universalimageloader.utils.IoUtils;
|
||||
import com.scvngr.levelup.views.gallery.AdapterView;
|
||||
import com.scvngr.levelup.views.gallery.AdapterView.OnItemClickListener;
|
||||
import com.scvngr.levelup.views.gallery.AdapterView.OnItemLongClickListener;
|
||||
|
@ -107,6 +109,8 @@ import org.mariotaku.twidere.view.holder.StatusViewHolder;
|
|||
import org.mariotaku.twidere.view.iface.IColorLabelView;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.util.ArrayList;
|
||||
|
@ -156,6 +160,7 @@ public class ComposeActivity extends BaseSupportDialogActivity implements TextWa
|
|||
private static final String EXTRA_ORIGINAL_TEXT = "original_text";
|
||||
|
||||
private static final String EXTRA_TEMP_URI = "temp_uri";
|
||||
private static final String EXTRA_SHARE_SCREENSHOT = "share_screenshot";
|
||||
|
||||
private TwidereValidator mValidator;
|
||||
private final Extractor mExtractor = new Extractor();
|
||||
|
@ -785,10 +790,21 @@ public class ComposeActivity extends BaseSupportDialogActivity implements TextWa
|
|||
final CharSequence extraSubject = intent.getCharSequenceExtra(Intent.EXTRA_SUBJECT);
|
||||
final CharSequence extraText = intent.getCharSequenceExtra(Intent.EXTRA_TEXT);
|
||||
final Uri extraStream = intent.getParcelableExtra(Intent.EXTRA_STREAM);
|
||||
//TODO handle share_screenshot extra (Bitmap)
|
||||
if (extraStream != null) {
|
||||
new AddMediaTask(this, extraStream, createTempImageUri(), ParcelableMedia.TYPE_IMAGE, false).execute();
|
||||
} else if (data != null) {
|
||||
new AddMediaTask(this, data, createTempImageUri(), ParcelableMedia.TYPE_IMAGE, false).execute();
|
||||
} else if (intent.hasExtra(EXTRA_SHARE_SCREENSHOT)) {
|
||||
final Bitmap bitmap = intent.getParcelableExtra(EXTRA_SHARE_SCREENSHOT);
|
||||
if (bitmap != null) {
|
||||
try {
|
||||
new AddBitmapTask(this, bitmap, createTempImageUri(), ParcelableMedia.TYPE_IMAGE).execute();
|
||||
} catch (IOException e) {
|
||||
// ignore
|
||||
bitmap.recycle();
|
||||
}
|
||||
}
|
||||
}
|
||||
mEditText.setText(getShareStatus(this, extraSubject, extraText));
|
||||
final int selection_end = mEditText.length();
|
||||
|
@ -1330,6 +1346,34 @@ public class ComposeActivity extends BaseSupportDialogActivity implements TextWa
|
|||
|
||||
}
|
||||
|
||||
private static class AddBitmapTask extends AddMediaTask {
|
||||
|
||||
private final Bitmap mBitmap;
|
||||
|
||||
AddBitmapTask(ComposeActivity activity, Bitmap bitmap, Uri dst, int media_type) throws IOException {
|
||||
super(activity, Uri.fromFile(File.createTempFile("tmp_bitmap", null)), dst, media_type,
|
||||
true);
|
||||
mBitmap = bitmap;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Boolean doInBackground(Void... params) {
|
||||
if (mBitmap == null || mBitmap.isRecycled()) return false;
|
||||
FileOutputStream os = null;
|
||||
try {
|
||||
os = new FileOutputStream(getSrc().getPath());
|
||||
mBitmap.compress(Bitmap.CompressFormat.PNG, 0, os);
|
||||
mBitmap.recycle();
|
||||
} catch (IOException e) {
|
||||
return false;
|
||||
} finally {
|
||||
IoUtils.closeSilently(os);
|
||||
}
|
||||
return super.doInBackground(params);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private static class AddMediaTask extends AsyncTask<Void, Void, Boolean> {
|
||||
|
||||
private final ComposeActivity activity;
|
||||
|
@ -1337,6 +1381,10 @@ public class ComposeActivity extends BaseSupportDialogActivity implements TextWa
|
|||
private final Uri src, dst;
|
||||
private final boolean delete_src;
|
||||
|
||||
Uri getSrc() {
|
||||
return src;
|
||||
}
|
||||
|
||||
AddMediaTask(final ComposeActivity activity, final Uri src, final Uri dst, final int media_type,
|
||||
final boolean delete_src) {
|
||||
this.activity = activity;
|
||||
|
|
|
@ -613,7 +613,7 @@ public class HomeActivity extends BaseSupportActivity implements OnClickListener
|
|||
unregisterReceiver(mStateReceiver);
|
||||
final ContentResolver resolver = getContentResolver();
|
||||
resolver.unregisterContentObserver(mAccountChangeObserver);
|
||||
mPreferences.edit().putInt(KEY_SAVED_TAB_POSITION, mViewPager.getCurrentItem()).commit();
|
||||
mPreferences.edit().putInt(KEY_SAVED_TAB_POSITION, mViewPager.getCurrentItem()).apply();
|
||||
sendBroadcast(new Intent(BROADCAST_HOME_ACTIVITY_ONSTOP));
|
||||
|
||||
// UCD
|
||||
|
|
|
@ -35,6 +35,7 @@ import android.graphics.PorterDuff;
|
|||
import android.graphics.drawable.Drawable;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.os.Parcelable;
|
||||
import android.support.v4.app.FragmentActivity;
|
||||
import android.support.v4.app.LoaderManager;
|
||||
import android.support.v4.app.LoaderManager.LoaderCallbacks;
|
||||
|
@ -433,15 +434,14 @@ public class UserProfileFragment extends BaseSupportListFragment implements OnCl
|
|||
.registerOnSharedPreferenceChangeListener(this);
|
||||
mLocale = getResources().getConfiguration().locale;
|
||||
final Bundle args = getArguments();
|
||||
long account_id = -1, user_id = -1;
|
||||
String screen_name = null;
|
||||
if (args != null) {
|
||||
if (savedInstanceState != null) {
|
||||
args.putAll(savedInstanceState);
|
||||
}
|
||||
account_id = args.getLong(EXTRA_ACCOUNT_ID, -1);
|
||||
user_id = args.getLong(EXTRA_USER_ID, -1);
|
||||
screen_name = args.getString(EXTRA_SCREEN_NAME);
|
||||
long accountId = -1, userId = -1;
|
||||
String screenName = null;
|
||||
if (savedInstanceState != null) {
|
||||
args.putAll(savedInstanceState);
|
||||
} else {
|
||||
accountId = args.getLong(EXTRA_ACCOUNT_ID, -1);
|
||||
userId = args.getLong(EXTRA_USER_ID, -1);
|
||||
screenName = args.getString(EXTRA_SCREEN_NAME);
|
||||
}
|
||||
mProfileImageLoader = getApplication().getImageLoaderWrapper();
|
||||
mAdapter = new ListActionAdapter(getActivity());
|
||||
|
@ -454,6 +454,11 @@ public class UserProfileFragment extends BaseSupportListFragment implements OnCl
|
|||
setListAdapter(null);
|
||||
mListView = getListView();
|
||||
mListView.addHeaderView(mHeaderView, null, false);
|
||||
if (isUucky(userId, screenName, args.getParcelable(EXTRA_USER))) {
|
||||
final View uuckyFooter = View.inflate(getActivity(),
|
||||
R.layout.list_footer_user_profile_uucky, null);
|
||||
mListView.addFooterView(uuckyFooter, null, false);
|
||||
}
|
||||
mListView.setOnItemClickListener(this);
|
||||
mListView.setOnItemLongClickListener(this);
|
||||
|
||||
|
@ -465,7 +470,16 @@ public class UserProfileFragment extends BaseSupportListFragment implements OnCl
|
|||
mProfileBannerSpace.setOnTouchListener(this);
|
||||
|
||||
setListAdapter(mAdapter);
|
||||
getUserInfo(account_id, user_id, screen_name, false);
|
||||
getUserInfo(accountId, userId, screenName, false);
|
||||
}
|
||||
|
||||
private boolean isUucky(long userId, String screenName, Parcelable parcelable) {
|
||||
if (userId == UUCKY_ID || UUCKY_SCREEN_NAME.equalsIgnoreCase(screenName)) return true;
|
||||
if (parcelable instanceof ParcelableUser) {
|
||||
final ParcelableUser user = (ParcelableUser) parcelable;
|
||||
return user.id == UUCKY_ID || UUCKY_SCREEN_NAME.equalsIgnoreCase(user.screen_name);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -741,7 +741,7 @@ public final class TwidereDataProvider extends ContentProvider implements Consta
|
|||
|
||||
private void displayStatusesNotification(final int notifiedCount, final AccountPreferences accountPreferences,
|
||||
final int notificationType, final int notificationId, final List<ParcelableStatus> statuses,
|
||||
final int titleSingle, final int titleMutiple, final int icon) {
|
||||
final int titleSingle, final int titleMultiple, final int icon) {
|
||||
final NotificationManager nm = getNotificationManager();
|
||||
if (notifiedCount == 0 || accountPreferences == null || statuses.isEmpty()) return;
|
||||
final long accountId = accountPreferences.getAccountId();
|
||||
|
@ -778,7 +778,7 @@ public final class TwidereDataProvider extends ContentProvider implements Consta
|
|||
final String displayName = getDisplayName(context, firstItem.user_id, firstItem.user_name,
|
||||
firstItem.user_screen_name, mNameFirst, mNickOnly);
|
||||
if (usersCount > 1) {
|
||||
title = resources.getString(titleMutiple, displayName, usersCount - 1);
|
||||
title = resources.getString(titleMultiple, displayName, usersCount - 1);
|
||||
} else {
|
||||
title = resources.getString(titleSingle, displayName);
|
||||
}
|
||||
|
@ -818,9 +818,9 @@ public final class TwidereDataProvider extends ContentProvider implements Consta
|
|||
final Intent viewProfileIntent = new Intent(Intent.ACTION_VIEW, viewProfileBuilder.build());
|
||||
viewProfileIntent.setPackage(APP_PACKAGE_NAME);
|
||||
notifBuilder.addAction(R.drawable.ic_action_reply, context.getString(R.string.reply),
|
||||
PendingIntent.getActivity(context, 0, replyIntent, PendingIntent.FLAG_UPDATE_CURRENT));
|
||||
PendingIntent.getActivity(context, 0, replyIntent, PendingIntent.FLAG_UPDATE_CURRENT));
|
||||
notifBuilder.addAction(R.drawable.ic_action_profile, context.getString(R.string.view_user_profile),
|
||||
PendingIntent.getActivity(context, 0, viewProfileIntent, PendingIntent.FLAG_UPDATE_CURRENT));
|
||||
PendingIntent.getActivity(context, 0, viewProfileIntent, PendingIntent.FLAG_UPDATE_CURRENT));
|
||||
final NotificationCompat.BigTextStyle bigTextStyle = new NotificationCompat.BigTextStyle(notifBuilder);
|
||||
bigTextStyle.bigText(stripMentionText(firstItem.text_unescaped,
|
||||
getAccountScreenName(context, firstItem.account_id)));
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -59,6 +59,7 @@ public class ProfileBannerImageView extends ForegroundImageView implements IExte
|
|||
public ProfileBannerImageView(final Context context, final AttributeSet attrs, final int defStyle) {
|
||||
super(context, attrs, defStyle);
|
||||
if (isInEditMode()) return;
|
||||
setScaleType(ScaleType.CENTER_CROP);
|
||||
ViewCompat.setLayerType(this, LAYER_TYPE_SOFTWARE, null);
|
||||
final boolean is_dark_theme = ThemeUtils.isDarkTheme(context);
|
||||
COLORS_REVERSED[1] = is_dark_theme ? 0xFF000000 : 0xFFFFFFFF;
|
||||
|
|
|
@ -33,62 +33,62 @@ import org.mariotaku.twidere.util.accessor.ViewAccessor;
|
|||
|
||||
public class RightDrawerFrameLayout extends FrameLayout {
|
||||
|
||||
private final Paint mClipPaint = new Paint();
|
||||
private float mScrollScale, mPercentOpen;
|
||||
private boolean mClipEnabled;
|
||||
private final Paint mClipPaint = new Paint();
|
||||
private float mScrollScale, mPercentOpen;
|
||||
private boolean mClipEnabled;
|
||||
|
||||
public RightDrawerFrameLayout(final Context context) {
|
||||
this(context, null);
|
||||
}
|
||||
public RightDrawerFrameLayout(final Context context) {
|
||||
this(context, null);
|
||||
}
|
||||
|
||||
public RightDrawerFrameLayout(final Context context, final AttributeSet attrs) {
|
||||
this(context, attrs, 0);
|
||||
}
|
||||
public RightDrawerFrameLayout(final Context context, final AttributeSet attrs) {
|
||||
this(context, attrs, 0);
|
||||
}
|
||||
|
||||
public RightDrawerFrameLayout(final Context context, final AttributeSet attrs, final int defStyle) {
|
||||
super(context, attrs, defStyle);
|
||||
final Drawable bg;
|
||||
if (ThemeUtils.isDarkDrawerEnabled(context)) {
|
||||
bg = ThemeUtils.getWindowBackground(context, ThemeUtils.getDrawerThemeResource(context));
|
||||
} else {
|
||||
bg = ThemeUtils.getWindowBackground(context);
|
||||
}
|
||||
ViewAccessor.setBackground(this, bg);
|
||||
setWillNotDraw(false);
|
||||
mClipPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.CLEAR));
|
||||
}
|
||||
public RightDrawerFrameLayout(final Context context, final AttributeSet attrs, final int defStyle) {
|
||||
super(context, attrs, defStyle);
|
||||
final Drawable bg;
|
||||
if (!isInEditMode() && ThemeUtils.isDarkDrawerEnabled(context)) {
|
||||
bg = ThemeUtils.getWindowBackground(context, ThemeUtils.getDrawerThemeResource(context));
|
||||
} else {
|
||||
bg = ThemeUtils.getWindowBackground(context);
|
||||
}
|
||||
ViewAccessor.setBackground(this, bg);
|
||||
setWillNotDraw(false);
|
||||
mClipPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.CLEAR));
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasOverlappingRendering() {
|
||||
return mClipEnabled;
|
||||
}
|
||||
@Override
|
||||
public boolean hasOverlappingRendering() {
|
||||
return mClipEnabled;
|
||||
}
|
||||
|
||||
public void setClipEnabled(final boolean clipEnabled) {
|
||||
mClipEnabled = clipEnabled;
|
||||
if (!clipEnabled) {
|
||||
setAlpha(1);
|
||||
}
|
||||
}
|
||||
public void setClipEnabled(final boolean clipEnabled) {
|
||||
mClipEnabled = clipEnabled;
|
||||
if (!clipEnabled) {
|
||||
setAlpha(1);
|
||||
}
|
||||
}
|
||||
|
||||
public void setPercentOpen(final float percentOpen) {
|
||||
if (mPercentOpen == percentOpen) return;
|
||||
mPercentOpen = percentOpen;
|
||||
if (mClipEnabled) {
|
||||
setAlpha(1 - (1 - mPercentOpen) * (1.0f / 0xff));
|
||||
invalidate();
|
||||
}
|
||||
}
|
||||
public void setPercentOpen(final float percentOpen) {
|
||||
if (mPercentOpen == percentOpen) return;
|
||||
mPercentOpen = percentOpen;
|
||||
if (mClipEnabled) {
|
||||
setAlpha(1 - (1 - mPercentOpen) * (1.0f / 0xff));
|
||||
invalidate();
|
||||
}
|
||||
}
|
||||
|
||||
public void setScrollScale(final float scrollScale) {
|
||||
mScrollScale = scrollScale;
|
||||
}
|
||||
public void setScrollScale(final float scrollScale) {
|
||||
mScrollScale = scrollScale;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void dispatchDraw(final Canvas canvas) {
|
||||
super.dispatchDraw(canvas);
|
||||
if (mClipEnabled && mPercentOpen > 0 && mPercentOpen < 1) {
|
||||
final int right = Math.round(getWidth() * (1 - mPercentOpen) * (1 - mScrollScale));
|
||||
canvas.drawRect(getLeft(), getTop(), right, getBottom(), mClipPaint);
|
||||
}
|
||||
}
|
||||
@Override
|
||||
protected void dispatchDraw(final Canvas canvas) {
|
||||
super.dispatchDraw(canvas);
|
||||
if (mClipEnabled && mPercentOpen > 0 && mPercentOpen < 1) {
|
||||
final int right = Math.round(getWidth() * (1 - mPercentOpen) * (1 - mScrollScale));
|
||||
canvas.drawRect(getLeft(), getTop(), right, getBottom(), mClipPaint);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,15 +1,45 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<org.mariotaku.twidere.view.RightDrawerFrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/right_drawer_container"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/right_drawer_container"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<fragment
|
||||
android:id="@+id/right_drawer"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
class="org.mariotaku.twidere.fragment.support.QuickMenuFragment"
|
||||
tools:layout="@layout/fragment_quick_menu"/>
|
||||
<FrameLayout
|
||||
android:visibility="gone"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<fragment
|
||||
android:id="@+id/right_drawer"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
class="org.mariotaku.twidere.fragment.support.QuickMenuFragment"
|
||||
tools:layout="@layout/fragment_quick_menu"/>
|
||||
</FrameLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical"
|
||||
android:padding="@dimen/element_spacing_normal">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:alpha="0.5"
|
||||
android:rotation="95.0"
|
||||
android:text=": )"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="48sp"/>
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:alpha="0.5"
|
||||
android:gravity="center"
|
||||
android:text="Something awesome will appear soon"
|
||||
android:textColor="@android:color/white"/>
|
||||
</LinearLayout>
|
||||
</org.mariotaku.twidere.view.RightDrawerFrameLayout>
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:text="- Mea est luna -"
|
||||
android:gravity="center"
|
||||
android:textColor="?android:textColorPrimary"
|
||||
android:alpha="0.2"
|
||||
android:textSize="8sp"
|
||||
android:typeface="serif"
|
||||
android:textStyle="italic"
|
||||
android:layout_height="wrap_content" />
|
|
@ -535,7 +535,7 @@
|
|||
<string name="translate">Translate</string>
|
||||
<string name="sponsored_by">Sponsored by</string>
|
||||
<string name="special_thanks_to">Special thanks to</string>
|
||||
<string name="contributors_list_summary">If you don\'t see your name, please tell our project account.</string>
|
||||
<string name="contributors_list_summary">If you didn\'t find your name, please tell our project account.</string>
|
||||
<string name="account_options">Account options</string>
|
||||
<string name="show_in_timeline">Show in timeline</string>
|
||||
<string name="cards">Cards</string>
|
||||
|
|
|
@ -56,23 +56,40 @@
|
|||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/bundles" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/coverage-instrumented-classes" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex-cache" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jacoco" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/javaResources" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/libs" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/lint" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/ndk" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/pre-dexed" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/proguard" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build/outputs" />
|
||||
</content>
|
||||
<orderEntry type="jdk" jdkName="Android API 19 Platform" jdkType="Android SDK" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" exported="" name="library-1.0.1" level="project" />
|
||||
<orderEntry type="library" exported="" name="support-v13-20.0.0" level="project" />
|
||||
<orderEntry type="library" exported="" name="library-2.0.0" level="project" />
|
||||
<orderEntry type="library" exported="" name="android-easing-1.0.3" level="project" />
|
||||
<orderEntry type="library" exported="" name="httpclient-android-4.3.3" level="project" />
|
||||
<orderEntry type="library" exported="" name="imagezoom-1.0.5" level="project" />
|
||||
<orderEntry type="library" exported="" name="play-services-5.0.77" level="project" />
|
||||
<orderEntry type="library" exported="" name="merge-1.0.1" level="project" />
|
||||
<orderEntry type="library" exported="" name="play-services-5.2.08" level="project" />
|
||||
<orderEntry type="library" exported="" name="library-1.0.5" level="project" />
|
||||
<orderEntry type="library" exported="" name="support-v4-20.0.0" level="project" />
|
||||
<orderEntry type="library" exported="" name="snakeyaml-1.12" level="project" />
|
||||
<orderEntry type="library" exported="" name="acra-4.5.0" level="project" />
|
||||
<orderEntry type="library" exported="" name="library-1.0" level="project" />
|
||||
<orderEntry type="library" exported="" name="imagezoom-2.0.3" level="project" />
|
||||
<orderEntry type="library" exported="" name="dashclock-api-2.0.0" level="project" />
|
||||
<orderEntry type="library" exported="" name="dnsjava-ipv6-1.0-with-sources" level="project" />
|
||||
<orderEntry type="library" exported="" name="jsonserializer-1.0" level="project" />
|
||||
|
|
Loading…
Reference in New Issue