summaryrefslogtreecommitdiff
path: root/Source/Android
diff options
context:
space:
mode:
authorCharles Lombardo <clombardo169@gmail.com>2023-06-03 20:39:32 -0400
committerCharles Lombardo <clombardo169@gmail.com>2023-06-05 20:08:52 -0400
commitdff2d8111ca7091f01879bd3fa1f5303a90a2d3d (patch)
tree740b1cfb7cb92ec2598ed693f8949a9c58514bae /Source/Android
parent252d3f353aa74b06a1c67daa65eb60f786608a6a (diff)
Android: Convert CustomTitleView to Kotlin
Diffstat (limited to 'Source/Android')
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/CustomTitleView.java85
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/CustomTitleView.kt53
2 files changed, 53 insertions, 85 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/CustomTitleView.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/CustomTitleView.java
deleted file mode 100644
index 08e4777303..0000000000
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/CustomTitleView.java
+++ /dev/null
@@ -1,85 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-package org.dolphinemu.dolphinemu.ui.main;
-
-import android.content.Context;
-import android.graphics.drawable.Drawable;
-import android.util.AttributeSet;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.LinearLayout;
-import android.widget.TextView;
-
-import androidx.leanback.widget.TitleViewAdapter;
-
-import org.dolphinemu.dolphinemu.R;
-
-public class CustomTitleView extends LinearLayout implements TitleViewAdapter.Provider
-{
- private final TextView mTitleView;
- private final View mBadgeView;
-
- private final TitleViewAdapter mTitleViewAdapter = new TitleViewAdapter()
- {
- @Override
- public View getSearchAffordanceView()
- {
- return null;
- }
-
- @Override
- public void setTitle(CharSequence titleText)
- {
- CustomTitleView.this.setTitle(titleText);
- }
-
- @Override
- public void setBadgeDrawable(Drawable drawable)
- {
- CustomTitleView.this.setBadgeDrawable(drawable);
- }
- };
-
- public CustomTitleView(Context context)
- {
- this(context, null);
- }
-
- public CustomTitleView(Context context, AttributeSet attrs)
- {
- this(context, attrs, 0);
- }
-
- public CustomTitleView(Context context, AttributeSet attrs, int defStyle)
- {
- super(context, attrs, defStyle);
- View root = LayoutInflater.from(context).inflate(R.layout.tv_title, this);
- mTitleView = root.findViewById(R.id.title);
- mBadgeView = root.findViewById(R.id.badge);
- }
-
- public void setTitle(CharSequence title)
- {
- if (title != null)
- {
- mTitleView.setText(title);
- mTitleView.setVisibility(View.VISIBLE);
- mBadgeView.setVisibility(View.VISIBLE);
- }
- }
-
- public void setBadgeDrawable(Drawable drawable)
- {
- if (drawable != null)
- {
- mTitleView.setVisibility(View.GONE);
- mBadgeView.setVisibility(View.VISIBLE);
- }
- }
-
- @Override
- public TitleViewAdapter getTitleViewAdapter()
- {
- return mTitleViewAdapter;
- }
-}
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/CustomTitleView.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/CustomTitleView.kt
new file mode 100644
index 0000000000..35f69195e9
--- /dev/null
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/CustomTitleView.kt
@@ -0,0 +1,53 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+package org.dolphinemu.dolphinemu.ui.main
+
+import android.content.Context
+import android.graphics.drawable.Drawable
+import android.util.AttributeSet
+import android.view.LayoutInflater
+import android.view.View
+import android.widget.LinearLayout
+import android.widget.TextView
+import androidx.leanback.widget.TitleViewAdapter
+import org.dolphinemu.dolphinemu.R
+
+class CustomTitleView @JvmOverloads constructor(
+ context: Context?,
+ attrs: AttributeSet? = null,
+ defStyle: Int = 0
+) : LinearLayout(context, attrs, defStyle), TitleViewAdapter.Provider {
+ private val titleView: TextView
+ private val badgeView: View
+ private val titleViewAdapter: TitleViewAdapter = object : TitleViewAdapter() {
+ override fun getSearchAffordanceView(): View? = null
+
+ override fun setTitle(titleText: CharSequence?) = this@CustomTitleView.setTitle(titleText)
+
+ override fun setBadgeDrawable(drawable: Drawable?) =
+ this@CustomTitleView.setBadgeDrawable(drawable)
+ }
+
+ init {
+ val root = LayoutInflater.from(context).inflate(R.layout.tv_title, this)
+ titleView = root.findViewById(R.id.title)
+ badgeView = root.findViewById(R.id.badge)
+ }
+
+ fun setTitle(title: CharSequence?) {
+ if (title != null) {
+ titleView.text = title
+ titleView.visibility = VISIBLE
+ badgeView.visibility = VISIBLE
+ }
+ }
+
+ fun setBadgeDrawable(drawable: Drawable?) {
+ if (drawable != null) {
+ titleView.visibility = GONE
+ badgeView.visibility = VISIBLE
+ }
+ }
+
+ override fun getTitleViewAdapter(): TitleViewAdapter = titleViewAdapter
+}