AndroidX lib refactor
This commit is contained in:
parent
b3eb12aebd
commit
08f0b5e76e
581 changed files with 5470 additions and 6070 deletions
|
@ -1,51 +0,0 @@
|
|||
package code.name.monkey.retromusic.views;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.TypedArray;
|
||||
import android.support.v7.widget.GridLayoutManager;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.util.AttributeSet;
|
||||
|
||||
/**
|
||||
* @author Hemanth S (h4h13).
|
||||
*/
|
||||
public class AutofitRecyclerView extends RecyclerView {
|
||||
private GridLayoutManager manager;
|
||||
private int columnWidth = -1; //default value
|
||||
|
||||
public AutofitRecyclerView(Context context) {
|
||||
super(context);
|
||||
init(context, null);
|
||||
}
|
||||
|
||||
public AutofitRecyclerView(Context context, AttributeSet attrs) {
|
||||
super(context, attrs);
|
||||
init(context, attrs);
|
||||
}
|
||||
|
||||
public AutofitRecyclerView(Context context, AttributeSet attrs, int defStyle) {
|
||||
super(context, attrs, defStyle);
|
||||
init(context, attrs);
|
||||
}
|
||||
|
||||
private void init(Context context, AttributeSet attrs) {
|
||||
if (attrs != null) {
|
||||
int[] attrsArray = {android.R.attr.columnWidth};
|
||||
TypedArray array = context.obtainStyledAttributes(attrs, attrsArray);
|
||||
columnWidth = array.getDimensionPixelSize(0, -1);
|
||||
array.recycle();
|
||||
}
|
||||
|
||||
manager = new GridLayoutManager(getContext(), 1, GridLayoutManager.HORIZONTAL,false);
|
||||
setLayoutManager(manager);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onMeasure(int widthSpec, int heightSpec) {
|
||||
super.onMeasure(widthSpec, heightSpec);
|
||||
if (columnWidth > 0) {
|
||||
int spanCount = Math.max(1, getMeasuredWidth() / columnWidth);
|
||||
manager.setSpanCount(spanCount);
|
||||
}
|
||||
}
|
||||
}
|
File diff suppressed because it is too large
Load diff
|
@ -1,41 +0,0 @@
|
|||
package code.name.monkey.retromusic.views;
|
||||
|
||||
import android.content.Context;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.MotionEvent;
|
||||
import android.widget.AbsListView;
|
||||
import android.widget.ListView;
|
||||
|
||||
public class BottomSheetListView extends ListView {
|
||||
public BottomSheetListView(Context context, AttributeSet p_attrs) {
|
||||
super(context, p_attrs);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onInterceptTouchEvent(MotionEvent ev) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onTouchEvent(MotionEvent ev) {
|
||||
if (canScrollVertically(this)) {
|
||||
getParent().requestDisallowInterceptTouchEvent(true);
|
||||
}
|
||||
return super.onTouchEvent(ev);
|
||||
}
|
||||
|
||||
public boolean canScrollVertically(AbsListView view) {
|
||||
boolean canScroll = false;
|
||||
|
||||
if (view != null && view.getChildCount() > 0) {
|
||||
boolean isOnTop = view.getFirstVisiblePosition() != 0 || view.getChildAt(0).getTop() != 0;
|
||||
boolean isAllItemsVisible = isOnTop && view.getLastVisiblePosition() == view.getChildCount();
|
||||
|
||||
if (isOnTop || isAllItemsVisible) {
|
||||
canScroll = true;
|
||||
}
|
||||
}
|
||||
|
||||
return canScroll;
|
||||
}
|
||||
}
|
|
@ -5,8 +5,8 @@ import android.graphics.PorterDuff;
|
|||
import android.os.Build;
|
||||
import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
import android.support.annotation.ColorInt;
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.ColorInt;
|
||||
import androidx.annotation.NonNull;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
|
|
|
@ -11,7 +11,7 @@ import android.graphics.Paint;
|
|||
import android.graphics.Shader;
|
||||
import android.graphics.drawable.BitmapDrawable;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.support.v7.widget.AppCompatImageView;
|
||||
import androidx.appcompat.widget.AppCompatImageView;
|
||||
import android.util.AttributeSet;
|
||||
import android.util.Log;
|
||||
|
||||
|
|
|
@ -1,55 +0,0 @@
|
|||
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();
|
||||
}
|
||||
}
|
|
@ -3,14 +3,13 @@ package code.name.monkey.retromusic.views;
|
|||
import android.content.Context;
|
||||
import android.graphics.PorterDuff;
|
||||
import android.util.AttributeSet;
|
||||
import android.widget.ImageView;
|
||||
|
||||
import code.name.monkey.appthemehelper.util.ATHUtil;
|
||||
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
|
||||
public class IconImageView extends android.support.v7.widget.AppCompatImageView {
|
||||
public class IconImageView extends androidx.appcompat.widget.AppCompatImageView {
|
||||
public IconImageView(Context context) {
|
||||
super(context);
|
||||
init(context);
|
||||
|
|
|
@ -13,7 +13,7 @@ import android.graphics.Path;
|
|||
import android.graphics.Rect;
|
||||
import android.graphics.Typeface;
|
||||
import android.os.Looper;
|
||||
import android.support.annotation.IntDef;
|
||||
import androidx.annotation.IntDef;
|
||||
import android.text.Layout;
|
||||
import android.text.StaticLayout;
|
||||
import android.text.TextPaint;
|
||||
|
|
|
@ -17,12 +17,12 @@ package code.name.monkey.retromusic.views;
|
|||
|
||||
import android.content.Context;
|
||||
import android.content.res.TypedArray;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.v7.widget.LinearLayoutManager;
|
||||
import android.support.v7.widget.PagerSnapHelper;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.support.v7.widget.SnapHelper;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.PagerSnapHelper;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import androidx.recyclerview.widget.SnapHelper;
|
||||
import android.util.AttributeSet;
|
||||
import android.util.DisplayMetrics;
|
||||
import android.view.View;
|
||||
|
|
|
@ -8,14 +8,12 @@ import android.content.res.Resources;
|
|||
import android.graphics.Canvas;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.ColorFilter;
|
||||
import android.graphics.CornerPathEffect;
|
||||
import android.graphics.Paint;
|
||||
import android.graphics.Path;
|
||||
import android.graphics.PixelFormat;
|
||||
import android.graphics.Rect;
|
||||
import android.graphics.RectF;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.support.annotation.NonNull;
|
||||
import androidx.annotation.NonNull;
|
||||
import android.util.Property;
|
||||
import android.view.animation.DecelerateInterpolator;
|
||||
|
||||
|
|
|
@ -3,10 +3,11 @@ package code.name.monkey.retromusic.views;
|
|||
import android.annotation.SuppressLint;
|
||||
import android.app.Dialog;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.design.widget.BottomSheetDialog;
|
||||
import android.support.design.widget.BottomSheetDialogFragment;
|
||||
|
||||
import com.google.android.material.bottomsheet.BottomSheetDialog;
|
||||
import com.google.android.material.bottomsheet.BottomSheetDialogFragment;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import code.name.monkey.appthemehelper.ThemeStore;
|
||||
import code.name.monkey.appthemehelper.util.ColorUtil;
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
|
|
@ -1,41 +0,0 @@
|
|||
package code.name.monkey.retromusic.views;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Typeface;
|
||||
import android.support.design.widget.CollapsingToolbarLayout;
|
||||
import android.util.AttributeSet;
|
||||
|
||||
import code.name.monkey.appthemehelper.util.TypefaceHelper;
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
/**
|
||||
* @author Hemanth S (h4h13).
|
||||
*/
|
||||
|
||||
public class SansFontCollapsingToolbarLayout extends CollapsingToolbarLayout {
|
||||
public SansFontCollapsingToolbarLayout(Context context) {
|
||||
super(context);
|
||||
init(context);
|
||||
}
|
||||
|
||||
public SansFontCollapsingToolbarLayout(Context context, AttributeSet attrs) {
|
||||
super(context, attrs);
|
||||
init(context);
|
||||
}
|
||||
|
||||
public SansFontCollapsingToolbarLayout(Context context, AttributeSet attrs, int defStyleAttr) {
|
||||
super(context, attrs, defStyleAttr);
|
||||
init(context);
|
||||
}
|
||||
|
||||
private void init(Context context) {
|
||||
Typeface typefaceBold = TypefaceHelper.get(context, getResources().getString(R.string.circular_std_black));
|
||||
setExpandedTitleTypeface(typefaceBold);
|
||||
setCollapsedTitleTypeface(typefaceBold);
|
||||
|
||||
}
|
||||
|
||||
public void setTitle(int i) {
|
||||
setTitle(getContext().getString(i));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
package code.name.monkey.retromusic.views;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Build;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.WindowInsets;
|
||||
import android.widget.FrameLayout;
|
||||
|
||||
public class StatusBarMarginFrameLayout extends FrameLayout {
|
||||
|
||||
|
||||
public StatusBarMarginFrameLayout(Context context) {
|
||||
super(context);
|
||||
}
|
||||
|
||||
public StatusBarMarginFrameLayout(Context context, AttributeSet attrs) {
|
||||
super(context, attrs);
|
||||
}
|
||||
|
||||
public StatusBarMarginFrameLayout(Context context, AttributeSet attrs, int defStyleAttr) {
|
||||
super(context, attrs, defStyleAttr);
|
||||
}
|
||||
|
||||
@Override
|
||||
public WindowInsets onApplyWindowInsets(WindowInsets insets) {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||
MarginLayoutParams lp = (MarginLayoutParams) getLayoutParams();
|
||||
lp.topMargin = insets.getSystemWindowInsetTop();
|
||||
setLayoutParams(lp);
|
||||
}
|
||||
return super.onApplyWindowInsets(insets);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
package code.name.monkey.retromusic.views;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.Resources;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.View;
|
||||
|
||||
public class StatusBarView extends View {
|
||||
|
||||
|
||||
public StatusBarView(Context context) {
|
||||
super(context);
|
||||
}
|
||||
|
||||
public StatusBarView(Context context, AttributeSet attrs) {
|
||||
super(context, attrs);
|
||||
}
|
||||
|
||||
public StatusBarView(Context context, AttributeSet attrs, int defStyleAttr) {
|
||||
super(context, attrs, defStyleAttr);
|
||||
}
|
||||
|
||||
public static int getStatusBarHeight(Resources r) {
|
||||
int result = 0;
|
||||
int resourceId = r.getIdentifier("status_bar_height", "dimen", "android");
|
||||
if (resourceId > 0) {
|
||||
result = r.getDimensionPixelSize(resourceId);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
|
||||
setMeasuredDimension(
|
||||
MeasureSpec.getSize(widthMeasureSpec), getStatusBarHeight(getResources()));
|
||||
}
|
||||
}
|
|
@ -3,11 +3,11 @@ 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 androidx.annotation.Nullable;
|
||||
import androidx.core.graphics.drawable.DrawableCompat;
|
||||
import androidx.mediarouter.app.MediaRouteActionProvider;
|
||||
import androidx.mediarouter.app.MediaRouteButton;
|
||||
import androidx.appcompat.view.ContextThemeWrapper;
|
||||
|
||||
import code.name.monkey.appthemehelper.ThemeStore;
|
||||
|
||||
|
@ -33,12 +33,12 @@ public class ThemeableMediaRouteActionProvider extends MediaRouteActionProvider
|
|||
|
||||
private void colorWorkaroundForCastIcon(MediaRouteButton button) {
|
||||
if (button == null) return;
|
||||
Context castContext = new ContextThemeWrapper(getContext(), android.support.v7.mediarouter.R.style.Theme_MediaRouter);
|
||||
Context castContext = new ContextThemeWrapper(getContext(), androidx.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);
|
||||
androidx.mediarouter.R.styleable.MediaRouteButton, androidx.mediarouter.R.attr.mediaRouteButtonStyle, 0);
|
||||
Drawable drawable = a.getDrawable(
|
||||
android.support.v7.mediarouter.R.styleable.MediaRouteButton_externalRouteEnabledDrawable);
|
||||
androidx.mediarouter.R.styleable.MediaRouteButton_externalRouteEnabledDrawable);
|
||||
a.recycle();
|
||||
if (drawable != null) {
|
||||
DrawableCompat.setTint(drawable, ThemeStore.textColorPrimary(getContext()));
|
||||
|
|
|
@ -5,7 +5,7 @@ import android.graphics.Canvas;
|
|||
import android.util.AttributeSet;
|
||||
import android.view.Gravity;
|
||||
|
||||
public class VerticalTextView extends android.support.v7.widget.AppCompatTextView {
|
||||
public class VerticalTextView extends androidx.appcompat.widget.AppCompatTextView {
|
||||
final boolean topDown;
|
||||
|
||||
public VerticalTextView(Context context, AttributeSet attrs) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue