V5 Push
Here's a list of changes/features: https://github.com/RetroMusicPlayer/RetroMusicPlayer/releases/tag/v5.0 Internal Changes: 1) Migrated to ViewBinding 2) Migrated to Glide V4 3) Migrated to kotlin version of Material Dialogs
This commit is contained in:
parent
fc42767031
commit
bce6dbfa27
421 changed files with 13285 additions and 5757 deletions
|
@ -19,10 +19,13 @@ import android.content.res.TypedArray;
|
|||
import android.graphics.Paint;
|
||||
import android.util.AttributeSet;
|
||||
import android.util.TypedValue;
|
||||
|
||||
import androidx.annotation.FontRes;
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
import com.google.android.material.textview.MaterialTextView;
|
||||
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
public class BaselineGridTextView extends MaterialTextView {
|
||||
|
||||
private final float FOUR_DIP;
|
||||
|
|
|
@ -26,16 +26,19 @@ import android.widget.HorizontalScrollView;
|
|||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.ColorInt;
|
||||
import androidx.annotation.NonNull;
|
||||
import code.name.monkey.appthemehelper.util.ATHUtil;
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
import code.name.monkey.appthemehelper.util.ATHUtil;
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
/** @author Aidan Follestad (afollestad), modified for Phonograph by Karim Abou Zeid (kabouzeid) */
|
||||
public class BreadCrumbLayout extends HorizontalScrollView implements View.OnClickListener {
|
||||
|
||||
|
|
|
@ -27,7 +27,9 @@ import android.graphics.drawable.BitmapDrawable;
|
|||
import android.graphics.drawable.Drawable;
|
||||
import android.util.AttributeSet;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.appcompat.widget.AppCompatImageView;
|
||||
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
public class CircularImageView extends AppCompatImageView {
|
||||
|
|
|
@ -24,8 +24,10 @@ import android.view.LayoutInflater;
|
|||
import android.view.View;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
public class ContributorsView extends FrameLayout {
|
||||
|
|
|
@ -16,18 +16,19 @@ package code.name.monkey.retromusic.views
|
|||
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import android.view.View
|
||||
import android.view.LayoutInflater
|
||||
import android.widget.FrameLayout
|
||||
import code.name.monkey.retromusic.R
|
||||
import code.name.monkey.retromusic.databinding.ListItemViewNoCardBinding
|
||||
import code.name.monkey.retromusic.extensions.hide
|
||||
import code.name.monkey.retromusic.extensions.show
|
||||
import kotlinx.android.synthetic.main.list_item_view.view.*
|
||||
|
||||
/**
|
||||
* Created by hemanths on 2019-10-02.
|
||||
*/
|
||||
class ListItemView : FrameLayout {
|
||||
|
||||
private lateinit var binding: ListItemViewNoCardBinding
|
||||
|
||||
constructor(context: Context) : super(context) {
|
||||
init(context, null)
|
||||
|
@ -46,27 +47,27 @@ class ListItemView : FrameLayout {
|
|||
}
|
||||
|
||||
private fun init(context: Context, attrs: AttributeSet?) {
|
||||
View.inflate(context, R.layout.list_item_view_no_card, this)
|
||||
binding = ListItemViewNoCardBinding.inflate(LayoutInflater.from(context))
|
||||
addView(binding.root)
|
||||
|
||||
val typedArray = context.obtainStyledAttributes(attrs, R.styleable.ListItemView)
|
||||
if (typedArray.hasValue(R.styleable.ListItemView_listItemIcon)) {
|
||||
icon.setImageDrawable(typedArray.getDrawable(R.styleable.ListItemView_listItemIcon))
|
||||
binding.icon.setImageDrawable(typedArray.getDrawable(R.styleable.ListItemView_listItemIcon))
|
||||
} else {
|
||||
|
||||
icon.hide()
|
||||
binding.icon.hide()
|
||||
}
|
||||
|
||||
title.text = typedArray.getText(R.styleable.ListItemView_listItemTitle)
|
||||
binding.title.text = typedArray.getText(R.styleable.ListItemView_listItemTitle)
|
||||
if (typedArray.hasValue(R.styleable.ListItemView_listItemSummary)) {
|
||||
summary.text = typedArray.getText(R.styleable.ListItemView_listItemSummary)
|
||||
binding.summary.text = typedArray.getText(R.styleable.ListItemView_listItemSummary)
|
||||
} else {
|
||||
summary.hide()
|
||||
binding.summary.hide()
|
||||
}
|
||||
typedArray.recycle()
|
||||
}
|
||||
|
||||
fun setSummary(appVersion: String) {
|
||||
summary.show()
|
||||
summary.text = appVersion
|
||||
binding.summary.show()
|
||||
binding.summary.text = appVersion
|
||||
}
|
||||
}
|
|
@ -17,11 +17,14 @@ package code.name.monkey.retromusic.views;
|
|||
import android.content.Context;
|
||||
import android.content.res.TypedArray;
|
||||
import android.util.AttributeSet;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
import com.bumptech.glide.Glide;
|
||||
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
/** @author Hemanth S (h4h13). */
|
||||
public class NetworkImageView extends CircularImageView {
|
||||
|
||||
|
|
|
@ -3,12 +3,13 @@ package code.name.monkey.retromusic.views
|
|||
import android.content.Context
|
||||
import android.content.res.ColorStateList
|
||||
import android.util.AttributeSet
|
||||
import android.view.LayoutInflater
|
||||
import android.widget.FrameLayout
|
||||
import code.name.monkey.appthemehelper.ThemeStore
|
||||
import code.name.monkey.appthemehelper.util.ColorUtil
|
||||
import code.name.monkey.retromusic.R
|
||||
import code.name.monkey.retromusic.databinding.ItemPermissionBinding
|
||||
import code.name.monkey.retromusic.extensions.accentOutlineColor
|
||||
import kotlinx.android.synthetic.main.item_permission.view.*
|
||||
|
||||
class PermissionItem @JvmOverloads constructor(
|
||||
context: Context,
|
||||
|
@ -16,28 +17,34 @@ class PermissionItem @JvmOverloads constructor(
|
|||
defStyleAttr: Int = -1,
|
||||
defStyleRes: Int = -1
|
||||
) : FrameLayout(context, attrs, defStyleAttr, defStyleRes) {
|
||||
private var binding: ItemPermissionBinding
|
||||
val checkImage get() = binding.checkImage
|
||||
|
||||
init {
|
||||
val attributes = context.obtainStyledAttributes(attrs, R.styleable.PermissionItem, 0, 0)
|
||||
inflate(context, R.layout.item_permission, this)
|
||||
binding = ItemPermissionBinding.inflate(LayoutInflater.from(context))
|
||||
addView(binding.root)
|
||||
|
||||
title.text = attributes.getText(R.styleable.PermissionItem_permissionTitle)
|
||||
summary.text = attributes.getText(R.styleable.PermissionItem_permissionTitleSubTitle)
|
||||
number.text = attributes.getText(R.styleable.PermissionItem_permissionTitleNumber)
|
||||
button.text = attributes.getText(R.styleable.PermissionItem_permissionButtonTitle)
|
||||
button.setIconResource(
|
||||
binding.title.text = attributes.getText(R.styleable.PermissionItem_permissionTitle)
|
||||
binding.summary.text =
|
||||
attributes.getText(R.styleable.PermissionItem_permissionTitleSubTitle)
|
||||
binding.number.text = attributes.getText(R.styleable.PermissionItem_permissionTitleNumber)
|
||||
binding.button.text = attributes.getText(R.styleable.PermissionItem_permissionButtonTitle)
|
||||
binding.button.setIconResource(
|
||||
attributes.getResourceId(
|
||||
R.styleable.PermissionItem_permissionIcon,
|
||||
R.drawable.ic_album
|
||||
)
|
||||
)
|
||||
val color = ThemeStore.accentColor(context)
|
||||
number.backgroundTintList = ColorStateList.valueOf(ColorUtil.withAlpha(color, 0.22f))
|
||||
binding.number.backgroundTintList =
|
||||
ColorStateList.valueOf(ColorUtil.withAlpha(color, 0.22f))
|
||||
|
||||
button.accentOutlineColor()
|
||||
binding.button.accentOutlineColor()
|
||||
attributes.recycle()
|
||||
}
|
||||
|
||||
fun setButtonClick(callBack: () -> Unit) {
|
||||
button.setOnClickListener { callBack.invoke() }
|
||||
binding.button.setOnClickListener { callBack.invoke() }
|
||||
}
|
||||
}
|
|
@ -27,9 +27,11 @@ import android.graphics.Rect;
|
|||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Build;
|
||||
import android.view.View;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.core.graphics.drawable.DrawableCompat;
|
||||
|
||||
import code.name.monkey.appthemehelper.ThemeStore;
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
|
|
|
@ -17,8 +17,10 @@ package code.name.monkey.retromusic.views;
|
|||
import android.graphics.Rect;
|
||||
import android.view.View;
|
||||
import android.view.WindowInsets;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import me.zhanghai.android.fastscroll.FastScroller;
|
||||
|
||||
public class ScrollingViewOnApplyWindowInsetsListener implements View.OnApplyWindowInsetsListener {
|
||||
|
|
|
@ -24,6 +24,7 @@ import android.util.AttributeSet;
|
|||
import android.util.Log;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.View;
|
||||
|
||||
import code.name.monkey.retromusic.R;
|
||||
|
||||
/**
|
||||
|
@ -206,10 +207,6 @@ public class SeekArc extends View {
|
|||
updateOnTouch(event);
|
||||
break;
|
||||
case MotionEvent.ACTION_UP:
|
||||
onStopTrackingTouch();
|
||||
setPressed(false);
|
||||
this.getParent().requestDisallowInterceptTouchEvent(false);
|
||||
break;
|
||||
case MotionEvent.ACTION_CANCEL:
|
||||
onStopTrackingTouch();
|
||||
setPressed(false);
|
||||
|
|
|
@ -16,10 +16,10 @@ package code.name.monkey.retromusic.views
|
|||
import android.content.Context
|
||||
import android.graphics.Color
|
||||
import android.util.AttributeSet
|
||||
import android.view.View
|
||||
import android.view.LayoutInflater
|
||||
import android.widget.FrameLayout
|
||||
import code.name.monkey.retromusic.R
|
||||
import kotlinx.android.synthetic.main.list_setting_item_view.view.*
|
||||
import code.name.monkey.retromusic.databinding.ListSettingItemViewBinding
|
||||
|
||||
/**
|
||||
* Created by hemanths on 2019-12-10.
|
||||
|
@ -30,22 +30,26 @@ class SettingListItemView @JvmOverloads constructor(
|
|||
defStyleAttr: Int = -1,
|
||||
defStyleRes: Int = -1
|
||||
) : FrameLayout(context, attrs, defStyleAttr, defStyleRes) {
|
||||
private var binding: ListSettingItemViewBinding =
|
||||
ListSettingItemViewBinding.inflate(LayoutInflater.from(context))
|
||||
|
||||
init {
|
||||
View.inflate(context, R.layout.list_setting_item_view, this)
|
||||
addView(binding.root)
|
||||
val typedArray =
|
||||
context.obtainStyledAttributes(attrs, R.styleable.SettingListItemView)
|
||||
icon as ColorIconsImageView
|
||||
binding.icon
|
||||
if (typedArray.hasValue(R.styleable.SettingListItemView_settingListItemIcon)) {
|
||||
icon.setImageDrawable(typedArray.getDrawable(R.styleable.SettingListItemView_settingListItemIcon))
|
||||
binding.icon.setImageDrawable(typedArray.getDrawable(R.styleable.SettingListItemView_settingListItemIcon))
|
||||
}
|
||||
icon.setIconBackgroundColor(
|
||||
binding.icon.setIconBackgroundColor(
|
||||
typedArray.getColor(
|
||||
R.styleable.SettingListItemView_settingListItemIconColor,
|
||||
Color.WHITE
|
||||
)
|
||||
)
|
||||
title.text = typedArray.getText(R.styleable.SettingListItemView_settingListItemTitle)
|
||||
text.text = typedArray.getText(R.styleable.SettingListItemView_settingListItemText)
|
||||
binding.title.text =
|
||||
typedArray.getText(R.styleable.SettingListItemView_settingListItemTitle)
|
||||
binding.text.text = typedArray.getText(R.styleable.SettingListItemView_settingListItemText)
|
||||
typedArray.recycle()
|
||||
}
|
||||
}
|
|
@ -19,6 +19,7 @@ import android.os.Build;
|
|||
import android.util.AttributeSet;
|
||||
import android.view.WindowInsets;
|
||||
import android.widget.FrameLayout;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
public class StatusBarMarginFrameLayout extends FrameLayout {
|
||||
|
|
|
@ -18,6 +18,7 @@ import android.content.Context;
|
|||
import android.content.res.Resources;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.View;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
public class StatusBarView extends View {
|
||||
|
|
|
@ -19,6 +19,7 @@ import android.graphics.Canvas;
|
|||
import android.text.TextPaint;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.Gravity;
|
||||
|
||||
import androidx.appcompat.widget.AppCompatTextView;
|
||||
|
||||
public class VerticalTextView extends AppCompatTextView {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue