coloring outgoing messages in accent

This commit is contained in:
Vologhat
2022-12-01 22:52:21 +03:00
parent 163cd44dcc
commit 09807a2954
2 changed files with 19 additions and 4 deletions
@@ -1,6 +1,9 @@
package ru.vtosters.lite.ui.adapters;
import android.content.Context;
import android.graphics.ColorFilter;
import android.graphics.ColorMatrixColorFilter;
import android.graphics.PorterDuff;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
@@ -12,14 +15,23 @@ import androidx.recyclerview.widget.RecyclerView;
import com.vk.core.widget.BubbleFluidLayout;
import com.vk.im.ui.components.viewcontrollers.msg_list.entry.MsgTextBuilder;
import com.vk.im.ui.views.msg.MsgPartTextView;
import com.vk.im.ui.views.msg.bubble.MsgBubbleDrawable;
import com.vk.im.ui.views.msg.bubble.MsgBubblePart;
import com.vk.im.ui.views.msg.bubble.MsgBubbleStyle;
import com.vk.im.ui.views.msg.bubble.MsgBubbleView;
import com.vtosters.lite.R;
import com.vtosters.lite.m0.ToolbarHelper;
import ru.vtosters.lite.utils.AndroidUtils;
import ru.vtosters.lite.utils.ThemesUtils;
public class MessagesPreviewAdapter extends RecyclerView.Adapter<MessagesPreviewAdapter.MessagePreviewViewHolder> {
private static final String[] MESSAGES = AndroidUtils.getArray(R.array.wallpaper_change_dialog);
private final String[] mMessages;
public MessagesPreviewAdapter(String... messages) {
mMessages = messages;
}
@Override
public int getItemViewType(int i) {
@@ -49,6 +61,8 @@ public class MessagesPreviewAdapter extends RecyclerView.Adapter<MessagesPreview
messageBubbleView.setContentPaddingTop(AndroidUtils.dp2px(4));
messageBubbleView.setContentPaddingRight(AndroidUtils.dp2px(4));
messageBubbleView.setContentPaddingBottom(AndroidUtils.dp2px(0));
if (viewType == Gravity.END)
messageBubbleView.a(MsgBubbleStyle.b(false, false), MsgBubblePart.FULL, ThemesUtils.getAccentColor());
bubbleFluidLayout.setLayoutDirection(viewType);
final var msgTextView = inflater.inflate(R.layout.vkim_msg_part_text, viewGroup, false);
@@ -62,12 +76,12 @@ public class MessagesPreviewAdapter extends RecyclerView.Adapter<MessagesPreview
@Override
public void onBindViewHolder(@NonNull MessagePreviewViewHolder viewHolder, int pos) {
viewHolder.bind(MESSAGES[pos]);
viewHolder.bind(mMessages[pos]);
}
@Override
public int getItemCount() {
return MESSAGES.length;
return mMessages.length;
}
protected static class MessagePreviewViewHolder extends RecyclerView.ViewHolder {
@@ -18,6 +18,7 @@ import androidx.recyclerview.widget.RecyclerView;
import com.vtosters.lite.R;
import ru.vtosters.lite.ui.adapters.MessagesPreviewAdapter;
import ru.vtosters.lite.utils.AndroidUtils;
public class WallpaperPreferences extends Preference {
@@ -49,7 +50,7 @@ public class WallpaperPreferences extends Preference {
mRecyclerView = (RecyclerView) preferenceViewHolder.findViewById(R.id.install_btn_container);
mRecyclerView.setPadding(0, dp2px(8), 0, 0);
mRecyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
mRecyclerView.setAdapter((mAdapter = new MessagesPreviewAdapter()));
mRecyclerView.setAdapter((mAdapter = new MessagesPreviewAdapter(AndroidUtils.getArray(R.array.wallpaper_change_dialog))));
mRecyclerView.setClickable(false);
mRecyclerView.setFocusable(false);