New UI
This commit is contained in:
parent
fbd5e8bb61
commit
3f3818efb7
270 changed files with 7441 additions and 6502 deletions
|
@ -908,7 +908,7 @@ public class BottomNavigationViewEx extends BottomNavigationView {
|
|||
}
|
||||
|
||||
public void enableShiftingMode(int position, boolean enable) {
|
||||
getBottomNavigationItemView(position).setShiftingMode(enable);
|
||||
//getBottomNavigationItemView(position).setShiftingMode(enable);
|
||||
}
|
||||
|
||||
public void setItemBackground(int position, int background) {
|
||||
|
|
|
@ -0,0 +1,55 @@
|
|||
package code.name.monkey.retromusic.views;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Context;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.v7.app.MediaRouteButton;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.ContextThemeWrapper;
|
||||
|
||||
import code.name.monkey.appthemehelper.util.ATHUtil;
|
||||
import code.name.monkey.retromusic.R;
|
||||
import code.name.monkey.retromusic.RetroApplication;
|
||||
import code.name.monkey.retromusic.util.NavigationUtil;
|
||||
|
||||
public class CustomMediaRouteButton extends MediaRouteButton {
|
||||
|
||||
@Nullable
|
||||
private Activity activity;
|
||||
|
||||
public CustomMediaRouteButton(Context context) {
|
||||
this(context, null);
|
||||
}
|
||||
|
||||
public CustomMediaRouteButton(Context context, AttributeSet attrs) {
|
||||
this(context, attrs, R.attr.mediaRouteButtonStyle);
|
||||
}
|
||||
|
||||
public CustomMediaRouteButton(Context context, AttributeSet attrs, int defStyleAttr) {
|
||||
super(getThemedContext(context), attrs, defStyleAttr);
|
||||
}
|
||||
|
||||
private static Context getThemedContext(Context context) {
|
||||
return ATHUtil.isWindowBackgroundDark(context) ?
|
||||
new ContextThemeWrapper(new ContextThemeWrapper(context, R.style.Theme_AppCompat), R.style.Theme_MediaRouter) :
|
||||
new ContextThemeWrapper(new ContextThemeWrapper(context, R.style.Theme_AppCompat_Light), R.style.Theme_MediaRouter);
|
||||
}
|
||||
|
||||
public void setActivity(@NonNull Activity activity) {
|
||||
this.activity = activity;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean showDialog() {
|
||||
|
||||
if (!RetroApplication.isProVersion()) {
|
||||
if (activity != null) {
|
||||
NavigationUtil.goToProVersion((Activity) getContext());
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
return super.showDialog();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,49 @@
|
|||
package code.name.monkey.retromusic.views;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.TypedArray;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.v4.graphics.drawable.DrawableCompat;
|
||||
import android.support.v7.app.MediaRouteActionProvider;
|
||||
import android.support.v7.app.MediaRouteButton;
|
||||
import android.support.v7.view.ContextThemeWrapper;
|
||||
|
||||
import code.name.monkey.appthemehelper.ThemeStore;
|
||||
|
||||
public class ThemeableMediaRouteActionProvider extends MediaRouteActionProvider {
|
||||
public ThemeableMediaRouteActionProvider(Context context) {
|
||||
super(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
public MediaRouteButton onCreateMediaRouteButton() {
|
||||
MediaRouteButton button = super.onCreateMediaRouteButton();
|
||||
colorWorkaroundForCastIcon(button);
|
||||
return button;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public MediaRouteButton getMediaRouteButton() {
|
||||
MediaRouteButton button = super.getMediaRouteButton();
|
||||
colorWorkaroundForCastIcon(button);
|
||||
return button;
|
||||
}
|
||||
|
||||
private void colorWorkaroundForCastIcon(MediaRouteButton button) {
|
||||
if (button == null) return;
|
||||
Context castContext = new ContextThemeWrapper(getContext(), android.support.v7.mediarouter.R.style.Theme_MediaRouter);
|
||||
|
||||
TypedArray a = castContext.obtainStyledAttributes(null,
|
||||
android.support.v7.mediarouter.R.styleable.MediaRouteButton, android.support.v7.mediarouter.R.attr.mediaRouteButtonStyle, 0);
|
||||
Drawable drawable = a.getDrawable(
|
||||
android.support.v7.mediarouter.R.styleable.MediaRouteButton_externalRouteEnabledDrawable);
|
||||
a.recycle();
|
||||
if (drawable != null) {
|
||||
DrawableCompat.setTint(drawable, ThemeStore.textColorPrimary(getContext()));
|
||||
drawable.setState(button.getDrawableState());
|
||||
button.setRemoteIndicatorDrawable(drawable);
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue