修改礼物墙ui,首页房间ui和Google配置
This commit is contained in:
@@ -14,7 +14,7 @@
|
||||
},
|
||||
"oauth_client": [
|
||||
{
|
||||
"client_id": "766987211654-2b4de5kbhe7tpgtfto4bjll3dj7ih26u.apps.googleusercontent.com",
|
||||
"client_id": "766987211654-oe8kjt7rserq31d1rdulqj2aao5b96a7.apps.googleusercontent.com",
|
||||
"client_type": 1,
|
||||
"android_info": {
|
||||
"package_name": "com.vele.peko",
|
||||
|
@@ -27,17 +27,5 @@ class HomeHotAdapter :
|
||||
helper.setGone(R.id.iv_room_tag, !TextUtils.isEmptyText(item.tagPict))
|
||||
ImageLoadUtilsV2.loadImage(helper.getView(R.id.iv_room_tag), item.tagPict)
|
||||
|
||||
val avatars: Array<ImageView> = arrayOf(
|
||||
helper.getView(R.id.iv_avatar_0),
|
||||
helper.getView(R.id.iv_avatar_1),
|
||||
helper.getView(R.id.iv_avatar_2),
|
||||
helper.getView(R.id.iv_avatar_3),
|
||||
helper.getView(R.id.iv_avatar_4)
|
||||
)
|
||||
for (i in avatars.indices) {
|
||||
val avatarUrl = item.micUsers?.getOrNull(i)?.avatar
|
||||
avatars[i].isGone = avatarUrl.isNullOrBlank()
|
||||
avatars[i].load(avatarUrl)
|
||||
}
|
||||
}
|
||||
}
|
@@ -16,6 +16,8 @@ import com.yizhuan.erban.R;
|
||||
import com.yizhuan.erban.base.BaseBindingFragment;
|
||||
import com.yizhuan.erban.databinding.FragmentUserInfoGiftBinding;
|
||||
import com.yizhuan.erban.ui.user.adapter.UserGiftAdapter;
|
||||
import com.yizhuan.erban.ui.widget.magicindicator.buildins.UIUtil;
|
||||
import com.yizhuan.erban.ui.widget.recyclerview.decoration.GridSpacingItemNewDecoration;
|
||||
import com.yizhuan.xchat_android_core.bean.UserInfoItem;
|
||||
import com.yizhuan.xchat_android_core.user.UserInfoUiMgr;
|
||||
import com.yizhuan.xchat_android_core.user.UserModel;
|
||||
@@ -87,7 +89,10 @@ public class UserInfoGiftFragment extends BaseBindingFragment<FragmentUserInfoGi
|
||||
@Override
|
||||
public void initiate() {
|
||||
isDetails = requireArguments().getBoolean("isDetails", false);
|
||||
mBinding.rvGift.setLayoutManager(new GridLayoutManager(mContext, 4));
|
||||
mBinding.rvGift.setLayoutManager(new GridLayoutManager(mContext, 12));
|
||||
// mBinding.rvGift.addItemDecoration(new GridSpacingItemNewDecoration(
|
||||
// UIUtil.dip2px(mContext, 10), UIUtil.dip2px(mContext, 10), true
|
||||
// ));
|
||||
userGiftAdapter = new UserGiftAdapter(mContext, userInfoItems, isDetails);
|
||||
userGiftAdapter.bindToRecyclerView(mBinding.rvGift);
|
||||
userGiftAdapter.setSpanSizeLookup(new BaseQuickAdapter.SpanSizeLookup() {
|
||||
@@ -95,13 +100,15 @@ public class UserInfoGiftFragment extends BaseBindingFragment<FragmentUserInfoGi
|
||||
public int getSpanSize(GridLayoutManager gridLayoutManager, int position) {
|
||||
List<UserInfoItem> list = userGiftAdapter.getData();
|
||||
if (ListUtils.isListEmpty(list))
|
||||
return 4;
|
||||
return 12;
|
||||
UserInfoItem userInfoItem = list.get(position);
|
||||
int type = userInfoItem.getItemType();
|
||||
if (type == UserInfoItem.TYPE_DIV || type == UserInfoItem.TYPE_GIFT_EMPTY) {
|
||||
return 12;
|
||||
} else if (type == UserInfoItem.TYPE_GIFT_ITEM_TOP) {
|
||||
return 4;
|
||||
} else
|
||||
return 1;
|
||||
return 3;
|
||||
}
|
||||
});
|
||||
|
||||
@@ -149,10 +156,14 @@ public class UserInfoGiftFragment extends BaseBindingFragment<FragmentUserInfoGi
|
||||
} else {
|
||||
UserInfoItem<GiftWallInfo> userInfoItem;
|
||||
for (int i = 0; i < giftWallInfoList.size(); i++) {
|
||||
userInfoItem = new UserInfoItem<>(UserInfoItem.TYPE_GIFT_ITEM, giftWallInfoList.get(i));
|
||||
if (i < 3) {
|
||||
userInfoItem = new UserInfoItem<>(UserInfoItem.TYPE_GIFT_ITEM_TOP, giftWallInfoList.get(i));
|
||||
} else {
|
||||
userInfoItem = new UserInfoItem<>(UserInfoItem.TYPE_GIFT_ITEM, giftWallInfoList.get(i));
|
||||
}
|
||||
userInfoItems.add(userInfoItem);
|
||||
//非礼物详情页主需要12个就够了
|
||||
if (!isDetails && i == 11){
|
||||
if (!isDetails && i == 11) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@@ -1,6 +1,7 @@
|
||||
package com.yizhuan.erban.ui.user.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
|
||||
import com.chad.library.adapter.base.BaseViewHolder;
|
||||
@@ -17,6 +18,7 @@ public class UserGiftAdapter extends UserTabBaseAdapter {
|
||||
|
||||
public UserGiftAdapter(Context context, List<UserInfoItem> data, boolean isDetails) {
|
||||
super(context, data);
|
||||
addItemType(UserInfoItem.TYPE_GIFT_ITEM_TOP, R.layout.list_item_gift_wall_info);
|
||||
addItemType(UserInfoItem.TYPE_GIFT_ITEM, R.layout.list_item_gift_wall_info);
|
||||
addItemType(UserInfoItem.TYPE_GIFT_EMPTY, R.layout.layout_gift_empty);
|
||||
this.isDetails = isDetails;
|
||||
@@ -31,8 +33,11 @@ public class UserGiftAdapter extends UserTabBaseAdapter {
|
||||
super.convert(helper, item);
|
||||
|
||||
switch (item.getItemType()) {
|
||||
case UserInfoItem.TYPE_GIFT_ITEM_TOP:
|
||||
setGiftItem(helper, item, UserInfoItem.TYPE_GIFT_ITEM_TOP);
|
||||
|
||||
case UserInfoItem.TYPE_GIFT_ITEM:
|
||||
setGiftItem(helper, item);
|
||||
setGiftItem(helper, item, UserInfoItem.TYPE_GIFT_ITEM);
|
||||
break;
|
||||
|
||||
case UserInfoItem.TYPE_GIFT_EMPTY:
|
||||
@@ -41,7 +46,7 @@ public class UserGiftAdapter extends UserTabBaseAdapter {
|
||||
|
||||
}
|
||||
|
||||
private void setGiftItem(BaseViewHolder helper, UserInfoItem item) {
|
||||
private void setGiftItem(BaseViewHolder helper, UserInfoItem item, int type) {
|
||||
GiftWallInfo giftWallInfo = (GiftWallInfo) item.getData();
|
||||
|
||||
if (giftWallInfo != null) {
|
||||
@@ -49,12 +54,22 @@ public class UserGiftAdapter extends UserTabBaseAdapter {
|
||||
helper.setText(R.id.gift_name, giftWallInfo.getGiftName())
|
||||
.setGone(R.id.gift_name, isDetails)
|
||||
.setText(R.id.gift_num, "x" + giftWallInfo.getReciveCount())
|
||||
.setBackgroundRes(R.id.gift_num, isDetails ? R.drawable.bg_user_gift_item_details : R.drawable.bg_user_gift_item)
|
||||
.setText(R.id.gift_price, giftWallInfo.getGiftPrice() + "")
|
||||
.setGone(R.id.gift_price, isDetails);
|
||||
|
||||
ImageView giftPic = helper.itemView.findViewById(R.id.gift_img);
|
||||
ImageLoadUtils.loadImage(mContext, giftWallInfo.getPicUrl(), giftPic);
|
||||
|
||||
ImageView giftLevel = helper.itemView.findViewById(R.id.iv_gift_level);
|
||||
if(type == UserInfoItem.TYPE_GIFT_ITEM_TOP){
|
||||
if(helper.getAdapterPosition() == 0) {
|
||||
giftLevel.setImageResource(R.drawable.ic_gift_one);
|
||||
}else if(helper.getAdapterPosition() == 1){
|
||||
giftLevel.setImageResource(R.drawable.ic_gift_two);
|
||||
}else if(helper.getAdapterPosition() == 2){
|
||||
giftLevel.setImageResource(R.drawable.ic_gift_three);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -0,0 +1,88 @@
|
||||
package com.yizhuan.erban.ui.widget.recyclerview.decoration;
|
||||
|
||||
import android.graphics.Rect;
|
||||
import android.view.View;
|
||||
|
||||
import androidx.recyclerview.widget.GridLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import androidx.recyclerview.widget.StaggeredGridLayoutManager;
|
||||
|
||||
/**
|
||||
* User: wukai
|
||||
* Date: 2017/03/26
|
||||
* Description: 设置RecyclerView布局垂直和水平间隔
|
||||
*/
|
||||
public class GridSpacingItemNewDecoration extends RecyclerView.ItemDecoration {
|
||||
|
||||
private int mVerSpacing;
|
||||
private int mHorSpacing;
|
||||
private boolean mIncludeEdge;
|
||||
private boolean mHasHeaderView;
|
||||
|
||||
public GridSpacingItemNewDecoration(int spacing, boolean includeEdge) {
|
||||
this(spacing, spacing, includeEdge);
|
||||
}
|
||||
|
||||
public GridSpacingItemNewDecoration(int verSpacing, int horSpacing, boolean includeEdge) {
|
||||
mVerSpacing = verSpacing;
|
||||
mHorSpacing = horSpacing;
|
||||
mIncludeEdge = includeEdge;
|
||||
}
|
||||
|
||||
public GridSpacingItemNewDecoration(int verSpacing, int horSpacing, boolean includeEdge, boolean hasHeaderView) {
|
||||
mVerSpacing = verSpacing;
|
||||
mHorSpacing = horSpacing;
|
||||
mIncludeEdge = includeEdge;
|
||||
mHasHeaderView = hasHeaderView;
|
||||
}
|
||||
|
||||
private int getSpanCount(RecyclerView parent) {
|
||||
int spanCount = -1;
|
||||
RecyclerView.LayoutManager layoutManager = parent.getLayoutManager();
|
||||
if (layoutManager instanceof GridLayoutManager) {
|
||||
spanCount = ((GridLayoutManager) layoutManager).getSpanCount();
|
||||
} else if (layoutManager instanceof StaggeredGridLayoutManager) {
|
||||
spanCount = ((StaggeredGridLayoutManager) layoutManager).getSpanCount();
|
||||
}
|
||||
return spanCount;
|
||||
}
|
||||
|
||||
private int getSpanIndex(View view, RecyclerView parent) {
|
||||
int spanIndex = parent.getChildAdapterPosition(view);
|
||||
RecyclerView.LayoutManager layoutManager = parent.getLayoutManager();
|
||||
if (layoutManager instanceof StaggeredGridLayoutManager) {
|
||||
StaggeredGridLayoutManager.LayoutParams layoutParams = (StaggeredGridLayoutManager.LayoutParams) view.getLayoutParams();
|
||||
spanIndex = layoutParams.getSpanIndex();
|
||||
}
|
||||
return spanIndex;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
|
||||
int spanCount = getSpanCount(parent);
|
||||
int position = parent.getChildAdapterPosition(view); // item position
|
||||
int spanIndex = getSpanIndex(view, parent);
|
||||
int column = spanIndex % spanCount; // item column
|
||||
|
||||
if(position == 0 && mHasHeaderView) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (mIncludeEdge) {
|
||||
outRect.left = mHorSpacing - column * mHorSpacing / spanCount; // spacing - column * ((1f / spanCount) * spacing)
|
||||
outRect.right = (column + 1) * mHorSpacing / spanCount; // (column + 1) * ((1f / spanCount) * spacing)
|
||||
|
||||
if (position < spanCount) { // top edge 第一行设置top
|
||||
outRect.top = mVerSpacing;
|
||||
}
|
||||
outRect.bottom = mVerSpacing; // item bottom 每次都是设置bottom
|
||||
} else {
|
||||
outRect.left = column * mHorSpacing / spanCount; // column * ((1f / spanCount) * spacing)
|
||||
outRect.right = mHorSpacing - (column + 1) * mHorSpacing / spanCount; // spacing - (column + 1) * ((1f / spanCount) * spacing)
|
||||
if (position >= spanCount) { // 第二行开始设置top
|
||||
outRect.top = mVerSpacing; // item top
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
BIN
app/src/main/res/drawable-xhdpi/ic_gift_one.webp
Normal file
BIN
app/src/main/res/drawable-xhdpi/ic_gift_one.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.9 KiB |
BIN
app/src/main/res/drawable-xhdpi/ic_gift_three.webp
Normal file
BIN
app/src/main/res/drawable-xhdpi/ic_gift_three.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.6 KiB |
BIN
app/src/main/res/drawable-xhdpi/ic_gift_two.webp
Normal file
BIN
app/src/main/res/drawable-xhdpi/ic_gift_two.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.6 KiB |
6
app/src/main/res/drawable/bg_f3f5fa_r8.xml
Normal file
6
app/src/main/res/drawable/bg_f3f5fa_r8.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<corners android:radius="8dp" />
|
||||
<solid android:color="#F3F5FA" />
|
||||
</shape>
|
@@ -66,7 +66,7 @@
|
||||
android:text="0.0"
|
||||
android:textColor="@color/color_333333"
|
||||
android:textSize="@dimen/text_size_30"
|
||||
android:layout_marginTop="18dp"
|
||||
android:layout_marginTop="12dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/tv_title_diamond"
|
||||
|
@@ -8,13 +8,16 @@
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
|
||||
>
|
||||
android:layout_marginBottom="@dimen/dp_10">
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rv_gift"
|
||||
android:layout_marginStart="@dimen/dp_8"
|
||||
android:layout_marginTop="@dimen/dp_8"
|
||||
android:layout_marginEnd="@dimen/dp_16"
|
||||
android:layout_marginBottom="@dimen/dp_20"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"/>
|
||||
android:layout_height="match_parent" />
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
|
@@ -5,6 +5,7 @@
|
||||
android:id="@+id/rv_dynamic"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginTop="@dimen/dp_14" />
|
||||
android:layout_marginTop="@dimen/dp_14"
|
||||
android:layout_marginBottom="@dimen/dp_14"/>
|
||||
|
||||
</layout>
|
@@ -23,7 +23,7 @@
|
||||
<androidx.viewpager.widget.ViewPager
|
||||
android:id="@+id/view_pager_gift"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="280dp" />
|
||||
android:layout_height="320dp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
@@ -92,7 +92,7 @@
|
||||
android:layout_marginTop="14dp"
|
||||
android:layout_marginEnd="@dimen/dp_12"
|
||||
android:drawablePadding="2dp"
|
||||
android:gravity="bottom"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
android:textColor="@color/color_333333"
|
||||
android:textSize="12sp"
|
||||
@@ -107,6 +107,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="18dp"
|
||||
android:layout_marginBottom="20dp"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent">
|
||||
|
||||
|
@@ -31,16 +31,6 @@
|
||||
android:layout_height="0dp"
|
||||
android:layout_weight="1" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="@dimen/dp_4"
|
||||
android:gravity="end"
|
||||
android:text="USD"
|
||||
android:includeFontPadding="false"
|
||||
android:textColor="@color/color_B3B3C3"
|
||||
android:textSize="@dimen/sp_12"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/item_charge_money"
|
||||
android:layout_width="wrap_content"
|
||||
|
@@ -1,30 +1,46 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical"
|
||||
>
|
||||
android:layout_marginStart="@dimen/dp_8"
|
||||
android:layout_marginTop="@dimen/dp_8"
|
||||
android:background="@drawable/bg_f3f5fa_r8">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_gift_level"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
tools:src="@drawable/ic_gift_one"
|
||||
android:visibility="visible"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/gift_img"
|
||||
android:layout_width="60dp"
|
||||
android:layout_height="60dp"
|
||||
android:layout_marginTop="10dp" />
|
||||
android:layout_marginTop="2dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/gift_num"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:background="@drawable/bg_user_gift_item"
|
||||
android:layout_marginTop="@dimen/dp_5"
|
||||
android:gravity="center"
|
||||
android:includeFontPadding="false"
|
||||
android:paddingStart="8dp"
|
||||
android:paddingEnd="@dimen/dp_8"
|
||||
android:textColor="@color/color_333333"
|
||||
android:textSize="12dp"
|
||||
android:textColor="@color/color_6D6B89"
|
||||
android:textSize="@dimen/sp_12"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/gift_img"
|
||||
tools:text="x120" />
|
||||
|
||||
<TextView
|
||||
@@ -32,11 +48,14 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="8dp"
|
||||
android:ellipsize="end"
|
||||
android:lines="1"
|
||||
android:textColor="@color/text_normal_c6c6e9"
|
||||
android:textSize="12dp"
|
||||
android:textSize="@dimen/sp_12"
|
||||
android:layout_marginTop="@dimen/dp_5"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/gift_num"
|
||||
tools:text="@string/layout_list_item_gift_wall_info_01" />
|
||||
|
||||
<TextView
|
||||
@@ -45,11 +64,13 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="3dp"
|
||||
android:drawableStart="@drawable/ic_gift_diamond"
|
||||
android:gravity="center_vertical"
|
||||
android:textColor="@color/color_999999"
|
||||
android:textSize="11dp"
|
||||
android:textSize="12sp"
|
||||
app:drawableStartCompat="@drawable/icon_diamond"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/gift_name"
|
||||
tools:text="10" />
|
||||
|
||||
|
||||
</LinearLayout>
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
@@ -32,6 +32,7 @@ public class UserInfoItem<T extends Serializable> implements MultiItemEntity, Pa
|
||||
public static final transient int TYPE_DES_HALL = 14;// 资料_模厅
|
||||
public static final transient int TYPE_DES_GAME = 15;// 资料_本周战绩
|
||||
public static final transient int TYPE_DES_JOIN_WORLDS = 17;// 资料_话题列表
|
||||
public static final transient int TYPE_GIFT_ITEM_TOP = 18;// 礼物_礼物列表置顶
|
||||
|
||||
//类型
|
||||
private int itemType;
|
||||
|
@@ -25,7 +25,7 @@ MobSDK {
|
||||
}
|
||||
|
||||
GooglePlus {
|
||||
appId "766987211654-2b4de5kbhe7tpgtfto4bjll3dj7ih26u.apps.googleusercontent.com"
|
||||
appId "766987211654-oe8kjt7rserq31d1rdulqj2aao5b96a7.apps.googleusercontent.com"
|
||||
callbackUri "http://localhost"
|
||||
officialVersion "default"
|
||||
enable true
|
||||
|
@@ -10,7 +10,7 @@
|
||||
<Twitter Enable="false" />
|
||||
<Evernote Enable="false" />
|
||||
<FourSquare Enable="false" />
|
||||
<GooglePlus OfficialVersion="default" Enable="true" ClientID="766987211654-2b4de5kbhe7tpgtfto4bjll3dj7ih26u.apps.googleusercontent.com" RedirectUrl="http://localhost" />
|
||||
<GooglePlus OfficialVersion="default" Enable="true" ClientID="766987211654-oe8kjt7rserq31d1rdulqj2aao5b96a7.apps.googleusercontent.com" RedirectUrl="http://localhost" />
|
||||
<Instagram Enable="false" />
|
||||
<LinkedIn Enable="false" />
|
||||
<Tumblr Enable="false" />
|
||||
|
Reference in New Issue
Block a user