parent
5ecc60aa0f
commit
a3c0750a29
|
@ -23,6 +23,7 @@ allprojects {
|
||||||
repositories {
|
repositories {
|
||||||
jcenter()
|
jcenter()
|
||||||
maven { url 'https://jitpack.io' }
|
maven { url 'https://jitpack.io' }
|
||||||
|
mavenLocal()
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -148,7 +148,7 @@ dependencies {
|
||||||
compile 'com.github.mariotaku.MediaViewerLibrary:subsample-image-view:0.9.13'
|
compile 'com.github.mariotaku.MediaViewerLibrary:subsample-image-view:0.9.13'
|
||||||
compile 'com.github.mariotaku.SQLiteQB:library:0.9.6'
|
compile 'com.github.mariotaku.SQLiteQB:library:0.9.6'
|
||||||
compile 'com.github.mariotaku.ObjectCursor:core:0.9.6'
|
compile 'com.github.mariotaku.ObjectCursor:core:0.9.6'
|
||||||
compile 'com.github.mariotaku:MultiValueSwitch:0.9.1'
|
compile 'com.github.mariotaku:MultiValueSwitch:0.9.2'
|
||||||
compile 'com.github.mariotaku:AbstractTask:0.9'
|
compile 'com.github.mariotaku:AbstractTask:0.9'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -509,6 +509,7 @@ public abstract class AbsStatusesFragment extends AbsContentListRecyclerViewFrag
|
||||||
return new StatusesBusCallback();
|
return new StatusesBusCallback();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@NonNull
|
||||||
protected abstract UserKey[] getAccountKeys();
|
protected abstract UserKey[] getAccountKeys();
|
||||||
|
|
||||||
protected List<ParcelableStatus> getAdapterData() {
|
protected List<ParcelableStatus> getAdapterData() {
|
||||||
|
|
|
@ -181,6 +181,7 @@ public abstract class CursorStatusesFragment extends AbsStatusesFragment {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@NonNull
|
||||||
@Override
|
@Override
|
||||||
protected UserKey[] getAccountKeys() {
|
protected UserKey[] getAccountKeys() {
|
||||||
final Bundle args = getArguments();
|
final Bundle args = getArguments();
|
||||||
|
|
|
@ -118,9 +118,12 @@ public abstract class ParcelableStatusesFragment extends AbsStatusesFragment {
|
||||||
return (!TextUtils.equals(mLastId, mLastId = list.get(list.size() - 1).id));
|
return (!TextUtils.equals(mLastId, mLastId = list.get(list.size() - 1).id));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@NonNull
|
||||||
@Override
|
@Override
|
||||||
protected UserKey[] getAccountKeys() {
|
protected UserKey[] getAccountKeys() {
|
||||||
return Utils.getAccountKeys(getContext(), getArguments());
|
final UserKey[] accountKeys = Utils.getAccountKeys(getContext(), getArguments());
|
||||||
|
if (accountKeys == null) return new UserKey[0];
|
||||||
|
return accountKeys;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -30,7 +30,6 @@ import android.content.res.Resources;
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
import android.graphics.Outline;
|
import android.graphics.Outline;
|
||||||
import android.graphics.Rect;
|
import android.graphics.Rect;
|
||||||
import android.graphics.RectF;
|
|
||||||
import android.graphics.drawable.ColorDrawable;
|
import android.graphics.drawable.ColorDrawable;
|
||||||
import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
import android.graphics.drawable.LayerDrawable;
|
import android.graphics.drawable.LayerDrawable;
|
||||||
|
@ -49,7 +48,6 @@ import android.support.v4.app.Fragment;
|
||||||
import android.support.v4.app.FragmentActivity;
|
import android.support.v4.app.FragmentActivity;
|
||||||
import android.support.v4.app.LoaderManager;
|
import android.support.v4.app.LoaderManager;
|
||||||
import android.support.v4.app.LoaderManager.LoaderCallbacks;
|
import android.support.v4.app.LoaderManager.LoaderCallbacks;
|
||||||
import android.support.v4.app.SharedElementCallback;
|
|
||||||
import android.support.v4.content.AsyncTaskLoader;
|
import android.support.v4.content.AsyncTaskLoader;
|
||||||
import android.support.v4.content.Loader;
|
import android.support.v4.content.Loader;
|
||||||
import android.support.v4.content.res.ResourcesCompat;
|
import android.support.v4.content.res.ResourcesCompat;
|
||||||
|
@ -82,6 +80,7 @@ import android.widget.ImageView;
|
||||||
import android.widget.ProgressBar;
|
import android.widget.ProgressBar;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
|
import com.afollestad.appthemeengine.ATEActivity;
|
||||||
import com.afollestad.appthemeengine.Config;
|
import com.afollestad.appthemeengine.Config;
|
||||||
import com.afollestad.appthemeengine.util.ATEUtil;
|
import com.afollestad.appthemeengine.util.ATEUtil;
|
||||||
import com.squareup.otto.Subscribe;
|
import com.squareup.otto.Subscribe;
|
||||||
|
@ -96,7 +95,6 @@ import org.mariotaku.twidere.activity.BaseActivity;
|
||||||
import org.mariotaku.twidere.activity.ColorPickerDialogActivity;
|
import org.mariotaku.twidere.activity.ColorPickerDialogActivity;
|
||||||
import org.mariotaku.twidere.activity.LinkHandlerActivity;
|
import org.mariotaku.twidere.activity.LinkHandlerActivity;
|
||||||
import org.mariotaku.twidere.activity.UserListSelectorActivity;
|
import org.mariotaku.twidere.activity.UserListSelectorActivity;
|
||||||
import org.mariotaku.twidere.activity.iface.IThemedActivity;
|
|
||||||
import org.mariotaku.twidere.adapter.SupportTabsAdapter;
|
import org.mariotaku.twidere.adapter.SupportTabsAdapter;
|
||||||
import org.mariotaku.twidere.api.twitter.Twitter;
|
import org.mariotaku.twidere.api.twitter.Twitter;
|
||||||
import org.mariotaku.twidere.api.twitter.TwitterException;
|
import org.mariotaku.twidere.api.twitter.TwitterException;
|
||||||
|
@ -165,7 +163,6 @@ import org.mariotaku.twidere.view.TintedStatusFrameLayout;
|
||||||
import org.mariotaku.twidere.view.iface.IExtendedView.OnSizeChangedListener;
|
import org.mariotaku.twidere.view.iface.IExtendedView.OnSizeChangedListener;
|
||||||
|
|
||||||
import java.util.Calendar;
|
import java.util.Calendar;
|
||||||
import java.util.List;
|
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
|
|
||||||
import edu.tsinghua.hotmobi.HotMobiLogger;
|
import edu.tsinghua.hotmobi.HotMobiLogger;
|
||||||
|
@ -176,8 +173,6 @@ public class UserFragment extends BaseSupportFragment implements OnClickListener
|
||||||
SystemWindowsInsetsCallback, RefreshScrollTopInterface, OnPageChangeListener, KeyboardShortcutCallback,
|
SystemWindowsInsetsCallback, RefreshScrollTopInterface, OnPageChangeListener, KeyboardShortcutCallback,
|
||||||
UserColorChangedListener, UserNicknameChangedListener, IToolBarSupportFragment {
|
UserColorChangedListener, UserNicknameChangedListener, IToolBarSupportFragment {
|
||||||
|
|
||||||
public static final String TRANSITION_NAME_PROFILE_IMAGE = "profile_image";
|
|
||||||
public static final String TRANSITION_NAME_PROFILE_TYPE = "profile_type";
|
|
||||||
private static final ArgbEvaluator sArgbEvaluator = new ArgbEvaluator();
|
private static final ArgbEvaluator sArgbEvaluator = new ArgbEvaluator();
|
||||||
private static final int LOADER_ID_USER = 1;
|
private static final int LOADER_ID_USER = 1;
|
||||||
private static final int LOADER_ID_FRIENDSHIP = 2;
|
private static final int LOADER_ID_FRIENDSHIP = 2;
|
||||||
|
@ -207,9 +202,7 @@ public class UserFragment extends BaseSupportFragment implements OnClickListener
|
||||||
private HeaderDrawerLayout mHeaderDrawerLayout;
|
private HeaderDrawerLayout mHeaderDrawerLayout;
|
||||||
private ViewPager mViewPager;
|
private ViewPager mViewPager;
|
||||||
private TabPagerIndicator mPagerIndicator;
|
private TabPagerIndicator mPagerIndicator;
|
||||||
private View mPagerOverlay;
|
|
||||||
private View mWindowOverlay;
|
private View mWindowOverlay;
|
||||||
private View mErrorOverlay;
|
|
||||||
private View mProfileBannerContainer;
|
private View mProfileBannerContainer;
|
||||||
private ExtendedRelativeLayout mProfileContentContainer;
|
private ExtendedRelativeLayout mProfileContentContainer;
|
||||||
private Button mFollowButton;
|
private Button mFollowButton;
|
||||||
|
@ -298,7 +291,8 @@ public class UserFragment extends BaseSupportFragment implements OnClickListener
|
||||||
@Override
|
@Override
|
||||||
public void onLoadFinished(final Loader<SingleResponse<ParcelableUser>> loader,
|
public void onLoadFinished(final Loader<SingleResponse<ParcelableUser>> loader,
|
||||||
final SingleResponse<ParcelableUser> data) {
|
final SingleResponse<ParcelableUser> data) {
|
||||||
if (getActivity() == null) return;
|
final FragmentActivity activity = getActivity();
|
||||||
|
if (activity == null) return;
|
||||||
if (data.hasData()) {
|
if (data.hasData()) {
|
||||||
final ParcelableUser user = data.getData();
|
final ParcelableUser user = data.getData();
|
||||||
mCardContent.setVisibility(View.VISIBLE);
|
mCardContent.setVisibility(View.VISIBLE);
|
||||||
|
@ -313,19 +307,23 @@ public class UserFragment extends BaseSupportFragment implements OnClickListener
|
||||||
args.putBoolean(EXTRA_OMIT_INTENT_EXTRA, true);
|
args.putBoolean(EXTRA_OMIT_INTENT_EXTRA, true);
|
||||||
getLoaderManager().restartLoader(LOADER_ID_USER, args, this);
|
getLoaderManager().restartLoader(LOADER_ID_USER, args, this);
|
||||||
}
|
}
|
||||||
|
setHasOptionsMenu(true);
|
||||||
} else if (mUser != null && mUser.is_cache) {
|
} else if (mUser != null && mUser.is_cache) {
|
||||||
mCardContent.setVisibility(View.VISIBLE);
|
mCardContent.setVisibility(View.VISIBLE);
|
||||||
mHeaderErrorContainer.setVisibility(View.GONE);
|
mHeaderErrorContainer.setVisibility(View.GONE);
|
||||||
mProgressContainer.setVisibility(View.GONE);
|
mProgressContainer.setVisibility(View.GONE);
|
||||||
displayUser(mUser);
|
displayUser(mUser);
|
||||||
|
setHasOptionsMenu(true);
|
||||||
} else {
|
} else {
|
||||||
if (data.hasException()) {
|
if (data.hasException()) {
|
||||||
mHeaderErrorTextView.setText(Utils.getErrorMessage(getActivity(), data.getException()));
|
mHeaderErrorTextView.setText(Utils.getErrorMessage(activity, data.getException()));
|
||||||
mHeaderErrorTextView.setVisibility(View.VISIBLE);
|
mHeaderErrorTextView.setVisibility(View.VISIBLE);
|
||||||
}
|
}
|
||||||
mCardContent.setVisibility(View.GONE);
|
mCardContent.setVisibility(View.GONE);
|
||||||
mHeaderErrorContainer.setVisibility(View.VISIBLE);
|
mHeaderErrorContainer.setVisibility(View.VISIBLE);
|
||||||
mProgressContainer.setVisibility(View.GONE);
|
mProgressContainer.setVisibility(View.GONE);
|
||||||
|
displayUser(null);
|
||||||
|
setHasOptionsMenu(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -508,9 +506,18 @@ public class UserFragment extends BaseSupportFragment implements OnClickListener
|
||||||
|
|
||||||
@UiThread
|
@UiThread
|
||||||
public void displayUser(final ParcelableUser user) {
|
public void displayUser(final ParcelableUser user) {
|
||||||
mUser = user;
|
|
||||||
final FragmentActivity activity = getActivity();
|
final FragmentActivity activity = getActivity();
|
||||||
if (user == null || user.key == null || activity == null) return;
|
if (activity == null) return;
|
||||||
|
mUser = user;
|
||||||
|
if (user == null || user.key == null) {
|
||||||
|
mProfileImageView.setVisibility(View.GONE);
|
||||||
|
mProfileTypeView.setVisibility(View.GONE);
|
||||||
|
if (activity instanceof ATEActivity) {
|
||||||
|
setUiColor(Config.primaryColor(activity, ((ATEActivity) activity).getATEKey()));
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
mProfileImageView.setVisibility(View.VISIBLE);
|
||||||
final Resources resources = getResources();
|
final Resources resources = getResources();
|
||||||
final LoaderManager lm = getLoaderManager();
|
final LoaderManager lm = getLoaderManager();
|
||||||
lm.destroyLoader(LOADER_ID_USER);
|
lm.destroyLoader(LOADER_ID_USER);
|
||||||
|
@ -565,7 +572,8 @@ public class UserFragment extends BaseSupportFragment implements OnClickListener
|
||||||
setUiColor(user.color);
|
setUiColor(user.color);
|
||||||
} else if (user.link_color != 0) {
|
} else if (user.link_color != 0) {
|
||||||
setUiColor(user.link_color);
|
setUiColor(user.link_color);
|
||||||
} else if (activity instanceof IThemedActivity) {
|
} else if (activity instanceof ATEActivity) {
|
||||||
|
setUiColor(Config.primaryColor(activity, ((ATEActivity) activity).getATEKey()));
|
||||||
}
|
}
|
||||||
final int defWidth = resources.getDisplayMetrics().widthPixels;
|
final int defWidth = resources.getDisplayMetrics().widthPixels;
|
||||||
final int width = mBannerWidth > 0 ? mBannerWidth : defWidth;
|
final int width = mBannerWidth > 0 ? mBannerWidth : defWidth;
|
||||||
|
@ -717,7 +725,6 @@ public class UserFragment extends BaseSupportFragment implements OnClickListener
|
||||||
public void onActivityCreated(final Bundle savedInstanceState) {
|
public void onActivityCreated(final Bundle savedInstanceState) {
|
||||||
super.onActivityCreated(savedInstanceState);
|
super.onActivityCreated(savedInstanceState);
|
||||||
final FragmentActivity activity = getActivity();
|
final FragmentActivity activity = getActivity();
|
||||||
setHasOptionsMenu(true);
|
|
||||||
mUserColorNameManager.registerColorChangedListener(this);
|
mUserColorNameManager.registerColorChangedListener(this);
|
||||||
mUserColorNameManager.registerNicknameChangedListener(this);
|
mUserColorNameManager.registerNicknameChangedListener(this);
|
||||||
mNameFirst = mPreferences.getBoolean(KEY_NAME_FIRST);
|
mNameFirst = mPreferences.getBoolean(KEY_NAME_FIRST);
|
||||||
|
@ -750,42 +757,6 @@ public class UserFragment extends BaseSupportFragment implements OnClickListener
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
activity.setEnterSharedElementCallback(new SharedElementCallback() {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onSharedElementStart(List<String> sharedElementNames, List<View> sharedElements, List<View> sharedElementSnapshots) {
|
|
||||||
final int idx = sharedElementNames.indexOf(TRANSITION_NAME_PROFILE_IMAGE);
|
|
||||||
if (idx != -1) {
|
|
||||||
final View view = sharedElements.get(idx);
|
|
||||||
int[] location = new int[2];
|
|
||||||
final RectF bounds = new RectF(0, 0, view.getWidth(), view.getHeight());
|
|
||||||
view.getLocationOnScreen(location);
|
|
||||||
bounds.offsetTo(location[0], location[1]);
|
|
||||||
mProfileImageView.setTransitionSource(bounds);
|
|
||||||
}
|
|
||||||
super.onSharedElementStart(sharedElementNames, sharedElements, sharedElementSnapshots);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onSharedElementEnd(List<String> sharedElementNames, List<View> sharedElements, List<View> sharedElementSnapshots) {
|
|
||||||
int idx = sharedElementNames.indexOf(TRANSITION_NAME_PROFILE_IMAGE);
|
|
||||||
if (idx != -1) {
|
|
||||||
final View view = sharedElements.get(idx);
|
|
||||||
int[] location = new int[2];
|
|
||||||
final RectF bounds = new RectF(0, 0, view.getWidth(), view.getHeight());
|
|
||||||
view.getLocationOnScreen(location);
|
|
||||||
bounds.offsetTo(location[0], location[1]);
|
|
||||||
mProfileImageView.setTransitionDestination(bounds);
|
|
||||||
}
|
|
||||||
super.onSharedElementEnd(sharedElementNames, sharedElements, sharedElementSnapshots);
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
ViewCompat.setTransitionName(mProfileImageView, TRANSITION_NAME_PROFILE_IMAGE);
|
|
||||||
ViewCompat.setTransitionName(mProfileTypeView, TRANSITION_NAME_PROFILE_TYPE);
|
|
||||||
// ViewCompat.setTransitionName(mCardView, TRANSITION_NAME_CARD);
|
|
||||||
|
|
||||||
|
|
||||||
mTintedStatusFrameLayout.setWindowInsetsListener(new TintedStatusFrameLayout.WindowInsetsListener() {
|
mTintedStatusFrameLayout.setWindowInsetsListener(new TintedStatusFrameLayout.WindowInsetsListener() {
|
||||||
@Override
|
@Override
|
||||||
|
@ -1177,8 +1148,6 @@ public class UserFragment extends BaseSupportFragment implements OnClickListener
|
||||||
mProfileBannerSpace = (ProfileBannerSpace) headerView.findViewById(R.id.profile_banner_space);
|
mProfileBannerSpace = (ProfileBannerSpace) headerView.findViewById(R.id.profile_banner_space);
|
||||||
mViewPager = (ViewPager) contentView.findViewById(R.id.view_pager);
|
mViewPager = (ViewPager) contentView.findViewById(R.id.view_pager);
|
||||||
mPagerIndicator = (TabPagerIndicator) contentView.findViewById(R.id.toolbar_tabs);
|
mPagerIndicator = (TabPagerIndicator) contentView.findViewById(R.id.toolbar_tabs);
|
||||||
mPagerOverlay = contentView.findViewById(R.id.pager_window_overlay);
|
|
||||||
mErrorOverlay = contentView.findViewById(R.id.error_window_overlay);
|
|
||||||
mFollowButton = (Button) headerView.findViewById(R.id.follow);
|
mFollowButton = (Button) headerView.findViewById(R.id.follow);
|
||||||
mFollowProgress = (ProgressBar) headerView.findViewById(R.id.follow_progress);
|
mFollowProgress = (ProgressBar) headerView.findViewById(R.id.follow_progress);
|
||||||
mWindowOverlay = view.findViewById(R.id.window_overlay);
|
mWindowOverlay = view.findViewById(R.id.window_overlay);
|
||||||
|
@ -1497,11 +1466,17 @@ public class UserFragment extends BaseSupportFragment implements OnClickListener
|
||||||
if (mActionBarBackground != null) {
|
if (mActionBarBackground != null) {
|
||||||
mActionBarBackground.setColor(mPrimaryColor);
|
mActionBarBackground.setColor(mPrimaryColor);
|
||||||
}
|
}
|
||||||
|
int taskColor;
|
||||||
|
if (Config.coloredActionBar(activity, activity.getATEKey())) {
|
||||||
|
taskColor = color;
|
||||||
|
} else {
|
||||||
|
taskColor = Config.toolbarColor(activity, activity.getATEKey(), mToolbar);
|
||||||
|
}
|
||||||
if (mUser != null) {
|
if (mUser != null) {
|
||||||
final String name = mUserColorNameManager.getDisplayName(mUser, mNameFirst);
|
final String name = mUserColorNameManager.getDisplayName(mUser, mNameFirst);
|
||||||
ActivitySupport.setTaskDescription(activity, new TaskDescriptionCompat(name, null, color));
|
ActivitySupport.setTaskDescription(activity, new TaskDescriptionCompat(name, null, taskColor));
|
||||||
} else {
|
} else {
|
||||||
ActivitySupport.setTaskDescription(activity, new TaskDescriptionCompat(null, null, color));
|
ActivitySupport.setTaskDescription(activity, new TaskDescriptionCompat(null, null, taskColor));
|
||||||
}
|
}
|
||||||
final int optimalAccentColor = ThemeUtils.getOptimalAccentColor(color,
|
final int optimalAccentColor = ThemeUtils.getOptimalAccentColor(color,
|
||||||
mDescriptionView.getCurrentTextColor());
|
mDescriptionView.getCurrentTextColor());
|
||||||
|
|
|
@ -200,7 +200,7 @@ public final class TwidereLinkify implements Constants {
|
||||||
/**
|
/**
|
||||||
* Applies a regex to the text of a TextView turning the matches into links.
|
* Applies a regex to the text of a TextView turning the matches into links.
|
||||||
*/
|
*/
|
||||||
private void addLinks(final Spannable string, final UserKey accountKey, final long extraId, final int type,
|
private void addLinks(final Spannable string, @Nullable final UserKey accountKey, final long extraId, final int type,
|
||||||
final boolean sensitive, final OnLinkClickListener listener, final int highlightOption) {
|
final boolean sensitive, final OnLinkClickListener listener, final int highlightOption) {
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case LINK_TYPE_MENTION: {
|
case LINK_TYPE_MENTION: {
|
||||||
|
@ -221,7 +221,7 @@ public final class TwidereLinkify implements Constants {
|
||||||
}
|
}
|
||||||
string.removeSpan(span);
|
string.removeSpan(span);
|
||||||
String url = span.getURL();
|
String url = span.getURL();
|
||||||
if (USER_TYPE_FANFOU_COM.equals(accountKey.getHost())) {
|
if (accountKey != null && USER_TYPE_FANFOU_COM.equals(accountKey.getHost())) {
|
||||||
// Fix search path
|
// Fix search path
|
||||||
if (url.startsWith("/")) {
|
if (url.startsWith("/")) {
|
||||||
url = "http://fanfou.com" + url;
|
url = "http://fanfou.com" + url;
|
||||||
|
@ -258,7 +258,9 @@ public final class TwidereLinkify implements Constants {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case LINK_TYPE_STATUS: {
|
case LINK_TYPE_STATUS: {
|
||||||
if (!USER_TYPE_TWITTER_COM.equals(accountKey.getHost())) break;
|
if (accountKey == null || !USER_TYPE_TWITTER_COM.equals(accountKey.getHost())) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
final int length = string.length();
|
final int length = string.length();
|
||||||
final URLSpan[] spans = string.getSpans(0, length, URLSpan.class);
|
final URLSpan[] spans = string.getSpans(0, length, URLSpan.class);
|
||||||
for (final URLSpan span : spans) {
|
for (final URLSpan span : spans) {
|
||||||
|
|
|
@ -821,7 +821,7 @@ public final class Utils implements Constants {
|
||||||
}
|
}
|
||||||
final UserKey accountKey = UserKeyUtils.findById(context, accountId);
|
final UserKey accountKey = UserKeyUtils.findById(context, accountId);
|
||||||
args.putParcelable(EXTRA_ACCOUNT_KEY, accountKey);
|
args.putParcelable(EXTRA_ACCOUNT_KEY, accountKey);
|
||||||
if (accountKey == null) return new UserKey[0];
|
if (accountKey == null) return new UserKey[]{new UserKey(accountId, null)};
|
||||||
return new UserKey[]{accountKey};
|
return new UserKey[]{accountKey};
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
|
|
@ -42,6 +42,7 @@
|
||||||
android:id="@+id/profile_name_container"
|
android:id="@+id/profile_name_container"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignWithParentIfMissing="true"
|
||||||
android:layout_below="@id/profile_banner_space"
|
android:layout_below="@id/profile_banner_space"
|
||||||
android:layout_toEndOf="@id/profile_image"
|
android:layout_toEndOf="@id/profile_image"
|
||||||
android:layout_toRightOf="@id/profile_image"
|
android:layout_toRightOf="@id/profile_image"
|
||||||
|
@ -68,7 +69,9 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_gravity="center"
|
android:layout_gravity="center"
|
||||||
android:visibility="gone"/>
|
android:visibility="gone"
|
||||||
|
tools:text="@string/follow"
|
||||||
|
tools:visibility="visible"/>
|
||||||
|
|
||||||
<ProgressBar
|
<ProgressBar
|
||||||
android:id="@+id/follow_progress"
|
android:id="@+id/follow_progress"
|
||||||
|
@ -408,7 +411,10 @@
|
||||||
android:layout_alignBottom="@+id/profile_name_container"
|
android:layout_alignBottom="@+id/profile_name_container"
|
||||||
android:layout_marginLeft="@dimen/element_spacing_normal"
|
android:layout_marginLeft="@dimen/element_spacing_normal"
|
||||||
android:layout_marginStart="@dimen/element_spacing_normal"
|
android:layout_marginStart="@dimen/element_spacing_normal"
|
||||||
android:contentDescription="@string/profile_image"/>
|
android:contentDescription="@string/profile_image"
|
||||||
|
android:visibility="gone"
|
||||||
|
tools:src="@mipmap/ic_launcher"
|
||||||
|
tools:visibility="visible"/>
|
||||||
|
|
||||||
<org.mariotaku.twidere.view.BoundsImageView
|
<org.mariotaku.twidere.view.BoundsImageView
|
||||||
android:id="@+id/profile_type"
|
android:id="@+id/profile_type"
|
||||||
|
@ -422,6 +428,7 @@
|
||||||
android:layout_marginEnd="@dimen/element_spacing_minus_msmall"
|
android:layout_marginEnd="@dimen/element_spacing_minus_msmall"
|
||||||
android:layout_marginRight="@dimen/element_spacing_minus_msmall"
|
android:layout_marginRight="@dimen/element_spacing_minus_msmall"
|
||||||
android:scaleType="fitCenter"
|
android:scaleType="fitCenter"
|
||||||
|
android:visibility="gone"
|
||||||
tools:visibility="gone"/>
|
tools:visibility="gone"/>
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
Loading…
Reference in New Issue