@@ -103,6 +103,7 @@ import com.rk.components.compose.preferences.base.PreferenceGroup
103103import com.rk.libcommons.application
104104import com.rk.libcommons.child
105105import com.rk.libcommons.dpToPx
106+ import com.rk.libcommons.localDir
106107import com.rk.libcommons.pendingCommand
107108import com.rk.resources.strings
108109import com.rk.settings.Settings
@@ -116,14 +117,17 @@ import com.rk.terminal.ui.screens.terminal.virtualkeys.VirtualKeysInfo
116117import com.rk.terminal.ui.screens.terminal.virtualkeys.VirtualKeysListener
117118import com.rk.terminal.ui.screens.terminal.virtualkeys.VirtualKeysView
118119import com.rk.terminal.ui.theme.KarbonTheme
120+ import com.termux.terminal.TerminalColors
119121import com.termux.view.TerminalView
120122import kotlinx.coroutines.Dispatchers
121123import kotlinx.coroutines.delay
122124import kotlinx.coroutines.isActive
123125import kotlinx.coroutines.launch
124126import kotlinx.coroutines.withContext
125127import java.io.File
128+ import java.io.FileInputStream
126129import java.lang.ref.WeakReference
130+ import java.util.Properties
127131
128132var terminalView = WeakReference <TerminalView ?>(null )
129133var virtualKeysView = WeakReference <VirtualKeysView ?>(null )
@@ -216,6 +220,7 @@ fun TerminalScreen(
216220 terminalView.get()?.apply {
217221 onScreenUpdated()
218222
223+
219224 mEmulator?.mColors?.mCurrentColors?.apply {
220225 set(256 , getViewColor())
221226 set(258 , getViewColor())
@@ -506,6 +511,15 @@ fun TerminalScreen(
506511 set(256 , color)
507512 set(258 , color)
508513 }
514+
515+ val colorsFile = localDir().child(" colors.properties" )
516+ if (colorsFile.exists() && colorsFile.isFile){
517+ val props = Properties ()
518+ FileInputStream (colorsFile).use { input ->
519+ props.load(input)
520+ }
521+ TerminalColors .COLOR_SCHEME .updateWith(props)
522+ }
509523 }
510524 }
511525 },
0 commit comments