chore: update project branding to Citron

Signed-off-by: Zephyron <zephyron@citron-emu.org>
This commit is contained in:
Zephyron
2025-05-06 16:08:59 +10:00
parent bfb82e577c
commit 5e16e20427
122 changed files with 448 additions and 448 deletions

View File

@@ -17,7 +17,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
<uses-permission android:name="android.permission.VIBRATE" />
<application
android:name="org.citron.citron_emu.YuzuApplication"
android:name="org.citron.citron_emu.CitronApplication"
android:label="@string/app_name_suffixed"
android:icon="@drawable/ic_launcher"
android:allowBackup="true"
@@ -36,7 +36,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
<activity
android:name="org.citron.citron_emu.ui.main.MainActivity"
android:exported="true"
android:theme="@style/Theme.Yuzu.Splash.Main">
android:theme="@style/Theme.Citron.Splash.Main">
<!-- This intentfilter marks this Activity as the one that gets launched from Home screen. -->
<intent-filter>
@@ -49,12 +49,12 @@ SPDX-License-Identifier: GPL-3.0-or-later
<activity
android:name="org.citron.citron_emu.features.settings.ui.SettingsActivity"
android:theme="@style/Theme.Yuzu.Main"
android:theme="@style/Theme.Citron.Main"
android:label="@string/preferences_settings"/>
<activity
android:name="org.citron.citron_emu.activities.EmulationActivity"
android:theme="@style/Theme.Yuzu.Main"
android:theme="@style/Theme.Citron.Main"
android:launchMode="singleTop"
android:supportsPictureInPicture="true"
android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout|uiMode"

View File

