some changes

This commit is contained in:
Thomas 2020-06-22 18:23:41 +02:00
parent 57b0bde148
commit c11025a8f9
4 changed files with 62 additions and 7 deletions

View File

@ -3411,7 +3411,7 @@ public class StatusListAdapter extends RecyclerView.Adapter<RecyclerView.ViewHol
b.putInt("position", finalPosition);
intent.putExtras(b);
ActivityOptionsCompat options = null;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) {
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP && attachment.getType().compareTo("image") == 0) {
imageView.setTransitionName(attachment.getText_url());
options = ActivityOptionsCompat
.makeSceneTransitionAnimation((Activity)context, imageView, attachment.getUrl());

View File

@ -30,6 +30,7 @@ import android.os.Handler;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewTreeObserver;
import android.view.WindowManager;
import android.widget.FrameLayout;
import android.widget.ImageButton;
@ -40,6 +41,7 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import androidx.fragment.app.Fragment;
@ -201,7 +203,7 @@ public class MediaSliderFragment extends Fragment implements MediaPlayer.OnCompl
imageView.setImageBitmap(resource);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
imageView.setTransitionName(attachment.getUrl());
ActivityCompat.startPostponedEnterTransition((Activity)context);
scheduleStartPostponedTransition(imageView);
}
if (bgColor != -1) {
media_fragment_container.setBackgroundColor(bgColor);
@ -245,7 +247,7 @@ public class MediaSliderFragment extends Fragment implements MediaPlayer.OnCompl
.load(url).into(imageView);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
imageView.setTransitionName(attachment.getUrl());
ActivityCompat.startPostponedEnterTransition((Activity)context);
scheduleStartPostponedTransition(imageView);
}
}
@ -548,13 +550,29 @@ public class MediaSliderFragment extends Fragment implements MediaPlayer.OnCompl
@Override
public boolean onSlideClosed() {
return false;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
ActivityCompat.finishAfterTransition((Activity) context);
}else{
((Activity)context).finish();
}
return true;
}
})
.build());
}
}
private void scheduleStartPostponedTransition(final ImageView imageView) {
imageView.getViewTreeObserver().addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
@Override
public boolean onPreDraw() {
imageView.getViewTreeObserver().removeOnPreDrawListener(this);
ActivityCompat.startPostponedEnterTransition((Activity)context);
return true;
}
});
}
private void enableSliding(boolean enable) {
if (enable && !swipeEnabled) {
slidrInterface.unlock();

View File

@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<transitionManager xmlns:android="http://schemas.android.com/apk/res/android">
</transitionManager>
<transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
<changeBounds/>
<changeImageTransform/>
</transitionSet>

View File

@ -24,6 +24,10 @@
<item name="android:popupMenuStyle">@style/Fedilab.PopupMenu.Light</item>
<item name="android:itemBackground">@drawable/menu_selector</item>
<item name="popupWindowStyle">@style/Cyanea.PopupMenu.Light</item>
<item name="android:windowContentTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowActivityTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowSharedElementEnterTransition" tools:ignore="NewApi">@transition/anim</item>
<item name="android:windowSharedElementExitTransition" tools:targetApi="lollipop">@transition/anim</item>
</style>
<style name="Cyanea.PopupMenu.Light" parent="@style/Widget.AppCompat.PopupMenu">
<item name="android:popupBackground">@color/cyanea_primary_dark_reference</item>
@ -41,6 +45,10 @@
<item name="linkColor">@color/light_link_toot</item>
<item name="android:popupMenuStyle">@style/Fedilab.PopupMenu.Light</item>
<item name="android:itemBackground">@drawable/menu_selector</item>
<item name="android:windowContentTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowActivityTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowSharedElementEnterTransition" tools:ignore="NewApi">@transition/anim</item>
<item name="android:windowSharedElementExitTransition" tools:targetApi="lollipop">@transition/anim</item>
</style>
<!-- BLACK theme -->
<style name="AppThemeBlack" parent="Theme.Cyanea.Dark">
@ -56,6 +64,10 @@
<item name="android:popupMenuStyle">@style/Fedilab.PopupMenu.Dark</item>
<item name="android:itemBackground">@drawable/menu_selector</item>
<item name="popupWindowStyle">@style/Cyanea.PopupMenu.black</item>
<item name="android:windowContentTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowActivityTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowSharedElementEnterTransition" tools:ignore="NewApi">@transition/anim</item>
<item name="android:windowSharedElementExitTransition" tools:targetApi="lollipop">@transition/anim</item>
</style>
<style name="Cyanea.PopupMenu.black" parent="@style/Widget.AppCompat.PopupMenu">
<item name="android:popupBackground">@color/cyanea_primary_dark_reference</item>
@ -73,6 +85,10 @@
<item name="linkColor">@color/black_link_toot</item>
<item name="android:popupMenuStyle">@style/Fedilab.PopupMenu.Dark</item>
<item name="android:itemBackground">@drawable/menu_selector</item>
<item name="android:windowContentTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowActivityTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowSharedElementEnterTransition" tools:ignore="NewApi">@transition/anim</item>
<item name="android:windowSharedElementExitTransition" tools:targetApi="lollipop">@transition/anim</item>
</style>
@ -90,6 +106,10 @@
<item name="android:popupMenuStyle">@style/Fedilab.PopupMenu.Dark</item>
<item name="android:itemBackground">@drawable/menu_selector</item>
<item name="popupWindowStyle">@style/Cyanea.PopupMenu.Dark</item>
<item name="android:windowContentTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowActivityTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowSharedElementEnterTransition" tools:ignore="NewApi">@transition/anim</item>
<item name="android:windowSharedElementExitTransition" tools:targetApi="lollipop">@transition/anim</item>
</style>
<style name="Cyanea.PopupMenu.Dark" parent="@style/Widget.AppCompat.PopupMenu">
<item name="android:popupBackground">@color/cyanea_primary_dark_reference</item>
@ -107,6 +127,10 @@
<item name="linkColor">@color/dark_link_toot</item>
<item name="android:popupMenuStyle">@style/Fedilab.PopupMenu.Dark</item>
<item name="android:itemBackground">@drawable/menu_selector</item>
<item name="android:windowContentTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowActivityTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowSharedElementEnterTransition" tools:ignore="NewApi">@transition/anim</item>
<item name="android:windowSharedElementExitTransition" tools:targetApi="lollipop">@transition/anim</item>
</style>
@ -153,6 +177,10 @@
<item name="linkColor">@color/light_link_toot</item>
<item name="android:itemBackground">@drawable/menu_selector</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowContentTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowActivityTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowSharedElementEnterTransition" tools:ignore="NewApi">@transition/anim</item>
<item name="android:windowSharedElementExitTransition" tools:targetApi="lollipop">@transition/anim</item>
</style>
<style name="TransparentDark" parent="Theme.Cyanea.Dark">
@ -163,6 +191,10 @@
<item name="android:itemBackground">@drawable/menu_selector</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowActivityTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowSharedElementEnterTransition" tools:ignore="NewApi">@transition/anim</item>
<item name="android:windowSharedElementExitTransition" tools:targetApi="lollipop">@transition/anim</item>
</style>
<style name="TransparentBlack" parent="Theme.Cyanea.Dark">
@ -174,6 +206,10 @@
<item name="linkColor">@color/black_link_toot</item>
<item name="android:itemBackground">@drawable/menu_selector</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowContentTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowActivityTransitions" tools:targetApi="lollipop">true</item>
<item name="android:windowSharedElementEnterTransition" tools:ignore="NewApi">@transition/anim</item>
<item name="android:windowSharedElementExitTransition" tools:targetApi="lollipop">@transition/anim</item>
</style>
<style name="Fedilab.PopupMenu.Light" parent="Cyanea.PopupMenu.Light">