add zh-cn
This commit is contained in:
4 files changed
+147
-26
No files matched your search
@@ -13,36 +13,15 @@ class InterfaceFragment: BaseSettingFragment() {
|
||||
|
||||
override fun onCreateDataStore(): SettingsDataStore {
|
||||
return SettingsDataStore().apply {
|
||||
on(KEY_DARK_MODE, DarkModeSource())
|
||||
on(KEY_DARK_MODE, UiSettings.DARK_MODE.asSource(ui))
|
||||
on(KEY_LANGUAGE, UiSettings.LANGUAGE.asSource(ui))
|
||||
|
||||
onApply {
|
||||
requireActivity().recreate()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override val xmlResourceId: Int
|
||||
get() = R.xml.settings_interface
|
||||
|
||||
private inner class DarkModeSource: SettingsDataStore.Source {
|
||||
override fun set(value: Any?) {
|
||||
ui.commit {
|
||||
put(UiSettings.DARK_MODE, value as String)
|
||||
}
|
||||
|
||||
requireActivity().recreate()
|
||||
}
|
||||
|
||||
override fun get(): Any? {
|
||||
return when ( activity.delegate.localNightMode ) {
|
||||
AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM ->
|
||||
UiSettings.DARK_MODE_AUTO
|
||||
AppCompatDelegate.MODE_NIGHT_YES ->
|
||||
UiSettings.DARK_MODE_DARK
|
||||
AppCompatDelegate.MODE_NIGHT_NO ->
|
||||
UiSettings.DARK_MODE_LIGHT
|
||||
else -> UiSettings.DARK_MODE_AUTO
|
||||
}
|
||||
}
|
||||
|
||||
private val activity: AppCompatActivity
|
||||
get() = requireActivity() as AppCompatActivity
|
||||
}
|
||||
}
|
||||
@@ -10,11 +10,16 @@ class SettingsDataStore: PreferenceDataStore() {
|
||||
}
|
||||
|
||||
private val sources: MutableMap<String, Source> = mutableMapOf()
|
||||
var applyListener: () -> Unit = {}
|
||||
|
||||
fun on(key: String, source: Source) {
|
||||
sources[key] = source
|
||||
}
|
||||
|
||||
fun onApply(block: () -> Unit) {
|
||||
this.applyListener = block
|
||||
}
|
||||
|
||||
inline fun <reified T>BaseSettings.Entry<T>.asSource(settings: BaseSettings): Source {
|
||||
return object: Source {
|
||||
override fun set(value: Any?) {
|
||||
@@ -23,6 +28,8 @@ class SettingsDataStore: PreferenceDataStore() {
|
||||
settings.commit {
|
||||
put(this@asSource, v as T)
|
||||
}
|
||||
|
||||
applyListener()
|
||||
}
|
||||
|
||||
override fun get(): Any? {
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string-array name="access_control_mode_display">
|
||||
<item>允许所有应用</item>
|
||||
<item>仅允许已选择的应用</item>
|
||||
<item>不允许已选择的应用</item>
|
||||
</string-array>
|
||||
<string-array name="dark_mode">
|
||||
<item>自动</item>
|
||||
<item>暗黑</item>
|
||||
<item>明亮</item>
|
||||
</string-array>
|
||||
<string-array name="language">
|
||||
<item>自动</item>
|
||||
<item>英文</item>
|
||||
<item>简体中文</item>
|
||||
</string-array>
|
||||
</resources>
|
||||
@@ -0,0 +1,117 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="access_control_packages_summary">为应用配置访问权限</string>
|
||||
<string name="about">关于</string>
|
||||
<string name="access_control">访问控制</string>
|
||||
<string name="access_control_mode">访问控制模式</string>
|
||||
<string name="access_control_packages">访问控制应用包列表</string>
|
||||
<string name="append_system_dns">追加系统 DNS</string>
|
||||
<string name="append_system_dns_summary">自动追加系统 DNS 到 clash</string>
|
||||
<string name="application_broken">应用损坏</string>
|
||||
<string name="application_name">Clash for Android</string>
|
||||
<string name="auto_update">自动更新</string>
|
||||
<string name="behavior">行为</string>
|
||||
<string name="boot">启动</string>
|
||||
<string name="bypass_private_network">绕过私有网络</string>
|
||||
<string name="bypass_private_network_summary">绕过私有网络地址</string>
|
||||
<string name="cancel">取消</string>
|
||||
<string name="capturing_clash_log">正在捕捉日志</string>
|
||||
<string name="clash_logcat">Clash 日志捕捉工具</string>
|
||||
<string name="clash_new_profile">新配置</string>
|
||||
<string name="clash_start_failure">Clash 启动失败</string>
|
||||
<string name="create_profile">创建配置</string>
|
||||
<string name="dark_mode">暗黑模式</string>
|
||||
<string name="default_">默认</string>
|
||||
<string name="delay">延迟</string>
|
||||
<string name="delete">删除</string>
|
||||
<string name="delete_all_logs">删除所有日志</string>
|
||||
<string name="delete_all_logs_warn">所有历史日志将丢失</string>
|
||||
<string name="delete_log">删除日志</string>
|
||||
<string name="delete_log_warn">%s 将被删除</string>
|
||||
<string name="detail">详情</string>
|
||||
<string name="direct">直连</string>
|
||||
<string name="direct_mode">直连模式</string>
|
||||
<string name="disabled">已禁用</string>
|
||||
<string name="dns_hijacking">DNS 劫持</string>
|
||||
<string name="dns_hijacking_summary">处理所有 DNS 数据包</string>
|
||||
<string name="dns_override">DNS 配置覆盖</string>
|
||||
<string name="dns_override_summary">强制使用内置 DNS 配置</string>
|
||||
<string name="download_failure">下载失败</string>
|
||||
<string name="duplicate">复制</string>
|
||||
<string name="edit">编辑</string>
|
||||
<string name="edit_profile">编辑配置</string>
|
||||
<string name="empty_name">空名称</string>
|
||||
<string name="enable_ipv6">启用 IPv6 支持 (不建议)</string>
|
||||
<string name="enabled">已启用</string>
|
||||
<string name="exit_without_save">退出而不保存</string>
|
||||
<string name="exit_without_save_warning">所有变更将会丢失</string>
|
||||
<string name="export">导出</string>
|
||||
<string name="external">外部</string>
|
||||
<string name="feedback">反馈</string>
|
||||
<string name="file">文件</string>
|
||||
<string name="file_exported">文件已导出</string>
|
||||
<string name="format_date_time">%s %s</string>
|
||||
<string name="format_days">%d 天</string>
|
||||
<string name="format_export_log_name">%s %s.log</string>
|
||||
<string name="format_hours">%d 小时</string>
|
||||
<string name="format_minutes">%d 分钟</string>
|
||||
<string name="format_months">%d 月</string>
|
||||
<string name="format_profile_activated">%s 已激活</string>
|
||||
<string name="format_traffic_forwarded">%s 已转发</string>
|
||||
<string name="format_years">%d 年</string>
|
||||
<string name="global">全局</string>
|
||||
<string name="global_mode">全局模式</string>
|
||||
<string name="history">历史</string>
|
||||
<string name="import_from_file">从文件导入</string>
|
||||
<string name="import_from_url">从 URL 导入</string>
|
||||
<string name="in_minutes">以分钟计算</string>
|
||||
<string name="interface_">界面</string>
|
||||
<string name="invalid_interval">无效的间隔</string>
|
||||
<string name="invalid_url">无效的 URL</string>
|
||||
<string name="ipv6">IPv6</string>
|
||||
<string name="language">语言</string>
|
||||
<string name="launch_name">Clash</string>
|
||||
<string name="log_viewer">日志查看器</string>
|
||||
<string name="logs">日志</string>
|
||||
<string name="merge_prefix">前缀合并</string>
|
||||
<string name="mode">模式</string>
|
||||
<string name="name">名称</string>
|
||||
<string name="network">网络</string>
|
||||
<string name="new_profile">新配置</string>
|
||||
<string name="not_selected">未选择</string>
|
||||
<string name="notification">通知</string>
|
||||
<string name="ok">确认</string>
|
||||
<string name="open_log_failure">打开日志失败</string>
|
||||
<string name="processing">处理中</string>
|
||||
<string name="profile">配置</string>
|
||||
<string name="profile_name">配置名称</string>
|
||||
<string name="profile_url">配置 URL</string>
|
||||
<string name="profiles">配置文件</string>
|
||||
<string name="properties">参数</string>
|
||||
<string name="proxy">代理</string>
|
||||
<string name="recently">近期</string>
|
||||
<string name="refresh">刷新</string>
|
||||
<string name="reset_provider">重置外部引用</string>
|
||||
<string name="route_system_traffic">路由系统流量</string>
|
||||
<string name="routing_via_vpn_service">通过 VpnService 路由所有系统流量</string>
|
||||
<string name="rule">规则</string>
|
||||
<string name="rule_mode">规则模式</string>
|
||||
<string name="running">运行中</string>
|
||||
<string name="send">发送</string>
|
||||
<string name="settings">设置</string>
|
||||
<string name="show_traffic">显示流量</string>
|
||||
<string name="show_traffic_summary">在通知中自动刷新流量</string>
|
||||
<string name="sort_group">代理组排序</string>
|
||||
<string name="sort_proxy">代理排序</string>
|
||||
<string name="start_clash_on_system_boot">在系统启动时启动 Clash</string>
|
||||
<string name="start_on_boot">开机时启动</string>
|
||||
<string name="start_url_provider_failure">打开 URL 提供商 失败</string>
|
||||
<string name="stopped">已停止</string>
|
||||
<string name="support">支持</string>
|
||||
<string name="tap_to_start">点此启动</string>
|
||||
<string name="unknown">未知</string>
|
||||
<string name="update">更新</string>
|
||||
<string name="url">URL</string>
|
||||
<string name="utils">实用工具</string>
|
||||
<string name="vpn_service">VPN Service</string>
|
||||
</resources>
|
||||
Reference in new issue
Block a user