mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-21 09:20:19 +01:00
Implement new Material3 spec.
This commit is contained in:
committed by
Greyson Parrelli
parent
556e480b06
commit
1b471e163d
@@ -25,7 +25,6 @@ import androidx.navigation.Navigation;
|
||||
|
||||
import com.airbnb.lottie.SimpleColorFilter;
|
||||
import com.bumptech.glide.load.engine.DiskCacheStrategy;
|
||||
import com.dd.CircularProgressButton;
|
||||
|
||||
import org.signal.core.util.EditTextUtil;
|
||||
import org.signal.core.util.StreamUtil;
|
||||
@@ -45,6 +44,7 @@ import org.thoughtcrime.securesms.util.FeatureFlags;
|
||||
import org.signal.core.util.concurrent.SimpleTask;
|
||||
import org.thoughtcrime.securesms.util.navigation.SafeNavigation;
|
||||
import org.thoughtcrime.securesms.util.text.AfterTextChanged;
|
||||
import org.thoughtcrime.securesms.util.views.CircularProgressMaterialButton;
|
||||
import org.thoughtcrime.securesms.util.views.LearnMoreTextView;
|
||||
|
||||
import java.io.IOException;
|
||||
@@ -62,16 +62,16 @@ public class EditProfileFragment extends LoggingFragment {
|
||||
private static final int MAX_DESCRIPTION_GLYPHS = 480;
|
||||
private static final int MAX_DESCRIPTION_BYTES = 8192;
|
||||
|
||||
private Toolbar toolbar;
|
||||
private View title;
|
||||
private ImageView avatar;
|
||||
private CircularProgressButton finishButton;
|
||||
private EditText givenName;
|
||||
private EditText familyName;
|
||||
private View reveal;
|
||||
private TextView preview;
|
||||
private ImageView avatarPreviewBackground;
|
||||
private ImageView avatarPreview;
|
||||
private Toolbar toolbar;
|
||||
private View title;
|
||||
private ImageView avatar;
|
||||
private CircularProgressMaterialButton finishButton;
|
||||
private EditText givenName;
|
||||
private EditText familyName;
|
||||
private View reveal;
|
||||
private TextView preview;
|
||||
private ImageView avatarPreviewBackground;
|
||||
private ImageView avatarPreview;
|
||||
|
||||
private Intent nextIntent;
|
||||
|
||||
@@ -223,8 +223,7 @@ public class EditProfileFragment extends LoggingFragment {
|
||||
}
|
||||
|
||||
this.finishButton.setOnClickListener(v -> {
|
||||
this.finishButton.setIndeterminateProgressMode(true);
|
||||
this.finishButton.setProgress(50);
|
||||
this.finishButton.setSpinning();
|
||||
handleUpload();
|
||||
});
|
||||
|
||||
@@ -313,7 +312,7 @@ public class EditProfileFragment extends LoggingFragment {
|
||||
}
|
||||
|
||||
private void handleFinishedLegacy() {
|
||||
finishButton.setProgress(0);
|
||||
finishButton.cancelSpinning();
|
||||
if (nextIntent != null) startActivity(nextIntent);
|
||||
|
||||
controller.onProfileNameUploadCompleted();
|
||||
@@ -341,7 +340,7 @@ public class EditProfileFragment extends LoggingFragment {
|
||||
|
||||
@Override
|
||||
public void onAnimationEnd(Animator animation) {
|
||||
finishButton.setProgress(0);
|
||||
finishButton.cancelSpinning();
|
||||
if (nextIntent != null && getActivity() != null) {
|
||||
startActivity(nextIntent);
|
||||
}
|
||||
|
||||
@@ -22,8 +22,6 @@ import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.ListAdapter;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.dd.CircularProgressButton;
|
||||
|
||||
import org.signal.core.util.BreakIteratorCompat;
|
||||
import org.signal.core.util.EditTextUtil;
|
||||
import org.thoughtcrime.securesms.R;
|
||||
@@ -34,6 +32,7 @@ import org.signal.core.util.StringUtil;
|
||||
import org.thoughtcrime.securesms.util.ViewUtil;
|
||||
import org.thoughtcrime.securesms.util.adapter.AlwaysChangedDiffUtil;
|
||||
import org.thoughtcrime.securesms.util.text.AfterTextChanged;
|
||||
import org.thoughtcrime.securesms.util.views.CircularProgressMaterialButton;
|
||||
import org.whispersystems.signalservice.api.crypto.ProfileCipher;
|
||||
|
||||
import java.util.Arrays;
|
||||
@@ -60,11 +59,11 @@ public class EditAboutFragment extends Fragment implements ManageProfileActivity
|
||||
new AboutPreset("\uD83D\uDE80", R.string.EditAboutFragment_working_on_something_new)
|
||||
);
|
||||
|
||||
private ImageView emojiView;
|
||||
private EditText bodyView;
|
||||
private TextView countView;
|
||||
private CircularProgressButton saveButton;
|
||||
private EditAboutViewModel viewModel;
|
||||
private ImageView emojiView;
|
||||
private EditText bodyView;
|
||||
private TextView countView;
|
||||
private CircularProgressMaterialButton saveButton;
|
||||
private EditAboutViewModel viewModel;
|
||||
|
||||
private String selectedEmoji;
|
||||
|
||||
@@ -167,14 +166,10 @@ public class EditAboutFragment extends Fragment implements ManageProfileActivity
|
||||
private void presentSaveState(@NonNull EditAboutViewModel.SaveState state) {
|
||||
switch (state) {
|
||||
case IDLE:
|
||||
saveButton.setClickable(true);
|
||||
saveButton.setIndeterminateProgressMode(false);
|
||||
saveButton.setProgress(0);
|
||||
saveButton.cancelSpinning();
|
||||
break;
|
||||
case IN_PROGRESS:
|
||||
saveButton.setClickable(false);
|
||||
saveButton.setIndeterminateProgressMode(true);
|
||||
saveButton.setProgress(50);
|
||||
saveButton.setSpinning();
|
||||
break;
|
||||
case DONE:
|
||||
saveButton.setClickable(false);
|
||||
|
||||
@@ -16,8 +16,6 @@ import androidx.fragment.app.Fragment;
|
||||
import androidx.lifecycle.ViewModelProviders;
|
||||
import androidx.navigation.Navigation;
|
||||
|
||||
import com.dd.CircularProgressButton;
|
||||
|
||||
import org.signal.core.util.EditTextUtil;
|
||||
import org.thoughtcrime.securesms.R;
|
||||
import org.thoughtcrime.securesms.profiles.ProfileName;
|
||||
@@ -25,6 +23,7 @@ import org.thoughtcrime.securesms.recipients.Recipient;
|
||||
import org.signal.core.util.StringUtil;
|
||||
import org.thoughtcrime.securesms.util.ViewUtil;
|
||||
import org.thoughtcrime.securesms.util.text.AfterTextChanged;
|
||||
import org.thoughtcrime.securesms.util.views.CircularProgressMaterialButton;
|
||||
|
||||
/**
|
||||
* Simple fragment to edit your profile name.
|
||||
@@ -33,10 +32,10 @@ public class EditProfileNameFragment extends Fragment {
|
||||
|
||||
public static final int NAME_MAX_GLYPHS = 26;
|
||||
|
||||
private EditText givenName;
|
||||
private EditText familyName;
|
||||
private CircularProgressButton saveButton;
|
||||
private EditProfileNameViewModel viewModel;
|
||||
private EditText givenName;
|
||||
private EditText familyName;
|
||||
private CircularProgressMaterialButton saveButton;
|
||||
private EditProfileNameViewModel viewModel;
|
||||
|
||||
@Override
|
||||
public @NonNull View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
|
||||
@@ -92,17 +91,13 @@ public class EditProfileNameFragment extends Fragment {
|
||||
setEditTextEnabled(familyName, true);
|
||||
break;
|
||||
case IDLE:
|
||||
saveButton.setClickable(true);
|
||||
saveButton.setIndeterminateProgressMode(false);
|
||||
saveButton.setProgress(0);
|
||||
saveButton.cancelSpinning();
|
||||
saveButton.setAlpha(1);
|
||||
setEditTextEnabled(givenName, true);
|
||||
setEditTextEnabled(familyName, true);
|
||||
break;
|
||||
case IN_PROGRESS:
|
||||
saveButton.setClickable(false);
|
||||
saveButton.setIndeterminateProgressMode(true);
|
||||
saveButton.setProgress(50);
|
||||
saveButton.setSpinning();
|
||||
saveButton.setAlpha(1);
|
||||
setEditTextEnabled(givenName, false);
|
||||
setEditTextEnabled(familyName, false);
|
||||
|
||||
@@ -16,13 +16,12 @@ import androidx.lifecycle.ViewModelProviders;
|
||||
import androidx.navigation.Navigation;
|
||||
import androidx.navigation.fragment.NavHostFragment;
|
||||
|
||||
import com.dd.CircularProgressButton;
|
||||
|
||||
import org.thoughtcrime.securesms.LoggingFragment;
|
||||
import org.thoughtcrime.securesms.R;
|
||||
import org.thoughtcrime.securesms.contactshare.SimpleTextWatcher;
|
||||
import org.thoughtcrime.securesms.recipients.Recipient;
|
||||
import org.thoughtcrime.securesms.util.UsernameUtil;
|
||||
import org.thoughtcrime.securesms.util.views.CircularProgressMaterialButton;
|
||||
|
||||
public class UsernameEditFragment extends LoggingFragment {
|
||||
|
||||
@@ -30,10 +29,10 @@ public class UsernameEditFragment extends LoggingFragment {
|
||||
|
||||
private UsernameEditViewModel viewModel;
|
||||
|
||||
private EditText usernameInput;
|
||||
private TextView usernameSubtext;
|
||||
private CircularProgressButton submitButton;
|
||||
private CircularProgressButton deleteButton;
|
||||
private EditText usernameInput;
|
||||
private TextView usernameSubtext;
|
||||
private CircularProgressMaterialButton submitButton;
|
||||
private CircularProgressMaterialButton deleteButton;
|
||||
|
||||
public static UsernameEditFragment newInstance() {
|
||||
return new UsernameEditFragment();
|
||||
@@ -84,42 +83,42 @@ public class UsernameEditFragment extends LoggingFragment {
|
||||
|
||||
switch (state.getButtonState()) {
|
||||
case SUBMIT:
|
||||
cancelSpinning(submitButton);
|
||||
submitButton.cancelSpinning();
|
||||
submitButton.setVisibility(View.VISIBLE);
|
||||
submitButton.setEnabled(true);
|
||||
submitButton.setAlpha(1);
|
||||
deleteButton.setVisibility(View.GONE);
|
||||
break;
|
||||
case SUBMIT_DISABLED:
|
||||
cancelSpinning(submitButton);
|
||||
submitButton.cancelSpinning();
|
||||
submitButton.setVisibility(View.VISIBLE);
|
||||
submitButton.setEnabled(false);
|
||||
submitButton.setAlpha(DISABLED_ALPHA);
|
||||
deleteButton.setVisibility(View.GONE);
|
||||
break;
|
||||
case SUBMIT_LOADING:
|
||||
setSpinning(submitButton);
|
||||
submitButton.setSpinning();
|
||||
submitButton.setVisibility(View.VISIBLE);
|
||||
submitButton.setAlpha(1);
|
||||
deleteButton.setVisibility(View.GONE);
|
||||
usernameInput.setEnabled(false);
|
||||
break;
|
||||
case DELETE:
|
||||
cancelSpinning(deleteButton);
|
||||
deleteButton.cancelSpinning();
|
||||
deleteButton.setVisibility(View.VISIBLE);
|
||||
deleteButton.setEnabled(true);
|
||||
deleteButton.setAlpha(1);
|
||||
submitButton.setVisibility(View.GONE);
|
||||
break;
|
||||
case DELETE_DISABLED:
|
||||
cancelSpinning(deleteButton);
|
||||
deleteButton.cancelSpinning();
|
||||
deleteButton.setVisibility(View.VISIBLE);
|
||||
deleteButton.setEnabled(false);
|
||||
deleteButton.setAlpha(DISABLED_ALPHA);
|
||||
submitButton.setVisibility(View.GONE);
|
||||
break;
|
||||
case DELETE_LOADING:
|
||||
setSpinning(deleteButton);
|
||||
deleteButton.setSpinning();
|
||||
deleteButton.setVisibility(View.VISIBLE);
|
||||
deleteButton.setAlpha(1);
|
||||
submitButton.setVisibility(View.GONE);
|
||||
@@ -180,16 +179,4 @@ public class UsernameEditFragment extends LoggingFragment {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private static void setSpinning(@NonNull CircularProgressButton button) {
|
||||
button.setClickable(false);
|
||||
button.setIndeterminateProgressMode(true);
|
||||
button.setProgress(50);
|
||||
}
|
||||
|
||||
private static void cancelSpinning(@NonNull CircularProgressButton button) {
|
||||
button.setProgress(0);
|
||||
button.setIndeterminateProgressMode(false);
|
||||
button.setClickable(true);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user