diff --git a/src/main/kotlin/com/looker/droidify/screen/ProductAdapter.kt b/src/main/kotlin/com/looker/droidify/screen/ProductAdapter.kt index 19aea02d..c778c692 100644 --- a/src/main/kotlin/com/looker/droidify/screen/ProductAdapter.kt +++ b/src/main/kotlin/com/looker/droidify/screen/ProductAdapter.kt @@ -4,6 +4,7 @@ import android.annotation.SuppressLint import android.content.ClipData import android.content.ClipboardManager import android.content.Context +import android.content.Intent import android.content.pm.PermissionGroupInfo import android.content.pm.PermissionInfo import android.content.res.Resources @@ -24,11 +25,17 @@ import android.view.ViewGroup import android.widget.* import androidx.appcompat.content.res.AppCompatResources import androidx.core.content.res.ResourcesCompat +import androidx.core.net.toUri import androidx.core.text.HtmlCompat import androidx.core.text.util.LinkifyCompat +import androidx.core.view.doOnPreDraw import androidx.recyclerview.widget.RecyclerView +import coil.load +import com.google.android.material.card.MaterialCardView +import com.google.android.material.divider.MaterialDivider import com.google.android.material.imageview.ShapeableImageView import com.google.android.material.switchmaterial.SwitchMaterial +import com.google.android.material.textview.MaterialTextView import com.looker.droidify.R import com.looker.droidify.content.Preferences import com.looker.droidify.content.ProductPreferences @@ -79,7 +86,7 @@ class ProductAdapter(private val callbacks: Callbacks, private val columns: Int) data class Downloading(val read: Long, val total: Long?) : Status() } - enum class ViewType { HEADER, SWITCH, SECTION, EXPAND, TEXT, LINK, PERMISSIONS, SCREENSHOT, RELEASE, EMPTY } + enum class ViewType { HEADER, RELEASE_INFO, SWITCH, SECTION, EXPAND, TEXT, LINK, PERMISSIONS, SCREENSHOT, RELEASE, EMPTY } private enum class SwitchType(val titleResId: Int) { IGNORE_ALL_UPDATES(R.string.ignore_all_updates), @@ -129,6 +136,14 @@ class ProductAdapter(private val callbacks: Callbacks, private val columns: Int) get() = ViewType.HEADER } + object ReleaseInfoItem : Item() { + override val descriptor: String + get() = "release_item" + override val viewType: ViewType + get() = ViewType.RELEASE_INFO + + } + class SwitchItem( val switchType: SwitchType, val packageName: String, @@ -309,7 +324,6 @@ class ProductAdapter(private val callbacks: Callbacks, private val columns: Int) private class HeaderViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { val icon = itemView.findViewById(R.id.icon)!! val name = itemView.findViewById(R.id.name)!! - val version = itemView.findViewById(R.id.version)!! val packageName = itemView.findViewById(R.id.package_name)!! val action = itemView.findViewById