android: Convert StartupHandler to Kotlin

merge-requests/60/head
Charles Lombardo 2023-03-11 00:38:25 +07:00 committed by bunnei
parent de1dff557d
commit b8eb8bd2b5
2 changed files with 45 additions and 45 deletions

@ -1,45 +0,0 @@
package org.yuzu.yuzu_emu.utils;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
import android.text.Html;
import android.text.method.LinkMovementMethod;
import android.widget.TextView;
import androidx.appcompat.app.AlertDialog;
import org.yuzu.yuzu_emu.R;
import org.yuzu.yuzu_emu.YuzuApplication;
import org.yuzu.yuzu_emu.ui.main.MainActivity;
import org.yuzu.yuzu_emu.ui.main.MainPresenter;
public final class StartupHandler {
private static SharedPreferences mPreferences = PreferenceManager.getDefaultSharedPreferences(YuzuApplication.getAppContext());
private static void handleStartupPromptDismiss(MainActivity parent) {
parent.launchFileListActivity(MainPresenter.REQUEST_INSTALL_KEYS);
}
private static void markFirstBoot() {
final SharedPreferences.Editor editor = mPreferences.edit();
editor.putBoolean("FirstApplicationLaunch", false);
editor.apply();
}
public static void handleInit(MainActivity parent) {
if (mPreferences.getBoolean("FirstApplicationLaunch", true)) {
markFirstBoot();
AlertDialog.Builder builder = new AlertDialog.Builder(parent);
builder.setMessage(Html.fromHtml(parent.getResources().getString(R.string.app_disclaimer)));
builder.setTitle(R.string.app_name);
builder.setIcon(R.mipmap.ic_launcher);
builder.setPositiveButton(android.R.string.ok, null);
builder.setOnDismissListener(dialogInterface -> handleStartupPromptDismiss(parent));
AlertDialog alert = builder.create();
alert.show();
((TextView) alert.findViewById(android.R.id.message)).setMovementMethod(LinkMovementMethod.getInstance());
}
}
}

@ -0,0 +1,45 @@
package org.yuzu.yuzu_emu.utils
import androidx.preference.PreferenceManager
import android.text.Html
import android.text.method.LinkMovementMethod
import android.view.View
import android.widget.TextView
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.YuzuApplication
import org.yuzu.yuzu_emu.features.settings.model.Settings
import org.yuzu.yuzu_emu.ui.main.MainActivity
import org.yuzu.yuzu_emu.ui.main.MainPresenter
object StartupHandler {
private val preferences =
PreferenceManager.getDefaultSharedPreferences(YuzuApplication.appContext)
private fun handleStartupPromptDismiss(parent: MainActivity) {
parent.launchFileListActivity(MainPresenter.REQUEST_INSTALL_KEYS)
}
private fun markFirstBoot() {
preferences.edit()
.putBoolean(Settings.PREF_FIRST_APP_LAUNCH, false)
.apply()
}
fun handleInit(parent: MainActivity) {
if (preferences.getBoolean(Settings.PREF_FIRST_APP_LAUNCH, true)) {
markFirstBoot()
val alert = MaterialAlertDialogBuilder(parent)
.setMessage(Html.fromHtml(parent.resources.getString(R.string.app_disclaimer)))
.setTitle(R.string.app_name)
.setIcon(R.mipmap.ic_launcher)
.setPositiveButton(android.R.string.ok, null)
.setOnDismissListener {
handleStartupPromptDismiss(parent)
}
.show()
(alert.findViewById<View>(android.R.id.message) as TextView?)!!.movementMethod =
LinkMovementMethod.getInstance()
}
}
}