diff --git a/twidere/src/main/java/org/mariotaku/twidere/fragment/support/UserFragment.java b/twidere/src/main/java/org/mariotaku/twidere/fragment/support/UserFragment.java
index 1eddd98bb..2fd94a988 100644
--- a/twidere/src/main/java/org/mariotaku/twidere/fragment/support/UserFragment.java
+++ b/twidere/src/main/java/org/mariotaku/twidere/fragment/support/UserFragment.java
@@ -1111,12 +1111,9 @@ public class UserFragment extends BaseSupportFragment implements OnClickListener
return true;
}
case R.id.open_in_browser: {
- if (user.extras != null && user.extras.statusnet_profile_url != null) {
- final Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(user.extras.statusnet_profile_url));
- intent.addCategory(Intent.CATEGORY_BROWSABLE);
- startActivity(intent);
- } else {
- final Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://twitter.com/" + user.screen_name));
+ final Uri uri = LinkCreator.getUserWebLink(user);
+ if (uri != null) {
+ final Intent intent = new Intent(Intent.ACTION_VIEW, uri);
intent.addCategory(Intent.CATEGORY_BROWSABLE);
startActivity(intent);
}
diff --git a/twidere/src/main/java/org/mariotaku/twidere/util/LinkCreator.java b/twidere/src/main/java/org/mariotaku/twidere/util/LinkCreator.java
index 3d577a093..102b7eefa 100644
--- a/twidere/src/main/java/org/mariotaku/twidere/util/LinkCreator.java
+++ b/twidere/src/main/java/org/mariotaku/twidere/util/LinkCreator.java
@@ -26,6 +26,7 @@ import android.text.TextUtils;
import org.mariotaku.twidere.Constants;
import org.mariotaku.twidere.model.ParcelableStatus;
+import org.mariotaku.twidere.model.ParcelableUser;
import org.mariotaku.twidere.model.UserKey;
/**
@@ -108,4 +109,22 @@ public class LinkCreator implements Constants {
builder.appendPath(id);
return builder.build();
}
+
+ private static Uri getFanfouUserLink(String id) {
+ Uri.Builder builder = new Uri.Builder();
+ builder.scheme(SCHEME_HTTP);
+ builder.authority(AUTHORITY_FANFOU);
+ builder.appendPath(id);
+ return builder.build();
+ }
+
+ public static Uri getUserWebLink(@NonNull ParcelableUser user) {
+ if (user.extras != null && user.extras.statusnet_profile_url != null) {
+ return Uri.parse(user.extras.statusnet_profile_url);
+ }
+ if (USER_TYPE_FANFOU_COM.equals(user.key.getHost())) {
+ return getFanfouUserLink(user.key.getId());
+ }
+ return getTwitterUserLink(user.screen_name);
+ }
}
diff --git a/twidere/src/main/res/layout/header_user.xml b/twidere/src/main/res/layout/header_user.xml
index bb6ce9c1f..901dd52ec 100644
--- a/twidere/src/main/res/layout/header_user.xml
+++ b/twidere/src/main/res/layout/header_user.xml
@@ -17,10 +17,11 @@
~ along with this program. If not, see .
-->
-
@@ -28,14 +29,14 @@
+ android:layout_height="wrap_content"/>
+ android:layout_alignTop="@+id/profile_name_container"/>
+ android:minHeight="@dimen/element_size_normal"
+ android:minWidth="@dimen/element_size_normal">
+ android:visibility="gone"/>
+ android:visibility="gone"/>
@@ -96,7 +98,7 @@
android:singleLine="true"
android:textAppearance="?android:textAppearanceMedium"
android:textColor="?android:textColorPrimary"
- tools:text="Name" />
+ tools:text="Name"/>
+ tools:text="\@screenname"/>
+ android:visibility="gone"/>
@@ -130,7 +132,7 @@
android:layout_width="match_parent"
android:layout_height="@dimen/element_spacing_xsmall"
android:layout_above="@+id/profile_name_container"
- android:background="@drawable/shadow_top" />
+ android:background="@drawable/shadow_top"/>
+ android:visibility="gone"/>
+ tools:text="Line 1\nLine 2\nLine 3"/>
+ android:src="@drawable/ic_action_location"/>
+ tools:text="Zhengzhou China"/>
+ android:src="@drawable/ic_action_web"/>
+ tools:text="mariotaku.org"/>
+ android:src="@drawable/ic_action_time"/>
+ tools:text="July 17, 2009 18:35 (20 tweets per day)"/>
+ android:background="?android:dividerVertical"/>
+ tools:text="255"/>
+ android:textColor="?android:textColorSecondary"/>
+ tools:text="255"/>
+ android:textColor="?android:textColorSecondary"/>
+ tools:text="255"/>
+ android:textColor="?android:textColorSecondary"/>
+ tools:text="255"/>
+ android:textColor="?android:textColorSecondary"/>
-
+
@@ -406,7 +408,7 @@
android:layout_alignBottom="@+id/profile_name_container"
android:layout_marginLeft="@dimen/element_spacing_normal"
android:layout_marginStart="@dimen/element_spacing_normal"
- android:contentDescription="@string/profile_image" />
+ android:contentDescription="@string/profile_image"/>
+ tools:visibility="gone"/>
\ No newline at end of file