@@ -24,7 +24,7 @@ import org.citron.citron_emu.model.GameVerificationResult
/**
* Class which contains methods that interact
* with the native side of the Yuzu code.
* with the native side of the Citron code.
*/
object NativeLibrary {
@JvmField
@@ -42,7 +42,7 @@ object NativeLibrary {
@JvmStatic
fun openContentUri(path: String?, openmode: String?): Int {
return if (DocumentsTree.isNativePath(path!!)) {
YuzuApplication.documentsTree!!.openContentUri(path, openmode)
CitronApplication.documentsTree!!.openContentUri(path, openmode)
} else {
FileUtil.openContentUri(path, openmode)
}
@@ -52,7 +52,7 @@ object NativeLibrary {
@JvmStatic
fun getSize(path: String?): Long {
return if (DocumentsTree.isNativePath(path!!)) {
YuzuApplication.documentsTree!!.getFileSize(path)
CitronApplication.documentsTree!!.getFileSize(path)
} else {
FileUtil.getFileSize(path)
}
@@ -62,7 +62,7 @@ object NativeLibrary {
@JvmStatic
fun exists(path: String?): Boolean {
return if (DocumentsTree.isNativePath(path!!)) {
YuzuApplication.documentsTree!!.exists(path)
CitronApplication.documentsTree!!.exists(path)
} else {
FileUtil.exists(path, suppressLog = true)
}
@@ -72,7 +72,7 @@ object NativeLibrary {
@JvmStatic
fun isDirectory(path: String?): Boolean {
return if (DocumentsTree.isNativePath(path!!)) {
YuzuApplication.documentsTree!!.isDirectory(path)
CitronApplication.documentsTree!!.isDirectory(path)
} else {
FileUtil.isDirectory(path)
}
@@ -82,7 +82,7 @@ object NativeLibrary {
@JvmStatic
fun getParentDirectory(path: String): String =
if (DocumentsTree.isNativePath(path)) {
YuzuApplication.documentsTree!!.getParentDirectory(path)
CitronApplication.documentsTree!!.getParentDirectory(path)
} else {
path
}
@@ -91,7 +91,7 @@ object NativeLibrary {
@JvmStatic
fun getFilename(path: String): String =
if (DocumentsTree.isNativePath(path)) {
YuzuApplication.documentsTree!!.getFilename(path)
CitronApplication.documentsTree!!.getFilename(path)
} else {
FileUtil.getFilename(Uri.parse(path))
}
@@ -326,7 +326,7 @@ object NativeLibrary {
}
/**
* Logs the Yuzu version, Android version and, CPU.
* Logs the Citron version, Android version and, CPU.
*/
external fun logDeviceInfo()

View File

@@ -37,7 +37,7 @@ import androidx.navigation.fragment.NavHostFragment
import androidx.preference.PreferenceManager
import org.citron.citron_emu.NativeLibrary
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.databinding.ActivityEmulationBinding
import org.citron.citron_emu.features.input.NativeInput
import org.citron.citron_emu.features.settings.model.BooleanSetting
@@ -123,7 +123,7 @@ class EmulationActivity : AppCompatActivity(), SensorEventListener {
nfcReader = NfcReader(this)
nfcReader.initialize()
val preferences = PreferenceManager.getDefaultSharedPreferences(YuzuApplication.appContext)
val preferences = PreferenceManager.getDefaultSharedPreferences(CitronApplication.appContext)
if (!preferences.getBoolean(Settings.PREF_MEMORY_WARNING_SHOWN, false)) {
if (MemoryUtil.isLessThan(MemoryUtil.REQUIRED_MEMORY, MemoryUtil.totalMemory)) {
Toast.makeText(

View File

@@ -12,7 +12,7 @@ import androidx.navigation.findNavController
import org.citron.citron_emu.HomeNavigationDirections
import org.citron.citron_emu.NativeLibrary
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.databinding.CardSimpleOutlinedBinding
import org.citron.citron_emu.model.Applet
import org.citron.citron_emu.model.AppletInfo
@@ -64,7 +64,7 @@ class AppletAdapter(val activity: FragmentActivity, applets: List<Applet>) :
NativeLibrary.setCurrentAppletId(applet.appletInfo.appletId)
val appletGame = Game(
title = YuzuApplication.appContext.getString(applet.titleId),
title = CitronApplication.appContext.getString(applet.titleId),
path = appletPath
)
val action = HomeNavigationDirections.actionGlobalEmulationActivity(appletGame)

View File

@@ -11,7 +11,7 @@ import androidx.navigation.fragment.findNavController
import org.citron.citron_emu.HomeNavigationDirections
import org.citron.citron_emu.NativeLibrary
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.databinding.DialogListItemBinding
import org.citron.citron_emu.model.CabinetMode
import org.citron.citron_emu.adapters.CabinetLauncherDialogAdapter.CabinetModeViewHolder
@@ -49,7 +49,7 @@ class CabinetLauncherDialogAdapter(val fragment: Fragment) :
NativeLibrary.setCurrentAppletId(AppletInfo.Cabinet.appletId)
NativeLibrary.setCabinetMode(mode.id)
val appletGame = Game(
title = YuzuApplication.appContext.getString(R.string.cabinet_applet),
title = CitronApplication.appContext.getString(R.string.cabinet_applet),
path = appletPath
)
val action = HomeNavigationDirections.actionGlobalEmulationActivity(appletGame)

View File

@@ -21,7 +21,7 @@ import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import org.citron.citron_emu.HomeNavigationDirections
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.databinding.CardGameBinding
import org.citron.citron_emu.model.Game
import org.citron.citron_emu.model.GamesViewModel
@@ -51,12 +51,12 @@ class GameAdapter(private val activity: AppCompatActivity) :
fun onClick(game: Game) {
val gameExists = DocumentFile.fromSingleUri(
YuzuApplication.appContext,
CitronApplication.appContext,
Uri.parse(game.path)
)?.exists() == true
if (!gameExists) {
Toast.makeText(
YuzuApplication.appContext,
CitronApplication.appContext,
R.string.loader_error_file_not_found,
Toast.LENGTH_LONG
).show()
@@ -66,7 +66,7 @@ class GameAdapter(private val activity: AppCompatActivity) :
}
val preferences =
PreferenceManager.getDefaultSharedPreferences(YuzuApplication.appContext)
PreferenceManager.getDefaultSharedPreferences(CitronApplication.appContext)
preferences.edit()
.putLong(
game.keyLastPlayedTime,
@@ -77,12 +77,12 @@ class GameAdapter(private val activity: AppCompatActivity) :
activity.lifecycleScope.launch {
withContext(Dispatchers.IO) {
val shortcut =
ShortcutInfoCompat.Builder(YuzuApplication.appContext, game.path)
ShortcutInfoCompat.Builder(CitronApplication.appContext, game.path)
.setShortLabel(game.title)
.setIcon(GameIconUtils.getShortcutIcon(activity, game))
.setIntent(game.launchIntent)
.build()
ShortcutManagerCompat.pushDynamicShortcut(YuzuApplication.appContext, shortcut)
ShortcutManagerCompat.pushDynamicShortcut(CitronApplication.appContext, shortcut)
}
}

View File

@@ -16,7 +16,7 @@ import org.citron.citron_emu.utils.Log
fun Context.getPublicFilesDir(): File = getExternalFilesDir(null) ?: filesDir
class YuzuApplication : Application() {
class CitronApplication : Application() {
private fun createNotificationChannels() {
val noticeChannel = NotificationChannel(
getString(R.string.notice_notification_channel_id),
@@ -47,7 +47,7 @@ class YuzuApplication : Application() {
companion object {
var documentsTree: DocumentsTree? = null
lateinit var application: YuzuApplication
lateinit var application: CitronApplication
val appContext: Context
get() = application.applicationContext

View File

@@ -16,12 +16,12 @@ import android.webkit.MimeTypeMap
import java.io.*
import org.citron.citron_emu.BuildConfig
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.getPublicFilesDir
class DocumentProvider : DocumentsProvider() {
private val baseDirectory: File
get() = File(YuzuApplication.application.getPublicFilesDir().canonicalPath)
get() = File(CitronApplication.application.getPublicFilesDir().canonicalPath)
companion object {
private val DEFAULT_ROOT_PROJECTION: Array<String> = arrayOf(

View File

@@ -177,9 +177,9 @@ object NativeInput {
/**
* Registers a controller to be used with mapping
* @param device An [InputDevice] or the input overlay wrapped with [YuzuInputDevice]
* @param device An [InputDevice] or the input overlay wrapped with [CitronInputDevice]
*/
external fun registerController(device: YuzuInputDevice)
external fun registerController(device: CitronInputDevice)
/**
* Gets the names of input devices that have been registered with the input subsystem via [registerController]

View File

@@ -5,12 +5,12 @@ package org.citron.citron_emu.features.input
import android.view.InputDevice
import androidx.annotation.Keep
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.R
import org.citron.citron_emu.utils.InputHandler.getGUID
@Keep
interface YuzuInputDevice {
interface CitronInputDevice {
fun getName(): String
fun getGUID(): String
@@ -25,15 +25,15 @@ interface YuzuInputDevice {
fun hasKeys(keys: IntArray): BooleanArray = BooleanArray(0)
}
class YuzuPhysicalDevice(
class CitronPhysicalDevice(
private val device: InputDevice,
private val port: Int,
useSystemVibrator: Boolean
) : YuzuInputDevice {
) : CitronInputDevice {
private val vibrator = if (useSystemVibrator) {
YuzuVibrator.getSystemVibrator()
CitronVibrator.getSystemVibrator()
} else {
YuzuVibrator.getControllerVibrator(device)
CitronVibrator.getControllerVibrator(device)
}
override fun getName(): String {
@@ -60,14 +60,14 @@ class YuzuPhysicalDevice(
override fun hasKeys(keys: IntArray): BooleanArray = device.hasKeys(*keys)
}
class YuzuInputOverlayDevice(
class CitronInputOverlayDevice(
private val vibration: Boolean,
private val port: Int
) : YuzuInputDevice {
private val vibrator = YuzuVibrator.getSystemVibrator()
) : CitronInputDevice {
private val vibrator = CitronVibrator.getSystemVibrator()
override fun getName(): String {
return YuzuApplication.appContext.getString(R.string.input_overlay)
return CitronApplication.appContext.getString(R.string.input_overlay)
}
override fun getGUID(): String {

View File

@@ -12,32 +12,32 @@ import android.os.VibratorManager
import android.view.InputDevice
import androidx.annotation.Keep
import androidx.annotation.RequiresApi
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
@Keep
@Suppress("DEPRECATION")
interface YuzuVibrator {
interface CitronVibrator {
fun supportsVibration(): Boolean
fun vibrate(intensity: Float)
companion object {
fun getControllerVibrator(device: InputDevice): YuzuVibrator =
fun getControllerVibrator(device: InputDevice): CitronVibrator =
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
YuzuVibratorManager(device.vibratorManager)
CitronVibratorManager(device.vibratorManager)
} else {
YuzuVibratorManagerCompat(device.vibrator)
CitronVibratorManagerCompat(device.vibrator)
}
fun getSystemVibrator(): YuzuVibrator =
fun getSystemVibrator(): CitronVibrator =
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
val vibratorManager = YuzuApplication.appContext
val vibratorManager = CitronApplication.appContext
.getSystemService(Context.VIBRATOR_MANAGER_SERVICE) as VibratorManager
YuzuVibratorManager(vibratorManager)
CitronVibratorManager(vibratorManager)
} else {
val vibrator = YuzuApplication.appContext
val vibrator = CitronApplication.appContext
.getSystemService(Context.VIBRATOR_SERVICE) as Vibrator
YuzuVibratorManagerCompat(vibrator)
CitronVibratorManagerCompat(vibrator)
}
fun getVibrationEffect(intensity: Float): VibrationEffect? {
@@ -53,24 +53,24 @@ interface YuzuVibrator {
}
@RequiresApi(Build.VERSION_CODES.S)
class YuzuVibratorManager(private val vibratorManager: VibratorManager) : YuzuVibrator {
class CitronVibratorManager(private val vibratorManager: VibratorManager) : CitronVibrator {
override fun supportsVibration(): Boolean {
return vibratorManager.vibratorIds.isNotEmpty()
}
override fun vibrate(intensity: Float) {
val vibration = YuzuVibrator.getVibrationEffect(intensity) ?: return
val vibration = CitronVibrator.getVibrationEffect(intensity) ?: return
vibratorManager.vibrate(CombinedVibration.createParallel(vibration))
}
}
class YuzuVibratorManagerCompat(private val vibrator: Vibrator) : YuzuVibrator {
class CitronVibratorManagerCompat(private val vibrator: Vibrator) : CitronVibrator {
override fun supportsVibration(): Boolean {
return vibrator.hasVibrator()
}
override fun vibrate(intensity: Float) {
val vibration = YuzuVibrator.getVibrationEffect(intensity) ?: return
val vibration = CitronVibrator.getVibrationEffect(intensity) ?: return
vibrator.vibrate(vibration)
}
}

View File

@@ -4,7 +4,7 @@
package org.citron.citron_emu.features.settings.model
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
object Settings {
enum class MenuTag(val titleId: Int = 0) {
@@ -26,7 +26,7 @@ object Settings {
}
fun getPlayerString(player: Int): String =
YuzuApplication.appContext.getString(R.string.preferences_player, player)
CitronApplication.appContext.getString(R.string.preferences_player, player)
const val PREF_FIRST_APP_LAUNCH = "FirstApplicationLaunch"
const val PREF_MEMORY_WARNING_SHOWN = "MemoryWarningShown"

View File

@@ -5,7 +5,7 @@ package org.citron.citron_emu.features.settings.model.view
import androidx.annotation.StringRes
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.features.input.NativeInput
import org.citron.citron_emu.features.input.model.ButtonName
import org.citron.citron_emu.features.input.model.InputType
@@ -19,7 +19,7 @@ sealed class InputSetting(
abstract val inputType: InputType
abstract val playerIndex: Int
protected val context get() = YuzuApplication.appContext
protected val context get() = CitronApplication.appContext
abstract fun getSelectedValue(): String

View File

@@ -6,7 +6,7 @@ package org.citron.citron_emu.features.settings.model.view
import androidx.annotation.StringRes
import org.citron.citron_emu.NativeLibrary
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.features.input.NativeInput
import org.citron.citron_emu.features.input.model.NpadStyleIndex
import org.citron.citron_emu.features.settings.model.AbstractBooleanSetting
@@ -37,14 +37,14 @@ abstract class SettingsItem(
val title: String by lazy {
if (titleId != 0) {
return@lazy YuzuApplication.appContext.getString(titleId)
return@lazy CitronApplication.appContext.getString(titleId)
}
return@lazy titleString
}
val description: String by lazy {
if (descriptionId != 0) {
return@lazy YuzuApplication.appContext.getString(descriptionId)
return@lazy CitronApplication.appContext.getString(descriptionId)
}
return@lazy descriptionString
}

View File

@@ -6,7 +6,7 @@ package org.citron.citron_emu.features.settings.ui
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.adapters.AbstractListAdapter
import org.citron.citron_emu.databinding.ListItemInputProfileBinding
import org.citron.citron_emu.viewholder.AbstractViewHolder
@@ -57,7 +57,7 @@ sealed interface ProfileItem {
data class NewProfileItem(
val createNewProfile: () -> Unit
) : ProfileItem {
override val name: String = YuzuApplication.appContext.getString(R.string.create_new_profile)
override val name: String = CitronApplication.appContext.getString(R.string.create_new_profile)
}
data class ExistingProfileItem(

View File

@@ -8,7 +8,7 @@ import android.os.Build
import android.widget.Toast
import org.citron.citron_emu.NativeLibrary
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.features.input.NativeInput
import org.citron.citron_emu.features.input.model.AnalogDirection
import org.citron.citron_emu.features.input.model.NativeAnalog
@@ -35,7 +35,7 @@ class SettingsFragmentPresenter(
) {
private var settingsList = ArrayList<SettingsItem>()
private val context get() = YuzuApplication.appContext
private val context get() = CitronApplication.appContext
// Extension for altering settings list based on each setting's properties
fun ArrayList<SettingsItem>.add(key: String) {

View File

@@ -8,7 +8,7 @@ import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.flow.asStateFlow
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.features.settings.model.view.SettingsItem
import org.citron.citron_emu.model.Game
import org.citron.citron_emu.utils.InputHandler
@@ -73,7 +73,7 @@ class SettingsViewModel : ViewModel() {
fun setSliderTextValue(value: Float, units: String) {
_sliderProgress.value = value.toInt()
_sliderTextValue.value = String.format(
YuzuApplication.appContext.getString(R.string.value_with_units),
CitronApplication.appContext.getString(R.string.value_with_units),
value.toInt().toString(),
units
)

View File

@@ -11,7 +11,7 @@ import androidx.fragment.app.activityViewModels
import androidx.preference.PreferenceManager
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.model.AddonViewModel
import org.citron.citron_emu.ui.main.MainActivity
@@ -19,7 +19,7 @@ class ContentTypeSelectionDialogFragment : DialogFragment() {
private val addonViewModel: AddonViewModel by activityViewModels()
private val preferences get() =
PreferenceManager.getDefaultSharedPreferences(YuzuApplication.appContext)
PreferenceManager.getDefaultSharedPreferences(CitronApplication.appContext)
private var selectedItem = 0

View File

@@ -26,7 +26,7 @@ import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import org.citron.citron_emu.HomeNavigationDirections
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.adapters.GamePropertiesAdapter
import org.citron.citron_emu.databinding.FragmentGamePropertiesBinding
import org.citron.citron_emu.features.settings.model.Settings
@@ -224,7 +224,7 @@ class GamePropertiesFragment : Fragment() {
negativeAction = {
File(args.game.saveDir).deleteRecursively()
Toast.makeText(
YuzuApplication.appContext,
CitronApplication.appContext,
R.string.save_data_deleted_successfully,
Toast.LENGTH_SHORT
).show()
@@ -263,7 +263,7 @@ class GamePropertiesFragment : Fragment() {
positiveAction = {
shaderCacheDir.deleteRecursively()
Toast.makeText(
YuzuApplication.appContext,
CitronApplication.appContext,
R.string.cleared_shaders_successfully,
Toast.LENGTH_SHORT
).show()
@@ -374,7 +374,7 @@ class GamePropertiesFragment : Fragment() {
return@withContext
}
Toast.makeText(
YuzuApplication.appContext,
CitronApplication.appContext,
getString(R.string.save_file_imported_success),
Toast.LENGTH_LONG
).show()
@@ -384,7 +384,7 @@ class GamePropertiesFragment : Fragment() {
cacheSaveDir.deleteRecursively()
} catch (e: Exception) {
Toast.makeText(
YuzuApplication.appContext,
CitronApplication.appContext,
getString(R.string.fatal_error),
Toast.LENGTH_LONG
).show()

View File

@@ -31,7 +31,7 @@ import org.citron.citron_emu.BuildConfig
import org.citron.citron_emu.HomeNavigationDirections
import org.citron.citron_emu.NativeLibrary
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.adapters.HomeSettingAdapter
import org.citron.citron_emu.databinding.FragmentHomeSettingsBinding
import org.citron.citron_emu.features.DocumentProvider
@@ -180,7 +180,7 @@ class HomeSettingsFragment : Fragment() {
)
} else {
val failedNames = result.joinToString("\n")
val errorMessage = YuzuApplication.appContext.getString(
val errorMessage = CitronApplication.appContext.getString(
R.string.verification_failed_for,
failedNames
)

View File

@@ -22,7 +22,7 @@ import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import org.citron.citron_emu.NativeLibrary
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.adapters.InstallableAdapter
import org.citron.citron_emu.databinding.FragmentInstallablesBinding
import org.citron.citron_emu.model.HomeViewModel
@@ -109,7 +109,7 @@ class InstallableFragment : Fragment() {
)
if (!oldSaveDataFolder.exists() && !futureSaveDataFolder.exists()) {
Toast.makeText(
YuzuApplication.appContext,
CitronApplication.appContext,
R.string.no_save_data_found,
Toast.LENGTH_SHORT
).show()
@@ -262,7 +262,7 @@ class InstallableFragment : Fragment() {
cacheSaveDir.deleteRecursively()
} catch (e: Exception) {
Toast.makeText(
YuzuApplication.appContext,
CitronApplication.appContext,
getString(R.string.fatal_error),
Toast.LENGTH_LONG
).show()

View File

@@ -22,7 +22,7 @@ import info.debatty.java.stringsimilarity.Jaccard
import info.debatty.java.stringsimilarity.JaroWinkler
import java.util.Locale
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.adapters.GameAdapter
import org.citron.citron_emu.databinding.FragmentSearchBinding
import org.citron.citron_emu.layout.AutofitGridLayoutManager
@@ -58,7 +58,7 @@ class SearchFragment : Fragment() {
super.onViewCreated(view, savedInstanceState)
homeViewModel.setNavigationVisibility(visible = true, animated = true)
homeViewModel.setStatusBarShadeVisibility(true)
preferences = PreferenceManager.getDefaultSharedPreferences(YuzuApplication.appContext)
preferences = PreferenceManager.getDefaultSharedPreferences(CitronApplication.appContext)
if (savedInstanceState != null) {
binding.searchText.setText(savedInstanceState.getString(SEARCH_TEXT))

View File

@@ -30,7 +30,7 @@ import kotlinx.coroutines.launch
import org.citron.citron_emu.NativeLibrary
import java.io.File
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.adapters.SetupAdapter
import org.citron.citron_emu.databinding.FragmentSetupBinding
import org.citron.citron_emu.features.settings.model.Settings
@@ -343,7 +343,7 @@ class SetupFragment : Fragment() {
}
private fun finishSetup() {
PreferenceManager.getDefaultSharedPreferences(YuzuApplication.appContext).edit()
PreferenceManager.getDefaultSharedPreferences(CitronApplication.appContext).edit()
.putBoolean(Settings.PREF_FIRST_APP_LAUNCH, false)
.apply()
mainActivity.finishSetup(binding.root.findNavController())

View File

@@ -15,7 +15,7 @@ import kotlinx.coroutines.flow.stateIn
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.features.settings.model.StringSetting
import org.citron.citron_emu.features.settings.utils.SettingsFile
import org.citron.citron_emu.model.Driver.Companion.toDriver
@@ -70,7 +70,7 @@ class DriverViewModel : ViewModel() {
val newDriverList = mutableListOf(
Driver(
selectedDriver == GpuDriverMetadata(),
YuzuApplication.appContext.getString(R.string.system_gpu_driver),
CitronApplication.appContext.getString(R.string.system_gpu_driver),
systemDriverData?.get(0) ?: "",
systemDriverData?.get(1) ?: ""
)
@@ -186,7 +186,7 @@ class DriverViewModel : ViewModel() {
private fun updateName() {
_selectedDriverTitle.value = GpuDriverHelper.customDriverSettingData.name
?: YuzuApplication.appContext.getString(R.string.system_gpu_driver)
?: CitronApplication.appContext.getString(R.string.system_gpu_driver)
}
private fun setDriverReady() {

View File

@@ -11,7 +11,7 @@ import kotlinx.parcelize.Parcelize
import kotlinx.serialization.Serializable
import org.citron.citron_emu.NativeLibrary
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.activities.EmulationActivity
import org.citron.citron_emu.utils.DirectoryInitialization
import org.citron.citron_emu.utils.FileUtil
@@ -52,7 +52,7 @@ class Game(
}
val saveZipName: String
get() = "$title ${YuzuApplication.appContext.getString(R.string.save_data).lowercase()} - ${
get() = "$title ${CitronApplication.appContext.getString(R.string.save_data).lowercase()} - ${
LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm"))
}.zip"
@@ -64,7 +64,7 @@ class Game(
get() = DirectoryInitialization.userDirectory + "/load/" + programIdHex + "/"
val launchIntent: Intent
get() = Intent(YuzuApplication.appContext, EmulationActivity::class.java).apply {
get() = Intent(CitronApplication.appContext, EmulationActivity::class.java).apply {
action = Intent.ACTION_VIEW
data = Uri.parse(path)
}

View File

@@ -18,7 +18,7 @@ import kotlinx.coroutines.withContext
import kotlinx.serialization.decodeFromString
import kotlinx.serialization.json.Json
import org.citron.citron_emu.NativeLibrary
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.utils.GameHelper
import org.citron.citron_emu.utils.NativeConfig
import java.util.concurrent.atomic.AtomicBoolean
@@ -94,7 +94,7 @@ class GamesViewModel : ViewModel() {
if (firstStartup) {
// Retrieve list of cached games
val storedGames =
PreferenceManager.getDefaultSharedPreferences(YuzuApplication.appContext)
PreferenceManager.getDefaultSharedPreferences(CitronApplication.appContext)
.getStringSet(GameHelper.KEY_GAMES, emptySet())
if (storedGames!!.isNotEmpty()) {
val deserializedGames = mutableSetOf<Game>()
@@ -109,7 +109,7 @@ class GamesViewModel : ViewModel() {
val gameExists =
DocumentFile.fromSingleUri(
YuzuApplication.appContext,
CitronApplication.appContext,
Uri.parse(game.path)
)?.exists()
if (gameExists == true) {

View File

@@ -5,7 +5,7 @@ package org.citron.citron_emu.overlay.model
import androidx.annotation.IntegerRes
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
enum class OverlayControl(
val id: String,
@@ -136,7 +136,7 @@ enum class OverlayControl(
fun getDefaultPositionForLayout(layout: OverlayLayout): Pair<Double, Double> {
val rawResourcePair: Pair<Int, Int>
YuzuApplication.appContext.resources.apply {
CitronApplication.appContext.resources.apply {
rawResourcePair = when (layout) {
OverlayLayout.Landscape -> {
Pair(

View File

@@ -642,18 +642,18 @@ class MainActivity : AppCompatActivity(), ThemeProvider {
) { progressCallback, _ ->
val checkStream =
ZipInputStream(BufferedInputStream(contentResolver.openInputStream(result)))
var isYuzuBackup = false
var isCitronBackup = false
checkStream.use { stream ->
var ze: ZipEntry? = null
while (stream.nextEntry?.also { ze = it } != null) {
val itemName = ze!!.name.trim()
if (itemName == "/config/config.ini" || itemName == "config/config.ini") {
isYuzuBackup = true
isCitronBackup = true
return@use
}
}
}
if (!isYuzuBackup) {
if (!isCitronBackup) {
return@newInstance MessageDialogFragment.newInstance(
this,
titleId = R.string.invalid_citron_backup,

View File

@@ -6,7 +6,7 @@ package org.citron.citron_emu.utils
import androidx.preference.PreferenceManager
import java.io.IOException
import org.citron.citron_emu.NativeLibrary
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.features.settings.model.BooleanSetting
import org.citron.citron_emu.features.settings.model.IntSetting
import org.citron.citron_emu.features.settings.model.Settings
@@ -38,7 +38,7 @@ object DirectoryInitialization {
private fun initializeInternalStorage() {
try {
userPath = YuzuApplication.appContext.getExternalFilesDir(null)!!.canonicalPath
userPath = CitronApplication.appContext.getExternalFilesDir(null)!!.canonicalPath
NativeLibrary.setAppDirectory(userPath!!)
} catch (e: IOException) {
e.printStackTrace()
@@ -46,7 +46,7 @@ object DirectoryInitialization {
}
private fun migrateSettings() {
val preferences = PreferenceManager.getDefaultSharedPreferences(YuzuApplication.appContext)
val preferences = PreferenceManager.getDefaultSharedPreferences(CitronApplication.appContext)
var saveConfig = false
val theme = preferences.migratePreference<Int>(Settings.PREF_THEME)
if (theme != null) {

View File

@@ -14,7 +14,7 @@ import java.io.InputStream
import java.net.URLDecoder
import java.util.zip.ZipEntry
import java.util.zip.ZipInputStream
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.model.MinimalDocumentFile
import org.citron.citron_emu.model.TaskState
import java.io.BufferedOutputStream
@@ -31,7 +31,7 @@ object FileUtil {
const val APPLICATION_OCTET_STREAM = "application/octet-stream"
const val TEXT_PLAIN = "text/plain"
private val context get() = YuzuApplication.appContext
private val context get() = CitronApplication.appContext
/**
* Create a file from directory with filename.
@@ -195,7 +195,7 @@ object FileUtil {
* @return String display name
*/
fun getFilename(uri: Uri): String {
val resolver = YuzuApplication.appContext.contentResolver
val resolver = CitronApplication.appContext.contentResolver
val columns = arrayOf(
DocumentsContract.Document.COLUMN_DISPLAY_NAME
)
@@ -408,10 +408,10 @@ object FileUtil {
val newFile = File(file, it.name!!)
if (it.isDirectory) {
newFile.mkdirs()
DocumentFile.fromTreeUri(YuzuApplication.appContext, it.uri)?.copyFilesTo(newFile)
DocumentFile.fromTreeUri(CitronApplication.appContext, it.uri)?.copyFilesTo(newFile)
} else {
val inputStream =
YuzuApplication.appContext.contentResolver.openInputStream(it.uri)
CitronApplication.appContext.contentResolver.openInputStream(it.uri)
BufferedInputStream(inputStream).use { bos ->
if (!newFile.exists()) {
newFile.createNewFile()
@@ -487,17 +487,17 @@ object FileUtil {
String(stream.readBytes(), StandardCharsets.UTF_8)
fun DocumentFile.inputStream(): InputStream =
YuzuApplication.appContext.contentResolver.openInputStream(uri)!!
CitronApplication.appContext.contentResolver.openInputStream(uri)!!
fun DocumentFile.outputStream(): OutputStream =
YuzuApplication.appContext.contentResolver.openOutputStream(uri)!!
CitronApplication.appContext.contentResolver.openOutputStream(uri)!!
fun Uri.inputStream(): InputStream =
YuzuApplication.appContext.contentResolver.openInputStream(this)!!
CitronApplication.appContext.contentResolver.openInputStream(this)!!
fun Uri.outputStream(): OutputStream =
YuzuApplication.appContext.contentResolver.openOutputStream(this)!!
CitronApplication.appContext.contentResolver.openOutputStream(this)!!
fun Uri.asDocumentFile(): DocumentFile? =
DocumentFile.fromSingleUri(YuzuApplication.appContext, this)
DocumentFile.fromSingleUri(CitronApplication.appContext, this)
}

View File

@@ -9,7 +9,7 @@ import androidx.preference.PreferenceManager
import kotlinx.serialization.encodeToString
import kotlinx.serialization.json.Json
import org.citron.citron_emu.NativeLibrary
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.model.Game
import org.citron.citron_emu.model.GameDir
import org.citron.citron_emu.model.MinimalDocumentFile
@@ -22,7 +22,7 @@ object GameHelper {
fun getGames(): List<Game> {
val games = mutableListOf<Game>()
val context = YuzuApplication.appContext
val context = CitronApplication.appContext
preferences = PreferenceManager.getDefaultSharedPreferences(context)
val gameDirs = mutableListOf<GameDir>()

View File

@@ -22,7 +22,7 @@ import coil.memory.MemoryCache
import coil.request.ImageRequest
import coil.request.Options
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.model.Game
class GameIconFetcher(
@@ -58,20 +58,20 @@ class GameIconKeyer : Keyer<Game> {
}
object GameIconUtils {
private val imageLoader = ImageLoader.Builder(YuzuApplication.appContext)
private val imageLoader = ImageLoader.Builder(CitronApplication.appContext)
.components {
add(GameIconKeyer())
add(GameIconFetcher.Factory())
}
.memoryCache {
MemoryCache.Builder(YuzuApplication.appContext)
MemoryCache.Builder(CitronApplication.appContext)
.maxSizePercent(0.25)
.build()
}
.build()
fun loadGameIcon(game: Game, imageView: ImageView) {
val request = ImageRequest.Builder(YuzuApplication.appContext)
val request = ImageRequest.Builder(CitronApplication.appContext)
.data(game)
.target(imageView)
.error(R.drawable.default_icon)
@@ -80,7 +80,7 @@ object GameIconUtils {
}
suspend fun getGameIcon(lifecycleOwner: LifecycleOwner, game: Game): Bitmap {
val request = ImageRequest.Builder(YuzuApplication.appContext)
val request = ImageRequest.Builder(CitronApplication.appContext)
.data(game)
.lifecycle(lifecycleOwner)
.error(R.drawable.default_icon)
@@ -91,15 +91,15 @@ object GameIconUtils {
suspend fun getShortcutIcon(lifecycleOwner: LifecycleOwner, game: Game): IconCompat {
val layerDrawable = ResourcesCompat.getDrawable(
YuzuApplication.appContext.resources,
CitronApplication.appContext.resources,
R.drawable.shortcut,
null
) as LayerDrawable
layerDrawable.setDrawableByLayerId(
R.id.shortcut_foreground,
getGameIcon(lifecycleOwner, game).toDrawable(YuzuApplication.appContext.resources)
getGameIcon(lifecycleOwner, game).toDrawable(CitronApplication.appContext.resources)
)
val inset = YuzuApplication.appContext.resources
val inset = CitronApplication.appContext.resources
.getDimensionPixelSize(R.dimen.icon_inset)
layerDrawable.setLayerInset(1, inset, inset, inset, inset)
return IconCompat.createWithAdaptiveBitmap(

View File

@@ -10,7 +10,7 @@ import android.view.Surface
import java.io.File
import java.io.IOException
import org.citron.citron_emu.NativeLibrary
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import org.citron.citron_emu.features.settings.model.StringSetting
import java.io.FileNotFoundException
import java.util.zip.ZipException
@@ -27,11 +27,11 @@ object GpuDriverHelper {
fun initializeDriverParameters() {
try {
// Initialize the file redirection directory.
fileRedirectionPath = YuzuApplication.appContext
fileRedirectionPath = CitronApplication.appContext
.getExternalFilesDir(null)!!.canonicalPath + "/gpu/vk_file_redirect/"
// Initialize the driver installation directory.
driverInstallationPath = YuzuApplication.appContext
driverInstallationPath = CitronApplication.appContext
.filesDir.canonicalPath + "/gpu_driver/"
} catch (e: IOException) {
throw RuntimeException(e)
@@ -41,7 +41,7 @@ object GpuDriverHelper {
initializeDirectories()
// Initialize hook libraries directory.
hookLibPath = YuzuApplication.appContext.applicationInfo.nativeLibraryDir + "/"
hookLibPath = CitronApplication.appContext.applicationInfo.nativeLibraryDir + "/"
// Initialize GPU driver.
NativeLibrary.initializeGpuDriver(

View File

@@ -7,11 +7,11 @@ import android.view.InputDevice
import android.view.KeyEvent
import android.view.MotionEvent
import org.citron.citron_emu.features.input.NativeInput
import org.citron.citron_emu.features.input.YuzuInputOverlayDevice
import org.citron.citron_emu.features.input.YuzuPhysicalDevice
import org.citron.citron_emu.features.input.CitronInputOverlayDevice
import org.citron.citron_emu.features.input.CitronPhysicalDevice
object InputHandler {
var androidControllers = mapOf<Int, YuzuPhysicalDevice>()
var androidControllers = mapOf<Int, CitronPhysicalDevice>()
var registeredControllers = mutableListOf<ParamPackage>()
fun dispatchKeyEvent(event: KeyEvent): Boolean {
@@ -50,8 +50,8 @@ object InputHandler {
return true
}
fun getDevices(): Map<Int, YuzuPhysicalDevice> {
val gameControllerDeviceIds = mutableMapOf<Int, YuzuPhysicalDevice>()
fun getDevices(): Map<Int, CitronPhysicalDevice> {
val gameControllerDeviceIds = mutableMapOf<Int, CitronPhysicalDevice>()
val deviceIds = InputDevice.getDeviceIds()
var port = 0
val inputSettings = NativeConfig.getInputSettings(true)
@@ -62,7 +62,7 @@ object InputHandler {
sources and InputDevice.SOURCE_JOYSTICK == InputDevice.SOURCE_JOYSTICK
) {
if (!gameControllerDeviceIds.contains(controllerNumber)) {
gameControllerDeviceIds[controllerNumber] = YuzuPhysicalDevice(
gameControllerDeviceIds[controllerNumber] = CitronPhysicalDevice(
this,
port,
inputSettings[port].useSystemVibrator
@@ -82,7 +82,7 @@ object InputHandler {
}
// Register the input overlay on a dedicated port for all player 1 vibrations
NativeInput.registerController(YuzuInputOverlayDevice(androidControllers.isEmpty(), 100))
NativeInput.registerController(CitronInputOverlayDevice(androidControllers.isEmpty(), 100))
registeredControllers.clear()
NativeInput.getInputDevices().forEach {
registeredControllers.add(ParamPackage(it))

View File

@@ -7,12 +7,12 @@ import android.app.ActivityManager
import android.content.Context
import android.os.Build
import org.citron.citron_emu.R
import org.citron.citron_emu.YuzuApplication
import org.citron.citron_emu.CitronApplication
import java.util.Locale
import kotlin.math.ceil
object MemoryUtil {
private val context get() = YuzuApplication.appContext
private val context get() = CitronApplication.appContext
private val Float.hundredths: String
get() = String.format(Locale.ROOT, "%.2f", this)

View File

@@ -23,12 +23,12 @@ object ThemeHelper {
fun setTheme(activity: AppCompatActivity) {
setThemeMode(activity)
when (Theme.from(IntSetting.THEME.getInt())) {
Theme.Default -> activity.setTheme(R.style.Theme_Yuzu_Main)
Theme.Default -> activity.setTheme(R.style.Theme_Citron_Main)
Theme.MaterialYou -> {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
activity.setTheme(R.style.Theme_Yuzu_Main_MaterialYou)
activity.setTheme(R.style.Theme_Citron_Main_MaterialYou)
} else {
activity.setTheme(R.style.Theme_Yuzu_Main)
activity.setTheme(R.style.Theme_Citron_Main)
}
}
}
@@ -37,7 +37,7 @@ object ThemeHelper {
// light app mode, dark system mode, and black backgrounds. Launching the settings activity
// will then show light mode colors/navigation bars but with black backgrounds.
if (BooleanSetting.BLACK_BACKGROUNDS.getBoolean() && isNightMode(activity)) {
activity.setTheme(R.style.ThemeOverlay_Yuzu_Dark)
activity.setTheme(R.style.ThemeOverlay_Citron_Dark)
}
}

View File

@@ -659,7 +659,7 @@ void Java_org_citron_citron_1emu_NativeLibrary_submitInlineKeyboardInput(JNIEnv*
void Java_org_citron_citron_1emu_NativeLibrary_initializeEmptyUserDirectory(JNIEnv* env,
jobject instance) {
const auto nand_dir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir);
const auto nand_dir = Common::FS::GetCitronPath(Common::FS::CitronPath::NANDDir);
auto vfs_nand_dir = EmulationSession::GetInstance().System().GetFilesystem()->OpenDirectory(
Common::FS::PathToUTF8String(nand_dir), FileSys::OpenMode::Read);
@@ -831,7 +831,7 @@ jstring Java_org_citron_citron_1emu_NativeLibrary_getSavePath(JNIEnv* env, jobje
const auto user_id = manager.GetUser(static_cast<std::size_t>(0));
ASSERT(user_id);
const auto nandDir = Common::FS::GetYuzuPath(Common::FS::YuzuPath::NANDDir);
const auto nandDir = Common::FS::GetCitronPath(Common::FS::CitronPath::NANDDir);
auto vfsNandDir = system.GetFilesystem()->OpenDirectory(Common::FS::PathToUTF8String(nandDir),
FileSys::OpenMode::Read);

View File

@@ -44,7 +44,7 @@ bool IsProfileNameValid(std::string_view profile_name) {
}
bool ProfileExistsInFilesystem(std::string_view profile_name) {
return Common::FS::Exists(Common::FS::GetYuzuPath(Common::FS::YuzuPath::ConfigDir) / "input" /
return Common::FS::Exists(Common::FS::GetCitronPath(Common::FS::CitronPath::ConfigDir) / "input" /
fmt::format("{}.ini", profile_name));
}
@@ -304,7 +304,7 @@ void Java_org_citron_citron_1emu_features_input_NativeInput_loadInputProfiles(JN
jobject j_obj) {
map_profiles.clear();
const auto input_profile_loc =
Common::FS::GetYuzuPath(Common::FS::YuzuPath::ConfigDir) / "input";
Common::FS::GetCitronPath(Common::FS::CitronPath::ConfigDir) / "input";
if (Common::FS::IsDir(input_profile_loc)) {
Common::FS::IterateDirEntries(

View File

@@ -117,7 +117,7 @@
<string name="install_game_content_help_link">https://citron-emu.org/help/quickstart/#dumping-installed-updates</string>
<string name="custom_driver_not_supported">Driver kustom tidak didukung</string>
<string name="custom_driver_not_supported_description">Driver kustom saat ini tidak dapat digunakan pada perangkat ini. \nCek opsi ini lain waktu untuk mengetahui apakah dapat digunakan!</string>
<string name="manage_citron_data">Kelola data Yuzu.</string>
<string name="manage_citron_data">Kelola data Citron.</string>
<string name="manage_citron_data_description">Impor/expor firmware, key, data pengguna, dan sebagainya!</string>
<string name="share_save_file">Bagikan file simpanan.</string>
<string name="export_save_failed">Gagal mengekspor simpanan.</string>

View File

@@ -117,7 +117,7 @@
<string name="install_game_content_help_link">https://citron-emu.org/help/quickstart/#dumping-installed-updates</string>
<string name="custom_driver_not_supported">I driver personalizzati non sono supportati.</string>
<string name="custom_driver_not_supported_description">I driver personalizzati non sono attualmente supportati su questo dispositivo.\n Ricontrolla in futuro.</string>
<string name="manage_citron_data">Gestisci i dati di Yuzu</string>
<string name="manage_citron_data">Gestisci i dati di Citron</string>
<string name="manage_citron_data_description">Importa/Esporta il firmware, le keys, i dati utente, e altro!</string>
<string name="share_save_file">Condividi i tuoi dati di salvataggio</string>
<string name="export_save_failed">Errore durante l\'esportazione del salvataggio</string>
@@ -163,7 +163,7 @@
<string name="exporting_user_data">Esportazione dei Dati Utente...</string>
<string name="importing_user_data">Importazione dei Dati Utente...</string>
<string name="import_user_data">Importa i Dati Utente</string>
<string name="invalid_citron_backup">Backup di Yuzu Invalido</string>
<string name="invalid_citron_backup">Backup di Citron Invalido</string>
<string name="user_data_export_success">Dati Utente esportati con successo</string>
<string name="user_data_import_success">Dati Utente importati con successo.</string>
<string name="user_data_export_cancelled">Esportazione annullata</string>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.Yuzu.Main.MaterialYou" parent="Theme.Yuzu.Main">
<style name="Theme.Citron.Main.MaterialYou" parent="Theme.Citron.Main">
<item name="colorPrimary">@color/m3_sys_color_dynamic_dark_primary</item>
<item name="colorOnPrimary">@color/m3_sys_color_dynamic_dark_on_primary</item>
<item name="colorPrimaryContainer">@color/m3_sys_color_dynamic_dark_primary_container</item>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="ThemeOverlay.Yuzu.Dark" parent="">
<style name="ThemeOverlay.Citron.Dark" parent="">
<item name="colorSurface">@android:color/black</item>
<item name="android:colorBackground">@android:color/black</item>
</style>

View File

@@ -32,7 +32,7 @@
<string name="search_and_filter_games">Procura e filtra jogos</string>
<string name="select_games_folder">Seleciona a pasta de jogos</string>
<string name="manage_game_folders">Gerenciar pastas de jogos</string>
<string name="select_games_folder_description">Permite que o Yuzu preencha a lista de jogos</string>
<string name="select_games_folder_description">Permite que o Citron preencha a lista de jogos</string>
<string name="add_games_warning">Ignorar a seleção da pasta de jogos?</string>
<string name="add_games_warning_description">Os jogos não serão exibidos na lista de jogos se uma pasta não estiver selecionada.</string>
<string name="add_games_warning_help">https://citron-emu.org/help/quickstart/#dumping-games</string>
@@ -48,7 +48,7 @@
<string name="notifications_description">Conceda a permissão de notificação com o botão abaixo.</string>
<string name="give_permission">Conceder permissão</string>
<string name="notification_warning">Ignorar a concessão da permissão de notificação?</string>
<string name="notification_warning_description">O Yuzu não irá te notificar de informações importantes. </string>
<string name="notification_warning_description">O Citron não irá te notificar de informações importantes. </string>
<string name="permission_denied">Permissão negada</string>
<string name="permission_denied_description">Você negou essa permissão muitas vezes e agora precisa concedê-la manualmente nas configurações do sistema.</string>
<string name="about">Sobre</string>
@@ -76,11 +76,11 @@
<string name="search_recently_added">Adicionado recentemente</string>
<string name="search_retail">Jogos comerciais</string>
<string name="search_homebrew">Homebrew</string>
<string name="open_user_folder">Abrir a pasta do Yuzu</string>
<string name="open_user_folder_description">Gerencie os arquivos internos do Yuzu</string>
<string name="open_user_folder">Abrir a pasta do Citron</string>
<string name="open_user_folder_description">Gerencie os arquivos internos do Citron</string>
<string name="theme_and_color_description">Altere a aparência do aplicativo</string>
<string name="no_file_manager">Nenhum gerenciador de arquivos encontrado</string>
<string name="notification_no_directory_link">Não foi possível abrir a pasta do Yuzu</string>
<string name="notification_no_directory_link">Não foi possível abrir a pasta do Citron</string>
<string name="notification_no_directory_link_description">Por favor localize manualmente a pasta do usuário, com o painel lateral do gerenciador de arquivos.</string>
<string name="manage_save_data">Gerenciar os dados salvos dos jogos</string>
<string name="manage_save_data_description">Dados salvos encontrados. Por favor selecione uma opção abaixo.</string>
@@ -166,7 +166,7 @@
<string name="copied_to_clipboard">Copiado para a área de transferência</string>
<string name="about_app_description">Um emulador de Switch de código aberto</string>
<string name="contributors">Colaboradores</string>
<string name="contributors_description">Feito com \u2764 da equipe do Yuzu</string>
<string name="contributors_description">Feito com \u2764 da equipe do Citron</string>
<string name="contributors_link">https://github.com/citron-emu/citron/graphs/contributors</string>
<string name="licenses_description">Projetos que tornam o citron para Android possível</string>
<string name="build">Versão da Compilação</string>

View File

@@ -32,7 +32,7 @@
<string name="search_and_filter_games">Procura e filtra jogos.</string>
<string name="select_games_folder">Seleciona a pasta de jogos.</string>
<string name="manage_game_folders">Gerencie as pastas de jogos</string>
<string name="select_games_folder_description">Permite que o Yuzu preencha a lista de jogos</string>
<string name="select_games_folder_description">Permite que o Citron preencha a lista de jogos</string>
<string name="add_games_warning">Ignorar a seleção da pasta de jogos?</string>
<string name="add_games_warning_description">Os jogos não serão exibidos na lista de jogos se uma pasta não estiver selecionada.</string>
<string name="add_games_warning_help">https://citron-emu.org/help/quickstart/#dumping-games</string>
@@ -48,7 +48,7 @@
<string name="notifications_description">Conceda a permissão de notificação com o botão abaixo.</string>
<string name="give_permission">Conceda permissão</string>
<string name="notification_warning">Saltar a concessão da permissão de notificação?</string>
<string name="notification_warning_description">Yuzu não conseguirá te notificar de informações importantes. </string>
<string name="notification_warning_description">Citron não conseguirá te notificar de informações importantes. </string>
<string name="permission_denied">Permissão negada</string>
<string name="permission_denied_description">Você negou essa permissão muitas vezes e agora precisa concedê-la manualmente nas configurações do sistema.</string>
<string name="about">Sobre</string>
@@ -76,11 +76,11 @@
<string name="search_recently_added">Adicionado recentemente</string>
<string name="search_retail">Jogos comerciais</string>
<string name="search_homebrew">Homebrew</string>
<string name="open_user_folder">Abre a pasta Yuzu</string>
<string name="open_user_folder_description">Gere os ficheiro internos do Yuzu</string>
<string name="open_user_folder">Abre a pasta Citron</string>
<string name="open_user_folder_description">Gere os ficheiro internos do Citron</string>
<string name="theme_and_color_description">Modifica a aparência da App</string>
<string name="no_file_manager">Nenhum gestor de ficheiros encontrado</string>
<string name="notification_no_directory_link">Impossível abrir pasta Yuzu</string>
<string name="notification_no_directory_link">Impossível abrir pasta Citron</string>
<string name="notification_no_directory_link_description">Localiza a pasta de utilizador manualmente com o painel lateral do gestor de ficheiros.</string>
<string name="manage_save_data">Gerir dados guardados</string>
<string name="manage_save_data_description">Dados não encontrados. Por favor seleciona uma opção abaixo.</string>
@@ -166,7 +166,7 @@
<string name="copied_to_clipboard">Copiado para a área de transferência</string>
<string name="about_app_description">Um emulador Switch de código aberto</string>
<string name="contributors">Contribuidores</string>
<string name="contributors_description">Feito com \u2764 da equipa do Yuzu</string>
<string name="contributors_description">Feito com \u2764 da equipa do Citron</string>
<string name="contributors_link">https://github.com/citron-emu/citron/graphs/contributors</string>
<string name="licenses_description">Projetos que tornam o citron para Android possível</string>
<string name="build">Versão</string>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.Yuzu.Main.MaterialYou" parent="Theme.Yuzu.Main">
<style name="Theme.Citron.Main.MaterialYou" parent="Theme.Citron.Main">
<item name="colorPrimary">@color/m3_sys_color_dynamic_light_primary</item>
<item name="colorOnPrimary">@color/m3_sys_color_dynamic_light_on_primary</item>
<item name="colorPrimaryContainer">@color/m3_sys_color_dynamic_light_primary_container</item>

View File

@@ -13,22 +13,22 @@
<item name="android:paddingRight">32dp</item>
</style>
<style name="YuzuSlider" parent="Widget.Material3.Slider">
<style name="CitronSlider" parent="Widget.Material3.Slider">
<item name="tickVisible">false</item>
<item name="labelBehavior">gone</item>
</style>
<style name="YuzuMaterialDialog" parent="ThemeOverlay.Material3.MaterialAlertDialog">
<style name="CitronMaterialDialog" parent="ThemeOverlay.Material3.MaterialAlertDialog">
<item name="colorPrimary">@color/citron_primaryContainer</item>
<item name="colorSurface">@color/citron_primaryContainer</item>
<item name="colorSecondary">@color/citron_primary</item>
<item name="android:textColorLink">@color/citron_primary</item>
<item name="buttonBarPositiveButtonStyle">@style/YuzuButton</item>
<item name="buttonBarNegativeButtonStyle">@style/YuzuButton</item>
<item name="buttonBarNeutralButtonStyle">@style/YuzuButton</item>
<item name="buttonBarPositiveButtonStyle">@style/CitronButton</item>
<item name="buttonBarNegativeButtonStyle">@style/CitronButton</item>
<item name="buttonBarNeutralButtonStyle">@style/CitronButton</item>
</style>
<style name="YuzuButton" parent="Widget.Material3.Button.TextButton.Dialog">
<style name="CitronButton" parent="Widget.Material3.Button.TextButton.Dialog">
<item name="android:textColor">@color/citron_primary</item>
<item name="rippleColor">@color/citron_inversePrimary</item>
</style>

View File

@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.Yuzu.Splash.Main" parent="Theme.SplashScreen">
<style name="Theme.Citron.Splash.Main" parent="Theme.SplashScreen">
<item name="windowSplashScreenBackground">@color/citron_surface</item>
<item name="windowSplashScreenAnimatedIcon">@drawable/ic_citron</item>
<item name="postSplashScreenTheme">@style/Theme.Yuzu.Main</item>
<item name="postSplashScreenTheme">@style/Theme.Citron.Main</item>
</style>
<style name="Theme.Yuzu.Main" parent="Theme.Material3.DayNight.NoActionBar">
<style name="Theme.Citron.Main" parent="Theme.Material3.DayNight.NoActionBar">
<item name="colorPrimary">@color/citron_primary</item>
<item name="colorOnPrimary">@color/citron_onPrimary</item>
<item name="colorPrimaryContainer">@color/citron_primaryContainer</item>
@@ -39,8 +39,8 @@
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:navigationBarColor">@android:color/transparent</item>
<item name="sliderStyle">@style/YuzuSlider</item>
<item name="materialAlertDialogTheme">@style/YuzuMaterialDialog</item>
<item name="sliderStyle">@style/CitronSlider</item>
<item name="materialAlertDialogTheme">@style/CitronMaterialDialog</item>
<item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>