mirror of
https://git.eden-emu.dev/archive/citron
synced 2026-03-23 18:09:35 -04:00
fix: Multiplayer network fixes and airplane mode
- Auto-select network interface for direct connect/host room - Always recreate ENet client on join for fresh bindings - Add airplane mode toggle (Desktop & Android) - Fix JWT verification with empty verify_uid - Improve content-type handling for JWT endpoints Signed-off-by: Zephyron <zephyron@citron-emu.org>
This commit is contained in:
@@ -31,7 +31,8 @@ enum class BooleanSetting(override val key: String) : AbstractBooleanSetting {
|
||||
SHOW_RAM_METER("show_ram_meter"),
|
||||
SHOW_SHADER_BUILDING_OVERLAY("show_shader_building_overlay"),
|
||||
SHOW_PERFORMANCE_GRAPH("show_performance_graph"),
|
||||
USE_CONDITIONAL_RENDERING("use_conditional_rendering");
|
||||
USE_CONDITIONAL_RENDERING("use_conditional_rendering"),
|
||||
AIRPLANE_MODE("airplane_mode");
|
||||
|
||||
override fun getBoolean(needsGlobal: Boolean): Boolean =
|
||||
NativeConfig.getBoolean(key, needsGlobal)
|
||||
|
||||
@@ -24,6 +24,7 @@ object Settings {
|
||||
SECTION_INPUT_PLAYER_EIGHT,
|
||||
SECTION_THEME(R.string.preferences_theme),
|
||||
SECTION_DEBUG(R.string.preferences_debug),
|
||||
SECTION_NETWORK(R.string.preferences_network),
|
||||
SECTION_ZEP_ZONE(R.string.preferences_zep_zone),
|
||||
SECTION_APPLETS_ANDROID(R.string.preferences_applets_android);
|
||||
}
|
||||
|
||||
@@ -99,6 +99,7 @@ class SettingsFragmentPresenter(
|
||||
MenuTag.SECTION_INPUT_PLAYER_EIGHT -> addInputPlayer(sl, 7)
|
||||
MenuTag.SECTION_THEME -> addThemeSettings(sl)
|
||||
MenuTag.SECTION_DEBUG -> addDebugSettings(sl)
|
||||
MenuTag.SECTION_NETWORK -> addNetworkSettings(sl)
|
||||
MenuTag.SECTION_ZEP_ZONE -> addZepZoneSettings(sl)
|
||||
MenuTag.SECTION_APPLETS_ANDROID -> addAppletsAndroidSettings(sl)
|
||||
}
|
||||
@@ -144,6 +145,14 @@ class SettingsFragmentPresenter(
|
||||
menuKey = MenuTag.SECTION_DEBUG
|
||||
)
|
||||
)
|
||||
add(
|
||||
SubmenuSetting(
|
||||
titleId = R.string.preferences_network,
|
||||
descriptionId = R.string.preferences_network_description,
|
||||
iconId = R.drawable.ic_settings,
|
||||
menuKey = MenuTag.SECTION_NETWORK
|
||||
)
|
||||
)
|
||||
add(
|
||||
SubmenuSetting(
|
||||
titleId = R.string.preferences_zep_zone,
|
||||
@@ -1002,6 +1011,13 @@ class SettingsFragmentPresenter(
|
||||
}
|
||||
}
|
||||
|
||||
private fun addNetworkSettings(sl: ArrayList<SettingsItem>) {
|
||||
sl.apply {
|
||||
add(HeaderSetting(R.string.network_settings_header))
|
||||
add(BooleanSetting.AIRPLANE_MODE.key)
|
||||
}
|
||||
}
|
||||
|
||||
private fun addZepZoneSettings(sl: ArrayList<SettingsItem>) {
|
||||
sl.apply {
|
||||
add(HeaderSetting(R.string.memory_layout_header))
|
||||
|
||||
@@ -421,11 +421,16 @@
|
||||
<string name="preferences_theme">Theme and color</string>
|
||||
<string name="preferences_debug">Debug</string>
|
||||
<string name="preferences_debug_description">CPU/GPU debugging, graphics API, fastmem</string>
|
||||
<string name="preferences_network">Network</string>
|
||||
<string name="preferences_network_description">Network interface and airplane mode settings</string>
|
||||
<string name="preferences_zep_zone">Zep Zone</string>
|
||||
<string name="preferences_zep_zone_description">Advanced emulation settings</string>
|
||||
<string name="preferences_applets_android">Applets on Android</string>
|
||||
<string name="preferences_applets_android_description">System applet configuration settings</string>
|
||||
|
||||
<!-- Network Settings Headers -->
|
||||
<string name="network_settings_header">Network Settings</string>
|
||||
|
||||
<!-- Zep Zone Headers -->
|
||||
<string name="memory_layout_header">Memory Layout</string>
|
||||
<string name="astc_settings_header">ASTC Settings</string>
|
||||
|
||||
Reference in New Issue
Block a user