Remove memory limit settings
This commit is contained in:
@@ -131,7 +131,6 @@ class BoxService(private val service: Service, private val platformInterface: Pl
|
||||
}
|
||||
|
||||
DefaultNetworkMonitor.start()
|
||||
Libbox.setMemoryLimit(!Settings.disableMemoryLimit)
|
||||
|
||||
try {
|
||||
commandServer.startOrReloadService(
|
||||
|
||||
@@ -16,23 +16,18 @@ import androidx.compose.foundation.layout.fillMaxWidth
|
||||
import androidx.compose.foundation.layout.height
|
||||
import androidx.compose.foundation.layout.padding
|
||||
import androidx.compose.foundation.rememberScrollState
|
||||
import androidx.compose.foundation.shape.RoundedCornerShape
|
||||
import androidx.compose.foundation.verticalScroll
|
||||
import androidx.compose.material.icons.Icons
|
||||
import androidx.compose.material.icons.automirrored.filled.ArrowBack
|
||||
import androidx.compose.material.icons.outlined.BatteryChargingFull
|
||||
import androidx.compose.material.icons.outlined.Memory
|
||||
import androidx.compose.material3.Button
|
||||
import androidx.compose.material3.Card
|
||||
import androidx.compose.material3.CardDefaults
|
||||
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.IconButton
|
||||
import androidx.compose.material3.ListItem
|
||||
import androidx.compose.material3.ListItemDefaults
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.OutlinedButton
|
||||
import androidx.compose.material3.Switch
|
||||
import androidx.compose.material3.Text
|
||||
import androidx.compose.material3.TopAppBar
|
||||
import androidx.compose.runtime.Composable
|
||||
@@ -40,12 +35,9 @@ import androidx.compose.runtime.LaunchedEffect
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.mutableStateOf
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.runtime.rememberCoroutineScope
|
||||
import androidx.compose.runtime.setValue
|
||||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.draw.clip
|
||||
import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.platform.LocalContext
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
@@ -53,13 +45,8 @@ import androidx.compose.ui.unit.dp
|
||||
import androidx.navigation.NavController
|
||||
import io.nekohasekai.sfa.R
|
||||
import io.nekohasekai.sfa.bg.ServiceConnection
|
||||
import io.nekohasekai.sfa.compose.base.GlobalEventBus
|
||||
import io.nekohasekai.sfa.compose.base.UiEvent
|
||||
import io.nekohasekai.sfa.compose.topbar.OverrideTopBar
|
||||
import io.nekohasekai.sfa.database.Settings
|
||||
import io.nekohasekai.sfa.ktx.launchCustomTab
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
@OptIn(ExperimentalMaterial3Api::class)
|
||||
@Composable
|
||||
@@ -79,11 +66,8 @@ fun ServiceSettingsScreen(navController: NavController, serviceConnection: Servi
|
||||
}
|
||||
|
||||
val context = LocalContext.current
|
||||
val scope = rememberCoroutineScope()
|
||||
// Check battery optimization status
|
||||
var isBatteryOptimizationIgnored by remember { mutableStateOf(false) }
|
||||
var ignoreMemoryLimit by remember { mutableStateOf(Settings.disableMemoryLimit) }
|
||||
|
||||
// Activity result launcher for battery optimization permission
|
||||
val requestBatteryOptimizationLauncher =
|
||||
rememberLauncherForActivityResult(
|
||||
@@ -187,56 +171,6 @@ fun ServiceSettingsScreen(navController: NavController, serviceConnection: Servi
|
||||
}
|
||||
}
|
||||
|
||||
// Options Section
|
||||
Card(
|
||||
modifier =
|
||||
Modifier
|
||||
.fillMaxWidth()
|
||||
.padding(horizontal = 16.dp),
|
||||
colors =
|
||||
CardDefaults.cardColors(
|
||||
containerColor = MaterialTheme.colorScheme.surfaceContainer,
|
||||
),
|
||||
) {
|
||||
ListItem(
|
||||
headlineContent = {
|
||||
Text(
|
||||
stringResource(R.string.ignore_memory_limit),
|
||||
style = MaterialTheme.typography.bodyLarge,
|
||||
)
|
||||
},
|
||||
supportingContent = {
|
||||
Text(
|
||||
stringResource(R.string.ignore_memory_limit_description),
|
||||
style = MaterialTheme.typography.bodyMedium,
|
||||
color = MaterialTheme.colorScheme.onSurfaceVariant,
|
||||
modifier = Modifier.padding(top = 4.dp),
|
||||
)
|
||||
},
|
||||
leadingContent = {
|
||||
Icon(
|
||||
imageVector = Icons.Outlined.Memory,
|
||||
contentDescription = null,
|
||||
tint = MaterialTheme.colorScheme.primary,
|
||||
)
|
||||
},
|
||||
trailingContent = {
|
||||
Switch(checked = ignoreMemoryLimit, onCheckedChange = { checked ->
|
||||
ignoreMemoryLimit = checked
|
||||
scope.launch(Dispatchers.IO) {
|
||||
Settings.disableMemoryLimit = checked
|
||||
GlobalEventBus.tryEmit(UiEvent.RestartToTakeEffect)
|
||||
}
|
||||
})
|
||||
},
|
||||
modifier = Modifier.clip(RoundedCornerShape(12.dp)),
|
||||
colors =
|
||||
ListItemDefaults.colors(
|
||||
containerColor = Color.Transparent,
|
||||
),
|
||||
)
|
||||
}
|
||||
|
||||
Spacer(modifier = Modifier.height(16.dp))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,7 +9,6 @@ object SettingsKey {
|
||||
const val SILENT_INSTALL_ENABLED = "silent_install_enabled"
|
||||
const val SILENT_INSTALL_METHOD = "silent_install_method"
|
||||
const val AUTO_UPDATE_ENABLED = "auto_update_enabled"
|
||||
const val DISABLE_MEMORY_LIMIT = "disable_memory_limit"
|
||||
const val DYNAMIC_NOTIFICATION = "dynamic_notification"
|
||||
const val DISABLE_DEPRECATED_WARNINGS = "disable_deprecated_warnings"
|
||||
|
||||
|
||||
@@ -63,7 +63,6 @@ object Settings {
|
||||
}
|
||||
}
|
||||
var autoUpdateEnabled by dataStore.boolean(SettingsKey.AUTO_UPDATE_ENABLED) { false }
|
||||
var disableMemoryLimit by dataStore.boolean(SettingsKey.DISABLE_MEMORY_LIMIT)
|
||||
var dynamicNotification by dataStore.boolean(SettingsKey.DYNAMIC_NOTIFICATION) { true }
|
||||
var disableDeprecatedWarnings by dataStore.boolean(SettingsKey.DISABLE_DEPRECATED_WARNINGS) { false }
|
||||
|
||||
|
||||
@@ -199,8 +199,6 @@
|
||||
<string name="sponsor">حامی مالی</string>
|
||||
<string name="working_directory">پوشه کاری</string>
|
||||
<string name="disable_deprecated_warnings">غیرفعالکردن هشدارهای منسوخ</string>
|
||||
<string name="ignore_memory_limit">نادیده گرفتن محدودیت حافظه</string>
|
||||
<string name="ignore_memory_limit_description">محدودیت حافظه روی sing-box اعمال نشود.</string>
|
||||
<string name="notification_settings">اعلانها</string>
|
||||
<string name="enable_notification">فعالکردن اعلان</string>
|
||||
<string name="dynamic_notification">نمایش سرعت بلادرنگ در اعلان</string>
|
||||
|
||||
@@ -199,8 +199,6 @@
|
||||
<string name="sponsor">Поддержать</string>
|
||||
<string name="working_directory">Рабочая директория</string>
|
||||
<string name="disable_deprecated_warnings">Отключить предупреждения об устаревании</string>
|
||||
<string name="ignore_memory_limit">Игнорировать ограничение памяти</string>
|
||||
<string name="ignore_memory_limit_description">Не применять ограничения по памяти для sing-box.</string>
|
||||
<string name="notification_settings">Уведомления</string>
|
||||
<string name="enable_notification">Включить уведомления</string>
|
||||
<string name="dynamic_notification">Отображать скорость в реальном времени в уведомлении</string>
|
||||
|
||||
@@ -199,8 +199,6 @@
|
||||
<string name="sponsor">赞助</string>
|
||||
<string name="working_directory">工作目录</string>
|
||||
<string name="disable_deprecated_warnings">禁用弃用警告</string>
|
||||
<string name="ignore_memory_limit">忽略内存限制</string>
|
||||
<string name="ignore_memory_limit_description">不对 sing-box 强制执行内存限制。</string>
|
||||
<string name="notification_settings">通知</string>
|
||||
<string name="enable_notification">启用通知</string>
|
||||
<string name="dynamic_notification">在通知中显示实时网速</string>
|
||||
|
||||
@@ -199,8 +199,6 @@
|
||||
<string name="sponsor">贊助</string>
|
||||
<string name="working_directory">工作目錄</string>
|
||||
<string name="disable_deprecated_warnings">停用過時警告</string>
|
||||
<string name="ignore_memory_limit">忽略記憶體限制</string>
|
||||
<string name="ignore_memory_limit_description">不對 sing-box 強制執行記憶體限制。</string>
|
||||
<string name="notification_settings">通知</string>
|
||||
<string name="enable_notification">啟用通知</string>
|
||||
<string name="dynamic_notification">在通知中顯示即時網速</string>
|
||||
|
||||
@@ -199,8 +199,6 @@
|
||||
<string name="sponsor">Sponsor</string>
|
||||
<string name="working_directory">Working Directory</string>
|
||||
<string name="disable_deprecated_warnings">Disable Deprecated Warnings</string>
|
||||
<string name="ignore_memory_limit">Ignore Memory Limit</string>
|
||||
<string name="ignore_memory_limit_description">Do not enforce memory limits on sing-box.</string>
|
||||
<string name="notification_settings">Notification</string>
|
||||
<string name="enable_notification">Enable Notification</string>
|
||||
<string name="dynamic_notification">Display realtime speed in notification</string>
|
||||
|
||||
Reference in New Issue
Block a user