Compare commits

15 Commits

Author SHA1 Message Date
乌堆小透明
9af50d9dd5 New translations strings.xml (Chinese Traditional)
[ci skip] New translations from Crowdin
2022-03-29 18:42:48 +08:00
乌堆小透明
c2fa56a90c New translations strings.xml (Romanian)
[ci skip] New translations from Crowdin
2022-03-29 18:33:36 +08:00
乌堆小透明
912fee632d New translations strings.xml (Russian)
[ci skip] New translations from Crowdin
2022-03-29 17:44:29 +08:00
乌堆小透明
390be46825 New translations strings.xml (Chinese Traditional)
[ci skip] New translations from Crowdin
2022-03-29 17:16:40 +08:00
LittleTurtle2333
d8baadae59 Update version to 1.5.6 2022-03-29 16:48:00 +08:00
乌堆小透明
d2035121ce New Crowdin updates (#114) 2022-03-29 16:47:42 +08:00
LittleTurtle2333
b29bfb45f9 新增自定义通知图标上限 2022-03-29 16:43:25 +08:00
LittleTurtle2333
657c65164f 新增状态栏时钟居中+图标居左布局 2022-03-29 16:15:38 +08:00
LittleTurtle2333
5c3ca4caa4 Merge remote-tracking branch 'origin/main' 2022-03-28 23:57:08 +08:00
LittleTurtle2333
08b4abf08c 新增时钟居中+图标居左(未完成) 2022-03-28 23:56:56 +08:00
CDzungx
acdbd23248 Typo fixes (#117) 2022-03-28 04:10:32 +08:00
LittleTurtle2333
2bed96532f 新增状态栏时钟居右布局 2022-03-28 03:14:02 +08:00
LittleTurtle2333
314fc7b46f Update README.md 2022-03-28 02:17:19 +08:00
LittleTurtle2333
ff94fce5d0 修复开启时钟居中对齐后上移的问题 2022-03-28 02:12:49 +08:00
LittleTurtle2333
d56d291e51 Fix Thai cannot hide network speed unit 2022-03-27 19:43:04 +08:00
21 changed files with 527 additions and 176 deletions

View File

@@ -48,6 +48,8 @@ Xposed仓库下载[点击此处下载最新发行版](https://github.com/Xpos
[LSPosed/CorePatch](https://github.com/LSPosed/CorePatch) [LSPosed/CorePatch](https://github.com/LSPosed/CorePatch)
##### GNU Lesser General Public License v2.1 ##### GNU Lesser General Public License v2.1
[577fkj/blockmiui](https://github.com/577fkj/blockmiui) [577fkj/blockmiui](https://github.com/577fkj/blockmiui)
##### Apache License 2.0
[KyuubiRan/EzXHelper](https://github.com/KyuubiRan/EzXHelper)
--- ---

View File

@@ -45,6 +45,8 @@ Xposed Repo[Click here to download the latest release](https://github.com/Xpo
[LSPosed/CorePatch](https://github.com/LSPosed/CorePatch) [LSPosed/CorePatch](https://github.com/LSPosed/CorePatch)
##### GNU Lesser General Public License v2.1 ##### GNU Lesser General Public License v2.1
[577fkj/blockmiui](https://github.com/577fkj/blockmiui) [577fkj/blockmiui](https://github.com/577fkj/blockmiui)
##### Apache License 2.0
[KyuubiRan/EzXHelper](https://github.com/KyuubiRan/EzXHelper)
--- ---

View File

@@ -12,8 +12,8 @@ android {
applicationId = "com.lt2333.simplicitytools" applicationId = "com.lt2333.simplicitytools"
minSdk = 31 minSdk = 31
targetSdk = 32 targetSdk = 32
versionCode = 56 versionCode = 57
versionName = "1.5.5" versionName = "1.5.6"
} }
buildTypes { buildTypes {

View File

@@ -508,13 +508,58 @@ class SettingsActivity : MIUIActivity() {
) )
add(LineV()) add(LineV())
add(TitleTextV(resId = R.string.status_bar_layout)) add(TitleTextV(resId = R.string.status_bar_layout))
val statusBarLayoutMode: HashMap<Int, String> = hashMapOf<Int, String>().also {
it[0] = getString(R.string.default1)
it[1] = getString(R.string.clock_center)
it[2] = getString(R.string.clock_right)
it[3] = getString(R.string.clock_center_and_icon_left)
}
add( add(
TextSummaryWithSwitchV( TextWithSpinnerV(
TextSummaryV( TextV(resId = R.string.status_bar_layout_mode),
textId = R.string.status_bar_time_center, SpinnerV(
tipsId = R.string.status_bar_layout_summary arrayListOf<MIUIPopupData>().apply {
), add(MIUIPopupData(statusBarLayoutMode[0].toString()) {
SwitchV("status_bar_time_center") OwnSP.ownSP.edit().run {
putInt(
"status_bar_layout_mode",
0
)
apply()
}
})
add(MIUIPopupData(statusBarLayoutMode[1].toString()) {
OwnSP.ownSP.edit().run {
putInt(
"status_bar_layout_mode",
1
)
apply()
}
})
add(MIUIPopupData(statusBarLayoutMode[2].toString()) {
OwnSP.ownSP.edit().run {
putInt(
"status_bar_layout_mode",
2
)
apply()
}
})
add(MIUIPopupData(statusBarLayoutMode[3].toString()) {
OwnSP.ownSP.edit().run {
putInt(
"status_bar_layout_mode",
3
)
apply()
}
})
}, currentValue = statusBarLayoutMode[OwnSP.ownSP.getInt(
"status_bar_layout_mode",
0
)].toString()
)
) )
) )
val layoutCompatibilityModeBinding = getDataBinding( val layoutCompatibilityModeBinding = getDataBinding(
@@ -874,12 +919,16 @@ class SettingsActivity : MIUIActivity() {
) )
) )
add( add(
TextSummaryWithSwitchV( TextV(
TextSummaryV( resId = R.string.maximum_number_of_notification_icons
textId = R.string.remove_the_maximum_number_of_notification_icons, )
tipsId = R.string.remove_the_maximum_number_of_notification_icons_summary )
), add(
SwitchV("remove_the_maximum_number_of_notification_icons") SeekBarWithTextV(
"maximum_number_of_notification_icons",
1,
30,
3
) )
) )
add( add(

View File

@@ -21,7 +21,7 @@ object SystemUI: AppRegister() {
HideMobileTypeIcon, //隐藏移动类型图标 HideMobileTypeIcon, //隐藏移动类型图标
HideStatusBarNetworkSpeedSecond, //隐藏状态栏网速/s HideStatusBarNetworkSpeedSecond, //隐藏状态栏网速/s
HideWifiActivityIcon, //隐藏WIFI活动箭头图标 HideWifiActivityIcon, //隐藏WIFI活动箭头图标
RemoveTheMaximumNumberOfNotificationIcons, //移除通知图标上限 MaximumNumberOfNotificationIcons, //通知图标上限
StatusBarNetworkSpeedRefreshSpeed, //状态栏网速秒刷新 StatusBarNetworkSpeedRefreshSpeed, //状态栏网速秒刷新
StatusBarTimeCustomization, //状态栏时钟自定义 StatusBarTimeCustomization, //状态栏时钟自定义
RemoveTheLeftSideOfTheLockScreen, //移除锁屏负一屏功能 RemoveTheLeftSideOfTheLockScreen, //移除锁屏负一屏功能

View File

@@ -15,6 +15,7 @@ object HideStatusBarNetworkSpeedSecond: HookRegister() {
.replace("/", "") .replace("/", "")
.replace("s", "") .replace("s", "")
.replace("'", "") .replace("'", "")
.replace("วิ", "")
} }
} }
} }

View File

@@ -1,20 +1,17 @@
package com.lt2333.simplicitytools.hook.app.systemui package com.lt2333.simplicitytools.hook.app.systemui
import com.lt2333.simplicitytools.util.callMethod import com.lt2333.simplicitytools.util.*
import com.lt2333.simplicitytools.util.hasEnable
import com.lt2333.simplicitytools.util.replaceMethod
import com.lt2333.simplicitytools.util.setIntField
import com.lt2333.simplicitytools.util.xposed.base.HookRegister import com.lt2333.simplicitytools.util.xposed.base.HookRegister
object RemoveTheMaximumNumberOfNotificationIcons: HookRegister() { object MaximumNumberOfNotificationIcons: HookRegister() {
override fun init() { override fun init() {
hasEnable("remove_the_maximum_number_of_notification_icons") { val size = XSPUtils.getInt("maximum_number_of_notification_icons",3)
"com.android.systemui.statusbar.phone.NotificationIconContainer".replaceMethod(getDefaultClassLoader(), "miuiShowNotificationIcons", Boolean::class.java) { "com.android.systemui.statusbar.phone.NotificationIconContainer".replaceMethod(getDefaultClassLoader(), "miuiShowNotificationIcons", Boolean::class.java) {
if (it.args[0] as Boolean) { if (it.args[0] as Boolean) {
it.thisObject.setIntField("MAX_DOTS", 30) it.thisObject.setIntField("MAX_DOTS", size)
it.thisObject.setIntField("MAX_STATIC_ICONS", 30) it.thisObject.setIntField("MAX_STATIC_ICONS", size)
it.thisObject.setIntField("MAX_VISIBLE_ICONS_ON_LOCK", 30) it.thisObject.setIntField("MAX_VISIBLE_ICONS_ON_LOCK", size)
} else { } else {
it.thisObject.setIntField("MAX_DOTS", 0) it.thisObject.setIntField("MAX_DOTS", 0)
it.thisObject.setIntField("MAX_STATIC_ICONS", 0) it.thisObject.setIntField("MAX_STATIC_ICONS", 0)
@@ -22,7 +19,6 @@ object RemoveTheMaximumNumberOfNotificationIcons: HookRegister() {
} }
it.thisObject.callMethod("updateState") it.thisObject.callMethod("updateState")
} }
}
} }
} }

View File

@@ -1,6 +1,7 @@
package com.lt2333.simplicitytools.hook.app.systemui package com.lt2333.simplicitytools.hook.app.systemui
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.app.KeyguardManager
import android.content.Context import android.content.Context
import android.content.res.Configuration import android.content.res.Configuration
import android.content.res.Resources import android.content.res.Resources
@@ -8,18 +9,20 @@ import android.os.Bundle
import android.view.Gravity import android.view.Gravity
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import android.widget.FrameLayout
import android.widget.LinearLayout import android.widget.LinearLayout
import android.widget.TextView import android.widget.TextView
import androidx.constraintlayout.widget.ConstraintLayout import androidx.constraintlayout.widget.ConstraintLayout
import cn.fkj233.ui.activity.dp2px
import com.lt2333.simplicitytools.util.XSPUtils import com.lt2333.simplicitytools.util.XSPUtils
import com.lt2333.simplicitytools.util.findClass import com.lt2333.simplicitytools.util.findClass
import com.lt2333.simplicitytools.util.getObjectField import com.lt2333.simplicitytools.util.getObjectField
import com.lt2333.simplicitytools.util.hookAfterMethod import com.lt2333.simplicitytools.util.hookAfterMethod
import com.lt2333.simplicitytools.util.xposed.base.HookRegister import com.lt2333.simplicitytools.util.xposed.base.HookRegister
import de.robv.android.xposed.XposedHelpers
@SuppressLint("StaticFieldLeak") @SuppressLint("StaticFieldLeak")
object StatusBarLayout: HookRegister() { object StatusBarLayout : HookRegister() {
private var mLeftLayout: LinearLayout? = null private var mLeftLayout: LinearLayout? = null
private var mRightLayout: LinearLayout? = null private var mRightLayout: LinearLayout? = null
@@ -32,141 +35,409 @@ object StatusBarLayout: HookRegister() {
private var statusBarBottom = 0 private var statusBarBottom = 0
override fun init() { override fun init() {
if (!XSPUtils.getBoolean("status_bar_time_center", false)) return when (XSPUtils.getInt("status_bar_layout_mode", 0)) {
//默认
0 -> return
//时钟居中
1 -> {
val collapsedStatusBarFragmentClass =
"com.android.systemui.statusbar.phone.CollapsedStatusBarFragment".findClass(
getDefaultClassLoader()
)
val collapsedStatusBarFragmentClass = collapsedStatusBarFragmentClass.hookAfterMethod(
"com.android.systemui.statusbar.phone.CollapsedStatusBarFragment".findClass(getDefaultClassLoader()) "onViewCreated",
View::class.java,
Bundle::class.java
) { param ->
val MiuiPhoneStatusBarView: ViewGroup =
param.thisObject.getObjectField("mStatusBar") as ViewGroup
val context: Context = MiuiPhoneStatusBarView.context
val res: Resources = MiuiPhoneStatusBarView.resources
val statusBarId: Int =
res.getIdentifier("status_bar", "id", "com.android.systemui")
val statusBarContentsId: Int =
res.getIdentifier("status_bar_contents", "id", "com.android.systemui")
val systemIconAreaId: Int =
res.getIdentifier("system_icon_area", "id", "com.android.systemui")
val clockId: Int = res.getIdentifier("clock", "id", "com.android.systemui")
val phoneStatusBarLeftContainerId: Int =
res.getIdentifier(
"phone_status_bar_left_container",
"id",
"com.android.systemui"
)
val notificationIconAreaInnerId: Int =
res.getIdentifier(
"notification_icon_area_inner",
"id",
"com.android.systemui"
)
statusBar = MiuiPhoneStatusBarView.findViewById(statusBarId)
val statusBarContents: ViewGroup =
MiuiPhoneStatusBarView.findViewById(statusBarContentsId)
if (statusBar == null) return@hookAfterMethod
val clock: TextView = MiuiPhoneStatusBarView.findViewById(clockId)
val phoneStatusBarLeftContainer: ViewGroup =
MiuiPhoneStatusBarView.findViewById(phoneStatusBarLeftContainerId)
val notificationIconAreaInner: ViewGroup =
MiuiPhoneStatusBarView.findViewById(notificationIconAreaInnerId)
val systemIconArea: ViewGroup =
MiuiPhoneStatusBarView.findViewById(systemIconAreaId)
collapsedStatusBarFragmentClass.hookAfterMethod( (clock.parent as ViewGroup).removeView(clock)
"onViewCreated", (phoneStatusBarLeftContainer.parent as ViewGroup).removeView(
View::class.java, phoneStatusBarLeftContainer
Bundle::class.java )
) { param -> (notificationIconAreaInner.parent as ViewGroup).removeView(
val MiuiPhoneStatusBarView: ViewGroup = notificationIconAreaInner
param.thisObject.getObjectField("mStatusBar") as ViewGroup )
val context: Context = MiuiPhoneStatusBarView.context (systemIconArea.parent as ViewGroup).removeView(systemIconArea)
val res: Resources = MiuiPhoneStatusBarView.resources
val statusBarId: Int = res.getIdentifier("status_bar", "id", "com.android.systemui")
val statusBarContentsId: Int =
res.getIdentifier("status_bar_contents", "id", "com.android.systemui")
val systemIconAreaId: Int =
res.getIdentifier("system_icon_area", "id", "com.android.systemui")
val clockId: Int = res.getIdentifier("clock", "id", "com.android.systemui")
val phoneStatusBarLeftContainerId: Int =
res.getIdentifier("phone_status_bar_left_container", "id", "com.android.systemui")
val notificationIconAreaInnerId: Int =
res.getIdentifier("notification_icon_area_inner", "id", "com.android.systemui")
statusBar = MiuiPhoneStatusBarView.findViewById(statusBarId)
val statusBarContents: ViewGroup =
MiuiPhoneStatusBarView.findViewById(statusBarContentsId)
if (statusBar == null) return@hookAfterMethod
val clock: TextView = MiuiPhoneStatusBarView.findViewById(clockId)
val phoneStatusBarLeftContainer: ViewGroup =
MiuiPhoneStatusBarView.findViewById(phoneStatusBarLeftContainerId)
val notificationIconAreaInner: ViewGroup =
MiuiPhoneStatusBarView.findViewById(notificationIconAreaInnerId)
val systemIconArea: ViewGroup =
MiuiPhoneStatusBarView.findViewById(systemIconAreaId)
(clock.parent as ViewGroup).removeView(clock) val mConstraintLayout =
(phoneStatusBarLeftContainer.parent as ViewGroup).removeView( ConstraintLayout(context).also {
phoneStatusBarLeftContainer it.layoutParams = ConstraintLayout.LayoutParams(
) ConstraintLayout.LayoutParams.MATCH_PARENT,
(notificationIconAreaInner.parent as ViewGroup).removeView( ConstraintLayout.LayoutParams.MATCH_PARENT
notificationIconAreaInner )
) }
(systemIconArea.parent as ViewGroup).removeView(systemIconArea)
val mConstraintLayoutLp = ConstraintLayout.LayoutParams( mConstraintLayout.addView(notificationIconAreaInner)
ConstraintLayout.LayoutParams.MATCH_PARENT,
ConstraintLayout.LayoutParams.MATCH_PARENT
)
val mConstraintLayout = val fullscreen_notification_icon_area_lp = LinearLayout.LayoutParams(
ConstraintLayout(context).also { it.layoutParams = mConstraintLayoutLp } ConstraintLayout.LayoutParams.MATCH_PARENT,
ConstraintLayout.LayoutParams.MATCH_PARENT
)
mConstraintLayout.addView(notificationIconAreaInner) notificationIconAreaInner.layoutParams = fullscreen_notification_icon_area_lp
val fullscreen_notification_icon_area_lp = LinearLayout.LayoutParams( //增加一个左对齐布局
ConstraintLayout.LayoutParams.MATCH_PARENT, mLeftLayout = LinearLayout(context)
ConstraintLayout.LayoutParams.MATCH_PARENT val LeftLp: LinearLayout.LayoutParams =
) LinearLayout.LayoutParams(0, LinearLayout.LayoutParams.MATCH_PARENT, 1.0f)
mLeftLayout!!.layoutParams = LeftLp
mLeftLayout!!.gravity = Gravity.START or Gravity.CENTER_VERTICAL
notificationIconAreaInner.layoutParams = fullscreen_notification_icon_area_lp //增加一个居中布局
mCenterLayout = LinearLayout(context)
val CenterLp: LinearLayout.LayoutParams = LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.MATCH_PARENT
)
mCenterLayout!!.layoutParams = CenterLp
mCenterLayout!!.gravity = Gravity.CENTER or Gravity.CENTER_VERTICAL
mRightLayout = LinearLayout(context)
val RightLp: LinearLayout.LayoutParams =
LinearLayout.LayoutParams(0, LinearLayout.LayoutParams.MATCH_PARENT, 1.0f)
mRightLayout!!.layoutParams = RightLp
mRightLayout!!.gravity = Gravity.END or Gravity.CENTER_VERTICAL
mLeftLayout!!.addView(phoneStatusBarLeftContainer)
mLeftLayout!!.addView(mConstraintLayout)
//增加一个左对齐布局 mCenterLayout!!.addView(clock)
mLeftLayout = LinearLayout(context) mRightLayout!!.addView(systemIconArea)
val LeftLp: LinearLayout.LayoutParams = statusBarContents.addView(mLeftLayout, 0)
LinearLayout.LayoutParams(0, LinearLayout.LayoutParams.MATCH_PARENT, 1.0f) statusBarContents.addView(mCenterLayout)
mLeftLayout!!.layoutParams = LeftLp statusBarContents.addView(mRightLayout)
mLeftLayout!!.gravity = Gravity.START or Gravity.CENTER_VERTICAL
//增加一个居中布局 statusBarLeft = statusBar!!.paddingLeft
mCenterLayout = LinearLayout(context) statusBarTop = statusBar!!.paddingTop
val CenterLp: LinearLayout.LayoutParams = LinearLayout.LayoutParams( statusBarRight = statusBar!!.paddingRight
LinearLayout.LayoutParams.WRAP_CONTENT, statusBarBottom = statusBar!!.paddingBottom
LinearLayout.LayoutParams.MATCH_PARENT
)
mCenterLayout!!.layoutParams = CenterLp
mCenterLayout!!.gravity = Gravity.CENTER or Gravity.CENTER_VERTICAL
mRightLayout = LinearLayout(context)
val RightLp: LinearLayout.LayoutParams =
LinearLayout.LayoutParams(0, LinearLayout.LayoutParams.MATCH_PARENT, 1.0f)
mRightLayout!!.layoutParams = RightLp
mRightLayout!!.gravity = Gravity.END or Gravity.CENTER_VERTICAL
mLeftLayout!!.addView(phoneStatusBarLeftContainer)
mLeftLayout!!.addView(mConstraintLayout)
mCenterLayout!!.addView(clock)
mRightLayout!!.addView(systemIconArea)
statusBarContents.addView(mLeftLayout, 0)
statusBarContents.addView(mCenterLayout)
statusBarContents.addView(mRightLayout)
statusBarLeft = statusBar!!.paddingLeft
statusBarTop = statusBar!!.paddingTop
statusBarRight = statusBar!!.paddingRight
statusBarBottom = statusBar!!.paddingBottom
if (XSPUtils.getBoolean("layout_compatibility_mode", false)) { if (XSPUtils.getBoolean("layout_compatibility_mode", false)) {
val customLeftMargin = XSPUtils.getInt("status_bar_left_margin", 0) val customLeftMargin = XSPUtils.getInt("status_bar_left_margin", 0)
if (customLeftMargin != 0) { if (customLeftMargin != 0) {
statusBarLeft = customLeftMargin statusBarLeft = customLeftMargin
}
val customRightMargin = XSPUtils.getInt("status_bar_right_margin", 0)
if (customRightMargin != 0) {
statusBarRight = customRightMargin
}
updateLayout(context)
}
} }
val phoneStatusBarViewClass =
"com.android.systemui.statusbar.phone.PhoneStatusBarView".findClass(
getDefaultClassLoader()
)
val customRightMargin = XSPUtils.getInt("status_bar_right_margin", 0) phoneStatusBarViewClass.hookAfterMethod("updateLayoutForCutout") {
if (customRightMargin != 0) { if (XSPUtils.getBoolean("layout_compatibility_mode", false)) {
statusBarRight = customRightMargin val context = (it.thisObject as ViewGroup).context
updateLayout(context)
}
} }
updateLayout(context)
} }
//时钟居右
2 -> {
val collapsedStatusBarFragmentClass =
"com.android.systemui.statusbar.phone.CollapsedStatusBarFragment".findClass(
getDefaultClassLoader()
)
} collapsedStatusBarFragmentClass.hookAfterMethod(
"onViewCreated",
View::class.java,
Bundle::class.java
) { param ->
val MiuiPhoneStatusBarView: ViewGroup =
param.thisObject.getObjectField("mStatusBar") as ViewGroup
val context: Context = MiuiPhoneStatusBarView.context
val res: Resources = MiuiPhoneStatusBarView.resources
val phoneStatusBarViewClass = //组件ID
"com.android.systemui.statusbar.phone.PhoneStatusBarView".findClass(getDefaultClassLoader()) val statusBarId: Int =
res.getIdentifier("status_bar", "id", "com.android.systemui")
val clockId: Int = res.getIdentifier("clock", "id", "com.android.systemui")
val batteryId: Int = res.getIdentifier("battery", "id", "com.android.systemui")
phoneStatusBarViewClass.hookAfterMethod("updateLayoutForCutout") { //查找组件
if (XSPUtils.getBoolean("layout_compatibility_mode", false)) { statusBar = MiuiPhoneStatusBarView.findViewById(statusBarId)
val context = (it.thisObject as ViewGroup).context if (statusBar == null) return@hookAfterMethod
updateLayout(context) val clock: TextView = MiuiPhoneStatusBarView.findViewById(clockId)
val battery: ViewGroup = MiuiPhoneStatusBarView.findViewById(batteryId)
//新建布局
val RightLp = LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.MATCH_PARENT
).also {
it.marginStart = dp2px(context, 5f)
}
mRightLayout = LinearLayout(context).also {
it.layoutParams = RightLp
}
//添加布局与组件
battery.addView(mRightLayout)
(clock.parent as ViewGroup).removeView(clock)
mRightLayout!!.addView(clock)
}
} }
} //时钟居中+图标居左
val miuiPhoneStatusBarViewClass = 3 -> {
"com.android.systemui.statusbar.phone.MiuiPhoneStatusBarView".findClass(getDefaultClassLoader()) val collapsedStatusBarFragmentClass =
"com.android.systemui.statusbar.phone.CollapsedStatusBarFragment".findClass(
getDefaultClassLoader()
)
miuiPhoneStatusBarViewClass.hookAfterMethod("updateNotificationIconAreaInnnerParent") { collapsedStatusBarFragmentClass.hookAfterMethod(
val viewGroup = it.thisObject as ViewGroup "onViewCreated",
val fullscreen_notification_icon_area_lp = FrameLayout.LayoutParams( View::class.java,
ConstraintLayout.LayoutParams.MATCH_PARENT, Bundle::class.java
ConstraintLayout.LayoutParams.MATCH_PARENT ) { param ->
) val MiuiPhoneStatusBarView: ViewGroup =
viewGroup.layoutParams = fullscreen_notification_icon_area_lp param.thisObject.getObjectField("mStatusBar") as ViewGroup
val context: Context = MiuiPhoneStatusBarView.context
val res: Resources = MiuiPhoneStatusBarView.resources
val statusBarId: Int =
res.getIdentifier("status_bar", "id", "com.android.systemui")
val statusBarContentsId: Int =
res.getIdentifier("status_bar_contents", "id", "com.android.systemui")
val systemIconAreaId: Int =
res.getIdentifier("system_icon_area", "id", "com.android.systemui")
val clockId: Int = res.getIdentifier("clock", "id", "com.android.systemui")
val phoneStatusBarLeftContainerId: Int =
res.getIdentifier(
"phone_status_bar_left_container",
"id",
"com.android.systemui"
)
val fullscreenNotificationIconAreaId: Int =
res.getIdentifier(
"fullscreen_notification_icon_area",
"id",
"com.android.systemui"
)
val statusIconsId: Int =
res.getIdentifier(
"statusIcons",
"id",
"com.android.systemui"
)
val systemIconsId: Int =
res.getIdentifier(
"system_icons",
"id",
"com.android.systemui"
)
val batteryId: Int =
res.getIdentifier(
"battery",
"id",
"com.android.systemui"
)
val notificationIconAreaInnerId: Int =
res.getIdentifier(
"notification_icon_area_inner",
"id",
"com.android.systemui"
)
statusBar = MiuiPhoneStatusBarView.findViewById(statusBarId)
val statusBarContents: ViewGroup =
MiuiPhoneStatusBarView.findViewById(statusBarContentsId)
if (statusBar == null) return@hookAfterMethod
val clock: TextView = MiuiPhoneStatusBarView.findViewById(clockId)
val phoneStatusBarLeftContainer: ViewGroup =
MiuiPhoneStatusBarView.findViewById(phoneStatusBarLeftContainerId)
val fullscreenNotificationIconArea: ViewGroup =
MiuiPhoneStatusBarView.findViewById(fullscreenNotificationIconAreaId)
val systemIconArea: ViewGroup =
MiuiPhoneStatusBarView.findViewById(systemIconAreaId)
val statusIcons: ViewGroup =
MiuiPhoneStatusBarView.findViewById(statusIconsId)
val systemIcons: ViewGroup =
MiuiPhoneStatusBarView.findViewById(systemIconsId)
val battery: ViewGroup =
MiuiPhoneStatusBarView.findViewById(batteryId)
val notificationIconAreaInner: ViewGroup =
MiuiPhoneStatusBarView.findViewById(notificationIconAreaInnerId)
(clock.parent as ViewGroup).removeView(clock)
(phoneStatusBarLeftContainer.parent as ViewGroup).removeView(
phoneStatusBarLeftContainer
)
(systemIconArea.parent as ViewGroup).removeView(systemIconArea)
(statusIcons.parent as ViewGroup).removeView(statusIcons)
(systemIcons.parent as ViewGroup).removeView(systemIcons)
(battery.parent as ViewGroup).removeView(battery)
(notificationIconAreaInner.parent as ViewGroup).removeView(
notificationIconAreaInner
)
val mConstraintLayout =
ConstraintLayout(context).also {
it.layoutParams = ConstraintLayout.LayoutParams(
ConstraintLayout.LayoutParams.MATCH_PARENT,
ConstraintLayout.LayoutParams.MATCH_PARENT
)
}
mConstraintLayout.addView(notificationIconAreaInner)
mConstraintLayout.addView(battery)
battery.layoutParams = ConstraintLayout.LayoutParams(
ConstraintLayout.LayoutParams.WRAP_CONTENT,
ConstraintLayout.LayoutParams.MATCH_PARENT
).also {
it.endToEnd = 0
}
notificationIconAreaInner.layoutParams = ConstraintLayout.LayoutParams(
0,
ConstraintLayout.LayoutParams.MATCH_PARENT
).also {
it.startToEnd = batteryId
it.endToEnd = 0
}
notificationIconAreaInner.layoutDirection = View.LAYOUT_DIRECTION_RTL
//增加一个左对齐布局
mLeftLayout = LinearLayout(context)
val LeftLp: LinearLayout.LayoutParams =
LinearLayout.LayoutParams(0, LinearLayout.LayoutParams.MATCH_PARENT, 1.0f)
mLeftLayout!!.layoutParams = LeftLp
mLeftLayout!!.gravity = Gravity.START or Gravity.CENTER_VERTICAL
//增加一个居中布局
mCenterLayout = LinearLayout(context)
val CenterLp: LinearLayout.LayoutParams = LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.MATCH_PARENT
)
mCenterLayout!!.layoutParams = CenterLp
mCenterLayout!!.gravity = Gravity.CENTER or Gravity.CENTER_VERTICAL
//增加一个右布局
mRightLayout = LinearLayout(context)
val RightLp: LinearLayout.LayoutParams =
LinearLayout.LayoutParams(0, LinearLayout.LayoutParams.MATCH_PARENT, 1.0f)
mRightLayout!!.layoutParams = RightLp
mRightLayout!!.gravity = Gravity.END or Gravity.CENTER_VERTICAL
mLeftLayout!!.addView(phoneStatusBarLeftContainer)
mLeftLayout!!.addView(statusIcons)
statusIcons.layoutDirection = View.LAYOUT_DIRECTION_RTL
mCenterLayout!!.addView(clock)
mRightLayout!!.addView(mConstraintLayout)
fullscreenNotificationIconArea.layoutDirection = View.LAYOUT_DIRECTION_RTL
statusBarContents.addView(mLeftLayout, 0)
statusBarContents.addView(mCenterLayout)
statusBarContents.addView(mRightLayout)
statusBarLeft = statusBar!!.paddingLeft
statusBarTop = statusBar!!.paddingTop
statusBarRight = statusBar!!.paddingRight
statusBarBottom = statusBar!!.paddingBottom
if (XSPUtils.getBoolean("layout_compatibility_mode", false)) {
val customLeftMargin = XSPUtils.getInt("status_bar_left_margin", 0)
if (customLeftMargin != 0) {
statusBarLeft = customLeftMargin
}
val customRightMargin = XSPUtils.getInt("status_bar_right_margin", 0)
if (customRightMargin != 0) {
statusBarRight = customRightMargin
}
updateLayout(context)
}
}
//兼容模式
val phoneStatusBarViewClass =
"com.android.systemui.statusbar.phone.PhoneStatusBarView".findClass(
getDefaultClassLoader()
)
phoneStatusBarViewClass.hookAfterMethod("updateLayoutForCutout") {
if (XSPUtils.getBoolean("layout_compatibility_mode", false)) {
val context = (it.thisObject as ViewGroup).context
updateLayout(context)
}
}
//解决重叠
val miuiCollapsedStatusBarFragmentClass =
"com.android.systemui.statusbar.phone.MiuiCollapsedStatusBarFragment".findClass(
getDefaultClassLoader()
)
miuiCollapsedStatusBarFragmentClass.hookAfterMethod(
"showClock",
Boolean::class.java
) {
val MiuiPhoneStatusBarView =
XposedHelpers.getObjectField(it.thisObject, "mStatusBar") as ViewGroup
val res = MiuiPhoneStatusBarView.resources
val status_bar_ID =
res.getIdentifier("status_bar", "id", "com.android.systemui")
val status_bar = MiuiPhoneStatusBarView.findViewById<ViewGroup>(status_bar_ID)
//非锁屏下整个状态栏布局
val keyguardMgr =
status_bar.context.getSystemService(Context.KEYGUARD_SERVICE) as KeyguardManager
if (keyguardMgr.isKeyguardLocked) {
status_bar!!.visibility = View.GONE
} else {
status_bar!!.visibility = View.VISIBLE
}
}
}
} }
} }
private fun updateLayout(context: Context) { private fun updateLayout(context: Context) {
//判断屏幕方向 //判断屏幕方向
val mConfiguration: Configuration = context.resources.configuration val mConfiguration: Configuration = context.resources.configuration

View File

@@ -112,7 +112,7 @@ object StatusBarTimeCustomization : HookRegister() {
val res: Resources = MiuiPhoneStatusBarView.resources val res: Resources = MiuiPhoneStatusBarView.resources
val clockId: Int = res.getIdentifier("clock", "id", "com.android.systemui") val clockId: Int = res.getIdentifier("clock", "id", "com.android.systemui")
val clock: TextView = MiuiPhoneStatusBarView.findViewById(clockId) val clock: TextView = MiuiPhoneStatusBarView.findViewById(clockId)
clock.gravity = Gravity.CENTER_HORIZONTAL clock.gravity = Gravity.CENTER
} }
} }
} }

View File

@@ -47,7 +47,7 @@
<string name="hide_status_bar_network_speed_second">Ocultar unidad (/s) en velocidad de red</string> <string name="hide_status_bar_network_speed_second">Ocultar unidad (/s) en velocidad de red</string>
<string name="menu">Menú</string> <string name="menu">Menú</string>
<string name="Tips">Consejos</string> <string name="Tips">Consejos</string>
<string name="skip_waiting_time">Saltar advertencia de 5/10 segundos</string> <string name="skip_waiting_time">Saltar tiempo de advertencia de 5/10 segundos</string>
<string name="unlock_unlimited_cropping">Elimina la restricción de recorte en imágenes/capturas de pantalla</string> <string name="unlock_unlimited_cropping">Elimina la restricción de recorte en imágenes/capturas de pantalla</string>
<string name="hide_slave_wifi_icon">Ocultar icono de WIFI secundario</string> <string name="hide_slave_wifi_icon">Ocultar icono de WIFI secundario</string>
<string name="HideLauncherIcon">Esconder el icono del Launcher</string> <string name="HideLauncherIcon">Esconder el icono del Launcher</string>
@@ -154,8 +154,8 @@
<string name="participate_in_translation_summary">Ayúdanos a traducir la app en tu idioma</string> <string name="participate_in_translation_summary">Ayúdanos a traducir la app en tu idioma</string>
<string name="lock_screen_charging_current">Mostrar la información de corriente durante la carga</string> <string name="lock_screen_charging_current">Mostrar la información de corriente durante la carga</string>
<string name="current_current">Corriente de carga</string> <string name="current_current">Corriente de carga</string>
<string name="remove_open_app_confirmation_popup">Eliminar ventana de inicio en cadena</string> <string name="remove_open_app_confirmation_popup">Remover popup de inicio en cadena</string>
<string name="remove_open_app_confirmation_popup_summary">Eliminar ventana \"Permitir XXX abrir XXX\" de inicio en cadena</string> <string name="remove_open_app_confirmation_popup_summary">Eliminar ventana de inicio en cadena \"Permitir XXX abrir XXX\"</string>
<string name="hide_volume_icon">Ocultar icono de volumen</string> <string name="hide_volume_icon">Ocultar icono de volumen</string>
<string name="hide_zen_icon">Ocultar icono ZEN</string> <string name="hide_zen_icon">Ocultar icono ZEN</string>
<string name="hide_icon">Ocultar Iconos</string> <string name="hide_icon">Ocultar Iconos</string>
@@ -186,4 +186,12 @@
<string name="input_error">Error de entrada</string> <string name="input_error">Error de entrada</string>
<string name="range">Rango: </string> <string name="range">Rango: </string>
<string name="big_mobile_type_icon_left_and_right_margins">Margen izquierdo y derecho del icono de red móvil grande</string> <string name="big_mobile_type_icon_left_and_right_margins">Margen izquierdo y derecho del icono de red móvil grande</string>
<string name="cast">Transmitir</string>
<string name="force_support_send_app">Forzar que todas las apps soporten abrir en otro dispositivo</string>
<string name="status_bar_time_double_line_center_align">Alinear al centro fila dual</string>
<string name="default1">Por defecto</string>
<string name="clock_center">Reloj centrado</string>
<string name="clock_right">Reloj a la derecha</string>
<string name="status_bar_layout_mode">Modo de diseño de barra de estado</string>
<string name="clock_center_and_icon_left">Centrar reloj e icono a la izquierda</string>
</resources> </resources>

View File

@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="performance">Performance</string>
<string name="lock_max_fps">Verrouiller le taux de rafraîchissement actuel</string> <string name="lock_max_fps">Verrouiller le taux de rafraîchissement actuel</string>
<string name="ui">Interface</string> <string name="ui">Interface</string>
<string name="delete_on_post_notification">Supprimer l\'affichage sur la notification</string> <string name="delete_on_post_notification">Supprimer l\'affichage sur la notification</string>
@@ -47,7 +46,6 @@
<string name="hide_status_bar_network_speed_second">Masquer les unités de vitesse réseau (/s)</string> <string name="hide_status_bar_network_speed_second">Masquer les unités de vitesse réseau (/s)</string>
<string name="menu">Menu</string> <string name="menu">Menu</string>
<string name="Tips">Conseils</string> <string name="Tips">Conseils</string>
<string name="skip_waiting_time">Sauter l\'alerte de 5/10 secondes</string>
<string name="unlock_unlimited_cropping">Supprimer la restriction lors du recadrage des photos/captures d\'écran</string> <string name="unlock_unlimited_cropping">Supprimer la restriction lors du recadrage des photos/captures d\'écran</string>
<string name="hide_slave_wifi_icon">Masquer l\'icône secondaire WIFI</string> <string name="hide_slave_wifi_icon">Masquer l\'icône secondaire WIFI</string>
<string name="HideLauncherIcon">Masquer l\'icône en Homepage</string> <string name="HideLauncherIcon">Masquer l\'icône en Homepage</string>
@@ -154,8 +152,6 @@
<string name="participate_in_translation_summary">Aidez-nous à traduire l\'application dans votre langue</string> <string name="participate_in_translation_summary">Aidez-nous à traduire l\'application dans votre langue</string>
<string name="lock_screen_charging_current">Afficher les informations actuelles pendant le chargement</string> <string name="lock_screen_charging_current">Afficher les informations actuelles pendant le chargement</string>
<string name="current_current">Actuelles</string> <string name="current_current">Actuelles</string>
<string name="remove_open_app_confirmation_popup">supprimer la popup de l\'application ouverte</string>
<string name="remove_open_app_confirmation_popup_summary">supprimer le popup de démarrage de la chaîne \"Autoriser XXX à ouvrir XXX\"</string>
<string name="hide_volume_icon">Masquer l\'icône de le volume</string> <string name="hide_volume_icon">Masquer l\'icône de le volume</string>
<string name="hide_zen_icon">Masquer l\'icône ZEN</string> <string name="hide_zen_icon">Masquer l\'icône ZEN</string>
<string name="hide_icon">Masquer l\'icône</string> <string name="hide_icon">Masquer l\'icône</string>

View File

@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="performance">Perfoma</string>
<string name="lock_max_fps">Kunci batas atas kecepatan refresh layar saat ini</string> <string name="lock_max_fps">Kunci batas atas kecepatan refresh layar saat ini</string>
<string name="ui">Tampilan</string> <string name="ui">Tampilan</string>
<string name="delete_on_post_notification">Hapus tampilan di atas notifikasi</string> <string name="delete_on_post_notification">Hapus tampilan di atas notifikasi</string>
@@ -47,7 +46,6 @@
<string name="hide_status_bar_network_speed_second">Sembunyikan unit kecepatan jaringan (/d)</string> <string name="hide_status_bar_network_speed_second">Sembunyikan unit kecepatan jaringan (/d)</string>
<string name="menu">Menu</string> <string name="menu">Menu</string>
<string name="Tips">Tips</string> <string name="Tips">Tips</string>
<string name="skip_waiting_time">Lewati 5/10 waktu peringatan</string>
<string name="unlock_unlimited_cropping">Hilangkan pembatasan untuk memotong gambar/cuplikan layar</string> <string name="unlock_unlimited_cropping">Hilangkan pembatasan untuk memotong gambar/cuplikan layar</string>
<string name="hide_slave_wifi_icon">Sembunyikan ikon WIFI tambahan</string> <string name="hide_slave_wifi_icon">Sembunyikan ikon WIFI tambahan</string>
<string name="HideLauncherIcon">Sembunyikan ikon launcher</string> <string name="HideLauncherIcon">Sembunyikan ikon launcher</string>
@@ -154,8 +152,6 @@
<string name="participate_in_translation_summary">Bantu kami menerjemahkan aplikasi ke dalam bahasa Anda</string> <string name="participate_in_translation_summary">Bantu kami menerjemahkan aplikasi ke dalam bahasa Anda</string>
<string name="lock_screen_charging_current">Tampilkan informasi pengisian saat mengecas</string> <string name="lock_screen_charging_current">Tampilkan informasi pengisian saat mengecas</string>
<string name="current_current">Pengisian</string> <string name="current_current">Pengisian</string>
<string name="remove_open_app_confirmation_popup">hilangkan pop-up aplikasi saat membukanya</string>
<string name="remove_open_app_confirmation_popup_summary">hilangkan \"Bolehkan XXX untuk membuka XXX\" pintasan rantai muncul pop-up</string>
<string name="hide_volume_icon">Sembunyikan ikon suara</string> <string name="hide_volume_icon">Sembunyikan ikon suara</string>
<string name="hide_zen_icon">Sembunyikan ikon ZEN (MIUI China)</string> <string name="hide_zen_icon">Sembunyikan ikon ZEN (MIUI China)</string>
<string name="hide_icon">Sembunyikan ikon</string> <string name="hide_icon">Sembunyikan ikon</string>

View File

@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="performance">パフォーマンス設定</string>
<string name="lock_max_fps">現在のリフレッシュレート上限をロック</string> <string name="lock_max_fps">現在のリフレッシュレート上限をロック</string>
<string name="ui">インタフェース</string> <string name="ui">インタフェース</string>
<string name="delete_on_post_notification">「他のアプリの上に表示」通知を削除</string> <string name="delete_on_post_notification">「他のアプリの上に表示」通知を削除</string>
@@ -47,7 +46,6 @@
<string name="hide_status_bar_network_speed_second">ネットワーク速度の単位(/s)を隠す</string> <string name="hide_status_bar_network_speed_second">ネットワーク速度の単位(/s)を隠す</string>
<string name="menu">メニュー</string> <string name="menu">メニュー</string>
<string name="Tips">注意事項</string> <string name="Tips">注意事項</string>
<string name="skip_waiting_time">5/10秒間の警告時間をスキップ</string>
<string name="unlock_unlimited_cropping">写真・スクリーンショットをトリミングする際の制限を解除する</string> <string name="unlock_unlimited_cropping">写真・スクリーンショットをトリミングする際の制限を解除する</string>
<string name="hide_slave_wifi_icon">Wi-Fiセカンダリアイコンを隠す</string> <string name="hide_slave_wifi_icon">Wi-Fiセカンダリアイコンを隠す</string>
<string name="HideLauncherIcon">ランチャーアイコンを隠す</string> <string name="HideLauncherIcon">ランチャーアイコンを隠す</string>
@@ -154,8 +152,6 @@
<string name="participate_in_translation_summary">翻訳を手伝ってください!</string> <string name="participate_in_translation_summary">翻訳を手伝ってください!</string>
<string name="lock_screen_charging_current">充電中に現在の情報を表示</string> <string name="lock_screen_charging_current">充電中に現在の情報を表示</string>
<string name="current_current">現在</string> <string name="current_current">現在</string>
<string name="remove_open_app_confirmation_popup">アプリポップアップを削除</string>
<string name="remove_open_app_confirmation_popup_summary">「外部アプリを開く」ポップアップを削除します</string>
<string name="hide_volume_icon">音量アイコンを非表示</string> <string name="hide_volume_icon">音量アイコンを非表示</string>
<string name="hide_zen_icon">ZENアイコンを隠す</string> <string name="hide_zen_icon">ZENアイコンを隠す</string>
<string name="hide_icon">アイコンを隠す</string> <string name="hide_icon">アイコンを隠す</string>

View File

@@ -47,7 +47,7 @@
<string name="hide_status_bar_network_speed_second">Ascunde unitățile de viteză a rețelei (/s)</string> <string name="hide_status_bar_network_speed_second">Ascunde unitățile de viteză a rețelei (/s)</string>
<string name="menu">Meniu</string> <string name="menu">Meniu</string>
<string name="Tips">Sfaturi</string> <string name="Tips">Sfaturi</string>
<string name="skip_waiting_time">Omite timpul de avertizare de 5/10 secunde</string> <string name="skip_waiting_time">Se omite timpul de avertizare de 5/10 secunde</string>
<string name="unlock_unlimited_cropping">Elimină restricția la decuparea fotografiilor/capturilor de ecran</string> <string name="unlock_unlimited_cropping">Elimină restricția la decuparea fotografiilor/capturilor de ecran</string>
<string name="hide_slave_wifi_icon">Ascunde pictograma secundară WIFI</string> <string name="hide_slave_wifi_icon">Ascunde pictograma secundară WIFI</string>
<string name="HideLauncherIcon">Ascunde pictograma în lansator</string> <string name="HideLauncherIcon">Ascunde pictograma în lansator</string>
@@ -187,4 +187,12 @@
<string name="range">Interval: </string> <string name="range">Interval: </string>
<string name="big_mobile_type_icon_left_and_right_margins">Pictogramă mare tip date mobil, marginile din stânga și din dreapta</string> <string name="big_mobile_type_icon_left_and_right_margins">Pictogramă mare tip date mobil, marginile din stânga și din dreapta</string>
<string name="cast">Proiectare</string> <string name="cast">Proiectare</string>
<string name="force_support_send_app">Forțează trimiterea tuturor aplicațiilor către alt dispozitiv</string>
<string name="status_bar_time_double_line_center_align">Aliniere rândului dublu la centru</string>
<string name="default1">Implicit</string>
<string name="clock_center">Ceas la centru</string>
<string name="clock_right">Ceas la dreapta</string>
<string name="status_bar_layout_mode">Aspect bară de stare</string>
<string name="clock_center_and_icon_left">Ceas la centru și pictograme în stânga</string>
<string name="maximum_number_of_notification_icons">Numărul maxim de pictograme de notificare</string>
</resources> </resources>

View File

@@ -47,7 +47,7 @@
<string name="hide_status_bar_network_speed_second">Скрыть единицы измерения скорости сети</string> <string name="hide_status_bar_network_speed_second">Скрыть единицы измерения скорости сети</string>
<string name="menu">Варианты перезагрузки</string> <string name="menu">Варианты перезагрузки</string>
<string name="Tips">Подсказка</string> <string name="Tips">Подсказка</string>
<string name="skip_waiting_time">Пропустить 5/10 секундное время предупреждения</string> <string name="skip_waiting_time">Пропустить 5/10 секундное уведомление</string>
<string name="unlock_unlimited_cropping">Снять ограничение на обрезку изображений/скриншотов</string> <string name="unlock_unlimited_cropping">Снять ограничение на обрезку изображений/скриншотов</string>
<string name="hide_slave_wifi_icon">Скрыть вторичный wifi</string> <string name="hide_slave_wifi_icon">Скрыть вторичный wifi</string>
<string name="HideLauncherIcon">Скрыть иконку с рабочего стола</string> <string name="HideLauncherIcon">Скрыть иконку с рабочего стола</string>
@@ -193,4 +193,10 @@
<string name="cast">Трансляция</string> <string name="cast">Трансляция</string>
<string name="force_support_send_app">Принудительно открывать все приложения на другом устройстве</string> <string name="force_support_send_app">Принудительно открывать все приложения на другом устройстве</string>
<string name="status_bar_time_double_line_center_align">Выравнивание по центру двойной строки</string> <string name="status_bar_time_double_line_center_align">Выравнивание по центру двойной строки</string>
<string name="default1">Ум</string>
<string name="clock_center">Часы по центру</string>
<string name="clock_right">Часы справа</string>
<string name="status_bar_layout_mode">Стиль строки состояния</string>
<string name="clock_center_and_icon_left">Часы по центру и иконки слева</string>
<string name="maximum_number_of_notification_icons">Максимальное количество значков уведомлений</string>
</resources> </resources>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="performance">Performans</string> <string name="performance">Performans </string>
<string name="lock_max_fps">Geçerli yenileme hızı üst sınırını kilitle</string> <string name="lock_max_fps">Geçerli yenileme hızı üst sınırını kilitle</string>
<string name="ui">Arayüz </string> <string name="ui">Arayüz </string>
<string name="delete_on_post_notification">Bildirim üzerinden ekranı kaldır</string> <string name="delete_on_post_notification">Bildirim üzerinden ekranı kaldır</string>
@@ -48,7 +48,7 @@
<string name="hide_status_bar_network_speed_second">Ağ hızı (/s) birimlerini gizle</string> <string name="hide_status_bar_network_speed_second">Ağ hızı (/s) birimlerini gizle</string>
<string name="menu">Menü</string> <string name="menu">Menü</string>
<string name="Tips">İpuçları</string> <string name="Tips">İpuçları</string>
<string name="skip_waiting_time">5/10 saniyelik uyarı süresini atla</string> <string name="skip_waiting_time">5/10 saniye uyarı süresini atla</string>
<string name="unlock_unlimited_cropping">Resimleri/ekran görüntülerini kırpma kısıtlamasını kaldırın</string> <string name="unlock_unlimited_cropping">Resimleri/ekran görüntülerini kırpma kısıtlamasını kaldırın</string>
<string name="hide_slave_wifi_icon">WIFI ikincil simgesini gizle</string> <string name="hide_slave_wifi_icon">WIFI ikincil simgesini gizle</string>
<string name="HideLauncherIcon">Başlatıcı simgesini gizle</string> <string name="HideLauncherIcon">Başlatıcı simgesini gizle</string>
@@ -155,7 +155,7 @@
<string name="participate_in_translation_summary">Uygulamayı kendi dilinize çevirmemize yardımcı olun</string> <string name="participate_in_translation_summary">Uygulamayı kendi dilinize çevirmemize yardımcı olun</string>
<string name="lock_screen_charging_current">Şarj sırasında mevcut bilgileri görüntüleyin</string> <string name="lock_screen_charging_current">Şarj sırasında mevcut bilgileri görüntüleyin</string>
<string name="current_current">Akım </string> <string name="current_current">Akım </string>
<string name="remove_open_app_confirmation_popup">açık uygulama açılır penceresini kaldır</string> <string name="remove_open_app_confirmation_popup">Açık uygulama açılır penceresini kaldır</string>
<string name="remove_open_app_confirmation_popup_summary">\"XXX\'in XXX\'i açmasına izin ver\" Zincir başlatma açılır penceresini kaldırın</string> <string name="remove_open_app_confirmation_popup_summary">\"XXX\'in XXX\'i açmasına izin ver\" Zincir başlatma açılır penceresini kaldırın</string>
<string name="hide_volume_icon">Ses Düzeyi simgesini gizle</string> <string name="hide_volume_icon">Ses Düzeyi simgesini gizle</string>
<string name="hide_zen_icon">ZEN simgesini gizle</string> <string name="hide_zen_icon">ZEN simgesini gizle</string>
@@ -187,4 +187,12 @@
<string name="input_error">Giriş hatası</string> <string name="input_error">Giriş hatası</string>
<string name="range">Menzil:</string> <string name="range">Menzil:</string>
<string name="big_mobile_type_icon_left_and_right_margins">Büyük mobil tip simgesi sol ve sağ kenar boşlukları</string> <string name="big_mobile_type_icon_left_and_right_margins">Büyük mobil tip simgesi sol ve sağ kenar boşlukları</string>
<string name="cast">Yayınlama</string>
<string name="force_support_send_app">Tüm uygulama desteğini başka bir cihazda açmaya zorla</string>
<string name="status_bar_time_double_line_center_align">Çift sıralı merkez hizalama</string>
<string name="default1">Varsayılan </string>
<string name="clock_center">Merkezi saat</string>
<string name="clock_right">Saat Sağ</string>
<string name="status_bar_layout_mode">Durum çubuğu düzeni modu</string>
<string name="clock_center_and_icon_left">Saat Merkezi ve Sol Simge</string>
</resources> </resources>

View File

@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="performance">Hiệu năng</string>
<string name="lock_max_fps">Khoá giới hạn tốc độ làm mới hiện tại</string> <string name="lock_max_fps">Khoá giới hạn tốc độ làm mới hiện tại</string>
<string name="ui">Giao diện</string> <string name="ui">Giao diện</string>
<string name="delete_on_post_notification">Xoá thông báo hiển thị trên ứng dụng khác</string> <string name="delete_on_post_notification">Xoá thông báo hiển thị trên ứng dụng khác</string>
@@ -47,7 +46,6 @@
<string name="hide_status_bar_network_speed_second">Ẩn đơn vị tốc độ mạng (/s)</string> <string name="hide_status_bar_network_speed_second">Ẩn đơn vị tốc độ mạng (/s)</string>
<string name="menu">Menu</string> <string name="menu">Menu</string>
<string name="Tips">Mẹo</string> <string name="Tips">Mẹo</string>
<string name="skip_waiting_time">Bỏ qua 5/10 giây cảnh báo</string>
<string name="unlock_unlimited_cropping">Bỏ qua danh sách đen hệ thống và phần mềm cấm cửa sổ nhỏ</string> <string name="unlock_unlimited_cropping">Bỏ qua danh sách đen hệ thống và phần mềm cấm cửa sổ nhỏ</string>
<string name="hide_slave_wifi_icon">Ẩn biểu tượng WIFI thứ hai</string> <string name="hide_slave_wifi_icon">Ẩn biểu tượng WIFI thứ hai</string>
<string name="HideLauncherIcon">Ẩn biểu tượng ứng dụng này khỏi màn hình chính</string> <string name="HideLauncherIcon">Ẩn biểu tượng ứng dụng này khỏi màn hình chính</string>
@@ -154,9 +152,6 @@
<string name="participate_in_translation_summary">Giúp chúng tôi dịch ứng dụng sang ngôn ngữ của bạn</string> <string name="participate_in_translation_summary">Giúp chúng tôi dịch ứng dụng sang ngôn ngữ của bạn</string>
<string name="lock_screen_charging_current">Hiển thị thông tin hiện tại trong khi sạc</string> <string name="lock_screen_charging_current">Hiển thị thông tin hiện tại trong khi sạc</string>
<string name="current_current">Hiện tại</string> <string name="current_current">Hiện tại</string>
<string name="remove_open_app_confirmation_popup">xóa cửa sổ bật lên ứng dụng đang mở</string>
<string name="remove_open_app_confirmation_popup_summary">loại bỏ \"Cho phép XXX mở XXX\" Cửa sổ bật lên bắt đầu chuỗi
TIẾP TỤC</string>
<string name="hide_volume_icon">Ẩn biểu tượng Âm lượng</string> <string name="hide_volume_icon">Ẩn biểu tượng Âm lượng</string>
<string name="hide_zen_icon">Ẩn biểu tượng ZEN</string> <string name="hide_zen_icon">Ẩn biểu tượng ZEN</string>
<string name="hide_icon">Ẩn biểu tượng</string> <string name="hide_icon">Ẩn biểu tượng</string>

View File

@@ -189,4 +189,10 @@
<string name="cast">投屏</string> <string name="cast">投屏</string>
<string name="force_support_send_app">强制所有应用支持在另一个设备打开</string> <string name="force_support_send_app">强制所有应用支持在另一个设备打开</string>
<string name="status_bar_time_double_line_center_align">双排居中对齐</string> <string name="status_bar_time_double_line_center_align">双排居中对齐</string>
<string name="default1">默认</string>
<string name="clock_center">时钟居中</string>
<string name="clock_right">时钟居右</string>
<string name="status_bar_layout_mode">状态栏布局模式</string>
<string name="clock_center_and_icon_left">时间居中+左侧图标</string>
<string name="maximum_number_of_notification_icons">通知图标最大数量</string>
</resources> </resources>

View File

@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="performance">性能</string>
<string name="lock_max_fps">鎖定當前刷新率上限</string> <string name="lock_max_fps">鎖定當前刷新率上限</string>
<string name="ui">界面</string> <string name="ui">界面</string>
<string name="delete_on_post_notification">移除上層顯示通知</string> <string name="delete_on_post_notification">移除上層顯示通知</string>
@@ -47,7 +46,6 @@
<string name="hide_status_bar_network_speed_second">隱藏網速(/s單位</string> <string name="hide_status_bar_network_speed_second">隱藏網速(/s單位</string>
<string name="menu">菜單</string> <string name="menu">菜單</string>
<string name="Tips">提示</string> <string name="Tips">提示</string>
<string name="skip_waiting_time">跳過 5/10 秒警告時間</string>
<string name="unlock_unlimited_cropping">移除裁剪圖片/螢幕截圖的限制</string> <string name="unlock_unlimited_cropping">移除裁剪圖片/螢幕截圖的限制</string>
<string name="hide_slave_wifi_icon">隱藏 WIFI輔助 圖標</string> <string name="hide_slave_wifi_icon">隱藏 WIFI輔助 圖標</string>
<string name="HideLauncherIcon">隱藏桌面圖標</string> <string name="HideLauncherIcon">隱藏桌面圖標</string>
@@ -154,8 +152,6 @@
<string name="participate_in_translation_summary">幫助我們將這個APP翻譯成您的語言</string> <string name="participate_in_translation_summary">幫助我們將這個APP翻譯成您的語言</string>
<string name="lock_screen_charging_current">充電時顯示當前電流</string> <string name="lock_screen_charging_current">充電時顯示當前電流</string>
<string name="current_current">當前電流</string> <string name="current_current">當前電流</string>
<string name="remove_open_app_confirmation_popup">移除打開應用彈窗</string>
<string name="remove_open_app_confirmation_popup_summary">移除 \"XXX 想要打開 XXX\" 的彈窗 。</string>
<string name="hide_volume_icon">隱藏 音量 圖標</string> <string name="hide_volume_icon">隱藏 音量 圖標</string>
<string name="hide_zen_icon">隱藏 勿擾 圖標</string> <string name="hide_zen_icon">隱藏 勿擾 圖標</string>
<string name="hide_icon">隱藏圖標</string> <string name="hide_icon">隱藏圖標</string>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="performance">表現</string> <string name="performance">性能</string>
<string name="lock_max_fps">鎖定螢幕更新率上限</string> <string name="lock_max_fps">鎖定螢幕更新率上限</string>
<string name="ui">介面</string> <string name="ui">介面</string>
<string name="delete_on_post_notification">移除上層顯示通知</string> <string name="delete_on_post_notification">移除上層顯示通知</string>
@@ -66,7 +66,7 @@
<string name="status_bar_time_period">顯示時段</string> <string name="status_bar_time_period">顯示時段</string>
<string name="status_bar_time_double_line">雙行顯示</string> <string name="status_bar_time_double_line">雙行顯示</string>
<string name="status_bar_clock_size">時鐘大小0不更改</string> <string name="status_bar_clock_size">時鐘大小0不更改</string>
<string name="status_bar_clock_double_line_size">大小0不更改</string> <string name="status_bar_clock_double_line_size">大小0不更改</string>
<string name="matters_needing_attention">功能無法生效?</string> <string name="matters_needing_attention">功能無法生效?</string>
<string name="Done">確定</string> <string name="Done">確定</string>
<string name="about_module_summary">查看模組相關訊息</string> <string name="about_module_summary">查看模組相關訊息</string>
@@ -170,7 +170,7 @@
<string name="status_bar_dual_row_network_speed">雙行網路速度</string> <string name="status_bar_dual_row_network_speed">雙行網路速度</string>
<string name="status_bar_dual_row_network_speed_summary">上下行網路速度顯示</string> <string name="status_bar_dual_row_network_speed_summary">上下行網路速度顯示</string>
<string name="status_bar_network_speed">狀態欄網路速度</string> <string name="status_bar_network_speed">狀態欄網路速度</string>
<string name="status_bar_network_speed_dual_row_size">大小0不更改</string> <string name="status_bar_network_speed_dual_row_size">大小0不更改</string>
<string name="status_bar_network_speed_dual_row_icon">雙行圖示</string> <string name="status_bar_network_speed_dual_row_icon">雙行圖示</string>
<string name="none"></string> <string name="none"></string>
<string name="status_bar_network_speed_dual_row_gravity">雙行網速對齊</string> <string name="status_bar_network_speed_dual_row_gravity">雙行網速對齊</string>
@@ -186,4 +186,13 @@
<string name="input_error">輸入錯誤</string> <string name="input_error">輸入錯誤</string>
<string name="range">範圍:</string> <string name="range">範圍:</string>
<string name="big_mobile_type_icon_left_and_right_margins">大行動網路圖示左右邊距</string> <string name="big_mobile_type_icon_left_and_right_margins">大行動網路圖示左右邊距</string>
<string name="cast">接力</string>
<string name="force_support_send_app">允許所有應用使用接力</string>
<string name="status_bar_time_double_line_center_align">雙行居中對齊</string>
<string name="default1">預設值</string>
<string name="clock_center">時鐘置中</string>
<string name="clock_right">時鐘置右</string>
<string name="status_bar_layout_mode">狀態欄布局模式</string>
<string name="clock_center_and_icon_left">時間居中+圖示置左</string>
<string name="maximum_number_of_notification_icons">通知圖示最大數量</string>
</resources> </resources>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="app_name" translatable="false">Simplicity Tools</string> <string name="app_name" translatable="false">Simplicity Tools</string>
<string name="performance">Performence</string> <string name="performance">Performance</string>
<string name="lock_max_fps">Lock the current refresh rate upper limit</string> <string name="lock_max_fps">Lock the current refresh rate upper limit</string>
<string name="ui">Interface</string> <string name="ui">Interface</string>
<string name="delete_on_post_notification">Remove display over notification</string> <string name="delete_on_post_notification">Remove display over notification</string>
@@ -51,7 +51,7 @@
<string name="hide_status_bar_network_speed_second">Hide network speed (/s) units</string> <string name="hide_status_bar_network_speed_second">Hide network speed (/s) units</string>
<string name="menu">Menu</string> <string name="menu">Menu</string>
<string name="Tips">Tips</string> <string name="Tips">Tips</string>
<string name="skip_waiting_time">Skip 5/10 second warning time</string> <string name="skip_waiting_time">Skip 5/10 seconds warning time</string>
<string name="unlock_unlimited_cropping">Remove restriction on cropping pictures/screenshots</string> <string name="unlock_unlimited_cropping">Remove restriction on cropping pictures/screenshots</string>
<string name="hide_slave_wifi_icon">Hide WIFI secondary icon</string> <string name="hide_slave_wifi_icon">Hide WIFI secondary icon</string>
<string name="HideLauncherIcon">Hide Launcher icon</string> <string name="HideLauncherIcon">Hide Launcher icon</string>
@@ -158,8 +158,8 @@
<string name="participate_in_translation_summary">Help us translate the app into your language</string> <string name="participate_in_translation_summary">Help us translate the app into your language</string>
<string name="lock_screen_charging_current">Display current information during charging</string> <string name="lock_screen_charging_current">Display current information during charging</string>
<string name="current_current">Current</string> <string name="current_current">Current</string>
<string name="remove_open_app_confirmation_popup">remove open app popup</string> <string name="remove_open_app_confirmation_popup">Remove open app popup</string>
<string name="remove_open_app_confirmation_popup_summary">remove \"Allow XXX to open XXX\" Chain start popup</string> <string name="remove_open_app_confirmation_popup_summary">Remove \"Allow XXX to open XXX\" Chain start popup</string>
<string name="hide_volume_icon">Hide Volume icon</string> <string name="hide_volume_icon">Hide Volume icon</string>
<string name="hide_zen_icon">Hide ZEN icon</string> <string name="hide_zen_icon">Hide ZEN icon</string>
<string name="hide_icon">Hide Icon</string> <string name="hide_icon">Hide Icon</string>
@@ -193,4 +193,10 @@
<string name="cast">Cast</string> <string name="cast">Cast</string>
<string name="force_support_send_app">Force all apps support open on another device</string> <string name="force_support_send_app">Force all apps support open on another device</string>
<string name="status_bar_time_double_line_center_align">Dual row center align</string> <string name="status_bar_time_double_line_center_align">Dual row center align</string>
<string name="default1">Default</string>
<string name="clock_center">Clock Center</string>
<string name="clock_right">Clock Right</string>
<string name="status_bar_layout_mode">Status bar layout mode</string>
<string name="clock_center_and_icon_left">Clock Center and Icon Left</string>
<string name="maximum_number_of_notification_icons">Maximum number of notification icons</string>
</resources> </resources>