Set android:windowSharedElementsUseOverlay to false
This commit is contained in:
parent
1aa6aec9cb
commit
f27dbdab3d
3 changed files with 9 additions and 31 deletions
|
|
@ -86,7 +86,7 @@ public abstract class AbsBaseActivity extends AbsThemeActivity implements KabVie
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Should be overwritten and re enable all {@link android.view.View} to ensure they are accessible again
|
* Should be overwritten and re enable all {@link android.view.View} to ensure they are accessible again
|
||||||
* <p/>
|
* <p>
|
||||||
* This is necessary because of a bug with the shared element transition
|
* This is necessary because of a bug with the shared element transition
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -96,7 +96,7 @@ public abstract class AbsBaseActivity extends AbsThemeActivity implements KabVie
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Should be overwritten and disable all views that start a new activity on click to prevent opening an activity multiple times
|
* Should be overwritten and disable all views that start a new activity on click to prevent opening an activity multiple times
|
||||||
* <p/>
|
* <p>
|
||||||
* This is necessary because of a bug with the shared element transition
|
* This is necessary because of a bug with the shared element transition
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,6 @@ import android.support.annotation.NonNull;
|
||||||
import android.support.annotation.Nullable;
|
import android.support.annotation.Nullable;
|
||||||
import android.support.v4.app.ActivityOptionsCompat;
|
import android.support.v4.app.ActivityOptionsCompat;
|
||||||
import android.support.v4.util.Pair;
|
import android.support.v4.util.Pair;
|
||||||
import android.view.View;
|
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
|
|
||||||
import com.kabouzeid.gramophone.R;
|
import com.kabouzeid.gramophone.R;
|
||||||
|
|
@ -18,7 +17,6 @@ import com.kabouzeid.gramophone.model.Playlist;
|
||||||
import com.kabouzeid.gramophone.ui.activities.AlbumDetailActivity;
|
import com.kabouzeid.gramophone.ui.activities.AlbumDetailActivity;
|
||||||
import com.kabouzeid.gramophone.ui.activities.ArtistDetailActivity;
|
import com.kabouzeid.gramophone.ui.activities.ArtistDetailActivity;
|
||||||
import com.kabouzeid.gramophone.ui.activities.PlaylistDetailActivity;
|
import com.kabouzeid.gramophone.ui.activities.PlaylistDetailActivity;
|
||||||
import com.kabouzeid.gramophone.ui.activities.base.AbsSlidingMusicPanelActivity;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Karim Abou Zeid (kabouzeid)
|
* @author Karim Abou Zeid (kabouzeid)
|
||||||
|
|
@ -31,8 +29,6 @@ public class NavigationUtil {
|
||||||
final Intent intent = new Intent(activity, ArtistDetailActivity.class);
|
final Intent intent = new Intent(activity, ArtistDetailActivity.class);
|
||||||
intent.putExtra(ArtistDetailActivity.EXTRA_ARTIST_ID, artistId);
|
intent.putExtra(ArtistDetailActivity.EXTRA_ARTIST_ID, artistId);
|
||||||
|
|
||||||
sharedElements = addMiniPlayerSharedElement(activity, sharedElements);
|
|
||||||
|
|
||||||
//noinspection unchecked
|
//noinspection unchecked
|
||||||
activity.startActivity(intent, ActivityOptionsCompat.makeSceneTransitionAnimation(activity, sharedElements).toBundle());
|
activity.startActivity(intent, ActivityOptionsCompat.makeSceneTransitionAnimation(activity, sharedElements).toBundle());
|
||||||
}
|
}
|
||||||
|
|
@ -43,8 +39,6 @@ public class NavigationUtil {
|
||||||
final Intent intent = new Intent(activity, AlbumDetailActivity.class);
|
final Intent intent = new Intent(activity, AlbumDetailActivity.class);
|
||||||
intent.putExtra(AlbumDetailActivity.EXTRA_ALBUM_ID, albumId);
|
intent.putExtra(AlbumDetailActivity.EXTRA_ALBUM_ID, albumId);
|
||||||
|
|
||||||
sharedElements = addMiniPlayerSharedElement(activity, sharedElements);
|
|
||||||
|
|
||||||
//noinspection unchecked
|
//noinspection unchecked
|
||||||
activity.startActivity(intent, ActivityOptionsCompat.makeSceneTransitionAnimation(activity, sharedElements).toBundle());
|
activity.startActivity(intent, ActivityOptionsCompat.makeSceneTransitionAnimation(activity, sharedElements).toBundle());
|
||||||
}
|
}
|
||||||
|
|
@ -55,29 +49,7 @@ public class NavigationUtil {
|
||||||
final Intent intent = new Intent(activity, PlaylistDetailActivity.class);
|
final Intent intent = new Intent(activity, PlaylistDetailActivity.class);
|
||||||
intent.putExtra(PlaylistDetailActivity.EXTRA_PLAYLIST, playlist);
|
intent.putExtra(PlaylistDetailActivity.EXTRA_PLAYLIST, playlist);
|
||||||
|
|
||||||
sharedElements = addMiniPlayerSharedElement(activity, sharedElements);
|
activity.startActivity(intent);
|
||||||
|
|
||||||
//noinspection unchecked
|
|
||||||
activity.startActivity(intent, ActivityOptionsCompat.makeSceneTransitionAnimation(activity, sharedElements).toBundle());
|
|
||||||
}
|
|
||||||
|
|
||||||
private static Pair[] addMiniPlayerSharedElement(Activity activity, @Nullable Pair... sharedElements) {
|
|
||||||
if (activity instanceof AbsSlidingMusicPanelActivity) {
|
|
||||||
View miniPlayer = ((AbsSlidingMusicPanelActivity) activity).getMiniPlayerFragment().getView();
|
|
||||||
Pair miniPlayerSharedElement = Pair.create(miniPlayer, activity.getString(R.string.transition_mini_player));
|
|
||||||
|
|
||||||
if (sharedElements != null) {
|
|
||||||
Pair[] tmpSharedElements;
|
|
||||||
tmpSharedElements = new Pair[sharedElements.length + 1];
|
|
||||||
System.arraycopy(sharedElements, 0, tmpSharedElements, 0, sharedElements.length);
|
|
||||||
sharedElements = tmpSharedElements;
|
|
||||||
|
|
||||||
sharedElements[sharedElements.length - 1] = miniPlayerSharedElement;
|
|
||||||
} else {
|
|
||||||
sharedElements = new Pair[]{miniPlayerSharedElement};
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return sharedElements;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static boolean disableViewsAndCheckIsReadyForTransition(@NonNull final Activity activity) {
|
private static boolean disableViewsAndCheckIsReadyForTransition(@NonNull final Activity activity) {
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,8 @@
|
||||||
<item name="rect_selector">@drawable/rect_ripple_selector_dark</item>
|
<item name="rect_selector">@drawable/rect_ripple_selector_dark</item>
|
||||||
|
|
||||||
<item name="android:statusBarColor">@android:color/transparent</item>
|
<item name="android:statusBarColor">@android:color/transparent</item>
|
||||||
|
|
||||||
|
<item name="android:windowSharedElementsUseOverlay">false</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.Phonograph.Light" parent="Theme.Phonograph.Base.Light">
|
<style name="Theme.Phonograph.Light" parent="Theme.Phonograph.Base.Light">
|
||||||
|
|
@ -12,6 +14,8 @@
|
||||||
<item name="rect_selector">@drawable/rect_ripple_selector</item>
|
<item name="rect_selector">@drawable/rect_ripple_selector</item>
|
||||||
|
|
||||||
<item name="android:statusBarColor">@android:color/transparent</item>
|
<item name="android:statusBarColor">@android:color/transparent</item>
|
||||||
|
|
||||||
|
<item name="android:windowSharedElementsUseOverlay">false</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.Phonograph.Black" parent="Theme.Phonograph.Base.Black">
|
<style name="Theme.Phonograph.Black" parent="Theme.Phonograph.Base.Black">
|
||||||
|
|
@ -19,6 +23,8 @@
|
||||||
<item name="rect_selector">@drawable/rect_ripple_selector_dark</item>
|
<item name="rect_selector">@drawable/rect_ripple_selector_dark</item>
|
||||||
|
|
||||||
<item name="android:statusBarColor">@android:color/transparent</item>
|
<item name="android:statusBarColor">@android:color/transparent</item>
|
||||||
|
|
||||||
|
<item name="android:windowSharedElementsUseOverlay">false</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="Theme.Phonograph.Notification" parent="@android:style/TextAppearance.Material.Notification" />
|
<style name="Theme.Phonograph.Notification" parent="@android:style/TextAppearance.Material.Notification" />
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue