Commit bbf40df1 authored by Thomas's avatar Thomas
Browse files

Some improvements

parent f9ad08f5
Loading
Loading
Loading
Loading
+27 −3
Original line number Diff line number Diff line
@@ -16,8 +16,12 @@ package app.fedilab.android.mastodon.activities;


import static app.fedilab.android.BaseMainActivity.currentAccount;
import static app.fedilab.android.mastodon.activities.ComposeActivity.PICK_MEDIA;

import android.content.ClipData;
import android.content.Intent;
import android.content.SharedPreferences;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
@@ -25,10 +29,12 @@ import android.util.TypedValue;
import android.view.MenuItem;

import androidx.appcompat.app.ActionBar;
import androidx.fragment.app.Fragment;
import androidx.lifecycle.ViewModelProvider;
import androidx.preference.PreferenceManager;

import java.util.ArrayList;
import java.util.List;

import app.fedilab.android.BaseMainActivity;
import app.fedilab.android.R;
import app.fedilab.android.databinding.ActivityDirectMessageBinding;
@@ -46,7 +52,7 @@ public class DirectMessageActivity extends BaseActivity implements FragmentMasto
    public static boolean expand;
    public static boolean displayCW;

    Fragment currentFragment;
    FragmentMastodonDirectMessage currentFragment;
    private Status firstMessage;
    private String remote_instance;

@@ -88,7 +94,7 @@ public class DirectMessageActivity extends BaseActivity implements FragmentMasto
        bundle.putString(Helper.ARG_REMOTE_INSTANCE, remote_instance);
        FragmentMastodonDirectMessage FragmentMastodonDirectMessage = new FragmentMastodonDirectMessage();
        FragmentMastodonDirectMessage.firstMessage = this;
        currentFragment = Helper.addFragment(getSupportFragmentManager(), R.id.nav_host_fragment_content_main, FragmentMastodonDirectMessage, bundle, null, null);
        currentFragment = (FragmentMastodonDirectMessage) Helper.addFragment(getSupportFragmentManager(), R.id.nav_host_fragment_content_main, FragmentMastodonDirectMessage, bundle, null, null);
        StatusesVM timelinesVM = new ViewModelProvider(DirectMessageActivity.this).get(StatusesVM.class);
        timelinesVM.getStatus(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, focusedStatus.id).observe(DirectMessageActivity.this, status -> {
            if (status != null) {
@@ -114,6 +120,24 @@ public class DirectMessageActivity extends BaseActivity implements FragmentMasto
    }


    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        List<Uri> uris = new ArrayList<>();
        if (requestCode >= PICK_MEDIA && resultCode == RESULT_OK) {
            ClipData clipData = data.getClipData();
            if (clipData != null) {
                for (int i = 0; i < clipData.getItemCount(); i++) {
                    ClipData.Item item = clipData.getItemAt(i);
                    uris.add(item.getUri());
                }
            } else {
                uris.add(data.getData());
            }
            currentFragment.addAttachment(uris);
        }
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        if (item.getItemId() == android.R.id.home) {
+1 −1
Original line number Diff line number Diff line
@@ -137,7 +137,7 @@ import es.dmoral.toasty.Toasty;

public class ComposeAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
    private static final int searchDeep = 15;
    private static final int TYPE_COMPOSE = 1;
    public static final int TYPE_COMPOSE = 1;
    public static boolean autocomplete = false;
    public static String[] ALPHA = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r",
            "s", "t", "u", "v", "w", "x", "y", "z", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "!", ",", "?",
+1 −1
Original line number Diff line number Diff line
@@ -211,7 +211,7 @@ public class ConversationAdapter extends RecyclerView.Adapter<RecyclerView.ViewH
        //--- DATE ---
        holder.binding.lastMessageDate.setText(Helper.dateDiff(context, conversation.last_status.created_at));

        boolean chatMode = sharedpreferences.getBoolean(context.getString(R.string.SET_CHAT_FOR_CONVERSATION), true);
        boolean chatMode = sharedpreferences.getBoolean(context.getString(R.string.SET_CHAT_FOR_CONVERSATION), false);
        holder.binding.statusContent.setOnClickListener(v -> {
            Intent intent;
            if (chatMode) {
+8 −0
Original line number Diff line number Diff line
@@ -54,6 +54,7 @@ import app.fedilab.android.mastodon.activities.MediaActivity;
import app.fedilab.android.mastodon.client.entities.api.Attachment;
import app.fedilab.android.mastodon.client.entities.api.Status;
import app.fedilab.android.mastodon.helper.Helper;
import app.fedilab.android.mastodon.helper.LongClickLinkMovementMethod;
import app.fedilab.android.mastodon.helper.MastodonHelper;
import app.fedilab.android.mastodon.helper.MediaHelper;
import app.fedilab.android.mastodon.helper.ThemeHelper;
@@ -213,6 +214,7 @@ public class StatusDirectMessageAdapter extends RecyclerView.Adapter<RecyclerVie
                        new WeakReference<>(holder.binding.messageContent),
                        () -> mRecyclerView.post(() -> notifyItemChanged(holder.getBindingAdapterPosition()))),
                TextView.BufferType.SPANNABLE);
        holder.binding.messageContent.setMovementMethod(LongClickLinkMovementMethod.getInstance());
        if (measuredWidth <= 0 && status.media_attachments != null && status.media_attachments.size() > 0) {
            holder.binding.media.mediaContainer.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
                @Override
@@ -227,13 +229,19 @@ public class StatusDirectMessageAdapter extends RecyclerView.Adapter<RecyclerVie
        holder.binding.date.setText(Helper.longDateToString(status.created_at));
        //Owner account
        int textColor;
        LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
                LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
        if (status.account.id.equals(MainActivity.currentUserID)) {
            holder.binding.mainContainer.setBackgroundResource(R.drawable.bubble_right_tail);
            textColor = R.attr.colorOnPrimary;
            layoutParams.setMargins((int) Helper.convertDpToPixel(50, context), (int) Helper.convertDpToPixel(12, context), 0, 0);

        } else {
            holder.binding.mainContainer.setBackgroundResource(R.drawable.bubble_left_tail);
            layoutParams.setMargins(0, (int) Helper.convertDpToPixel(12, context), (int) Helper.convertDpToPixel(50, context), 0);
            textColor = R.attr.colorOnSecondary;
        }
        holder.binding.mainContainer.setLayoutParams(layoutParams);
        holder.binding.date.setTextColor(ThemeHelper.getAttColor(context, textColor));
        holder.binding.messageContent.setTextColor(ThemeHelper.getAttColor(context, textColor));
        holder.binding.userName.setTextColor(ThemeHelper.getAttColor(context, textColor));
+559 −5

File changed.

Preview size limit exceeded, changes collapsed.

Loading