Transitions for group settings.
This commit is contained in:
parent
9c0365f92c
commit
2d8b2e7fb0
4 changed files with 19 additions and 6 deletions
|
@ -163,7 +163,8 @@ public final class AvatarImageView extends AppCompatImageView {
|
||||||
if (quickContactEnabled) {
|
if (quickContactEnabled) {
|
||||||
super.setOnClickListener(v -> {
|
super.setOnClickListener(v -> {
|
||||||
if (FeatureFlags.newGroupUI() && recipient.isPushGroup()) {
|
if (FeatureFlags.newGroupUI() && recipient.isPushGroup()) {
|
||||||
getContext().startActivity(ManageGroupActivity.newIntent(getContext(), recipient.requireGroupId().requirePush()));
|
getContext().startActivity(ManageGroupActivity.newIntent(getContext(), recipient.requireGroupId().requirePush()),
|
||||||
|
ManageGroupActivity.createTransitionBundle(getContext(), this));
|
||||||
} else {
|
} else {
|
||||||
getContext().startActivity(RecipientPreferenceActivity.getLaunchIntent(getContext(), recipient.getId()));
|
getContext().startActivity(RecipientPreferenceActivity.getLaunchIntent(getContext(), recipient.getId()));
|
||||||
}
|
}
|
||||||
|
|
|
@ -1036,9 +1036,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||||
|
|
||||||
private void handleConversationSettings() {
|
private void handleConversationSettings() {
|
||||||
if (FeatureFlags.newGroupUI() && isPushGroupConversation()) {
|
if (FeatureFlags.newGroupUI() && isPushGroupConversation()) {
|
||||||
startActivitySceneTransition(ManageGroupActivity.newIntent(this, getRecipient().requireGroupId().requirePush()),
|
handleManagePushGroup();
|
||||||
titleView.findViewById(R.id.contact_photo_image),
|
|
||||||
"avatar");
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1206,7 +1204,9 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
||||||
}
|
}
|
||||||
|
|
||||||
private void handleManagePushGroup() {
|
private void handleManagePushGroup() {
|
||||||
startActivityForResult(ManageGroupActivity.newIntent(ConversationActivity.this, recipient.get().requireGroupId().requirePush()), GROUP_EDIT);
|
startActivityForResult(ManageGroupActivity.newIntent(ConversationActivity.this, recipient.get().requireGroupId().requirePush()),
|
||||||
|
GROUP_EDIT,
|
||||||
|
ManageGroupActivity.createTransitionBundle(this, titleView.findViewById(R.id.contact_photo_image)));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void handleDistributionBroadcastEnabled(MenuItem item) {
|
private void handleDistributionBroadcastEnabled(MenuItem item) {
|
||||||
|
|
|
@ -1,10 +1,14 @@
|
||||||
package org.thoughtcrime.securesms.groups.ui.managegroup;
|
package org.thoughtcrime.securesms.groups.ui.managegroup;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
import android.view.View;
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
|
import androidx.annotation.Nullable;
|
||||||
|
import androidx.core.app.ActivityOptionsCompat;
|
||||||
|
|
||||||
import org.thoughtcrime.securesms.PassphraseRequiredActionBarActivity;
|
import org.thoughtcrime.securesms.PassphraseRequiredActionBarActivity;
|
||||||
import org.thoughtcrime.securesms.R;
|
import org.thoughtcrime.securesms.R;
|
||||||
|
@ -24,6 +28,14 @@ public class ManageGroupActivity extends PassphraseRequiredActionBarActivity {
|
||||||
return intent;
|
return intent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static @Nullable Bundle createTransitionBundle(@NonNull Context activityContext, @NonNull View from) {
|
||||||
|
if (activityContext instanceof Activity) {
|
||||||
|
return ActivityOptionsCompat.makeSceneTransitionAnimation((Activity) activityContext, from, "avatar").toBundle();
|
||||||
|
} else {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onPreCreate() {
|
protected void onPreCreate() {
|
||||||
dynamicTheme.onCreate(this);
|
dynamicTheme.onCreate(this);
|
||||||
|
|
|
@ -206,7 +206,7 @@ public class ManageGroupFragment extends Fragment {
|
||||||
|
|
||||||
avatar.setFallbackPhotoProvider(fallbackPhotoProvider);
|
avatar.setFallbackPhotoProvider(fallbackPhotoProvider);
|
||||||
|
|
||||||
toolbar.setNavigationOnClickListener(v -> requireActivity().finish());
|
toolbar.setNavigationOnClickListener(v -> requireActivity().onBackPressed());
|
||||||
toolbar.setOnMenuItemClickListener(this::onMenuItemSelected);
|
toolbar.setOnMenuItemClickListener(this::onMenuItemSelected);
|
||||||
toolbar.inflateMenu(R.menu.manage_group_fragment);
|
toolbar.inflateMenu(R.menu.manage_group_fragment);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue