diff --git a/src/main/kotlin/com/jetpackduba/gitnuro/Logging.kt b/src/main/kotlin/com/jetpackduba/gitnuro/Logging.kt index a4e30bd..0e46d76 100644 --- a/src/main/kotlin/com/jetpackduba/gitnuro/Logging.kt +++ b/src/main/kotlin/com/jetpackduba/gitnuro/Logging.kt @@ -2,14 +2,14 @@ package com.jetpackduba.gitnuro import com.jetpackduba.gitnuro.extensions.openDirectory import com.jetpackduba.gitnuro.system.OS -import com.jetpackduba.gitnuro.system.getCurrentOs +import com.jetpackduba.gitnuro.system.currentOs import org.apache.log4j.* import java.io.File fun initLogging() { val layout = PatternLayout("%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n") - val filePath = when (getCurrentOs()) { + val filePath = when (currentOs) { OS.LINUX -> linuxLogsPathAppender() OS.WINDOWS -> windowsLogsPathAppender() OS.MAC -> macosLogsPath() diff --git a/src/main/kotlin/com/jetpackduba/gitnuro/di/modules/ShellModule.kt b/src/main/kotlin/com/jetpackduba/gitnuro/di/modules/ShellModule.kt index 889cdf3..69a7a21 100644 --- a/src/main/kotlin/com/jetpackduba/gitnuro/di/modules/ShellModule.kt +++ b/src/main/kotlin/com/jetpackduba/gitnuro/di/modules/ShellModule.kt @@ -5,7 +5,7 @@ import com.jetpackduba.gitnuro.managers.FlatpakShellManager import com.jetpackduba.gitnuro.managers.IShellManager import com.jetpackduba.gitnuro.managers.ShellManager import com.jetpackduba.gitnuro.system.OS -import com.jetpackduba.gitnuro.system.getCurrentOs +import com.jetpackduba.gitnuro.system.currentOs import com.jetpackduba.gitnuro.terminal.ITerminalProvider import com.jetpackduba.gitnuro.terminal.LinuxTerminalProvider import com.jetpackduba.gitnuro.terminal.MacTerminalProvider @@ -34,7 +34,7 @@ class ShellModule { windowsTerminalProvider: Provider, macTerminalProvider: Provider, ): ITerminalProvider { - return when (getCurrentOs()) { + return when (currentOs) { OS.LINUX -> linuxTerminalProvider.get() OS.WINDOWS -> windowsTerminalProvider.get() OS.MAC -> macTerminalProvider.get() diff --git a/src/main/kotlin/com/jetpackduba/gitnuro/keybindings/Keybinding.kt b/src/main/kotlin/com/jetpackduba/gitnuro/keybindings/Keybinding.kt index 5d4602f..a24f8bc 100644 --- a/src/main/kotlin/com/jetpackduba/gitnuro/keybindings/Keybinding.kt +++ b/src/main/kotlin/com/jetpackduba/gitnuro/keybindings/Keybinding.kt @@ -5,7 +5,7 @@ package com.jetpackduba.gitnuro.keybindings import androidx.compose.ui.ExperimentalComposeUiApi import androidx.compose.ui.input.key.* import com.jetpackduba.gitnuro.system.OS -import com.jetpackduba.gitnuro.system.getCurrentOs +import com.jetpackduba.gitnuro.system.currentOs data class Keybinding( val alt: Boolean = false, @@ -85,7 +85,7 @@ private fun macKeybindings(): Map> { } val keybindings by lazy { - return@lazy when (getCurrentOs()) { + return@lazy when (currentOs) { OS.LINUX -> linuxKeybindings() OS.WINDOWS -> windowsKeybindings() OS.MAC -> macKeybindings() diff --git a/src/main/kotlin/com/jetpackduba/gitnuro/managers/AppFilesManager.kt b/src/main/kotlin/com/jetpackduba/gitnuro/managers/AppFilesManager.kt index d8ecd7e..5133043 100644 --- a/src/main/kotlin/com/jetpackduba/gitnuro/managers/AppFilesManager.kt +++ b/src/main/kotlin/com/jetpackduba/gitnuro/managers/AppFilesManager.kt @@ -1,7 +1,7 @@ package com.jetpackduba.gitnuro.managers import com.jetpackduba.gitnuro.system.OS -import com.jetpackduba.gitnuro.system.getCurrentOs +import com.jetpackduba.gitnuro.system.currentOs import com.jetpackduba.gitnuro.logging.printError import java.io.File import javax.inject.Inject @@ -10,7 +10,7 @@ private const val TAG = "AppFilesManager" class AppFilesManager @Inject constructor() { fun getAppFolder(): File { - val baseFolderPath = when (getCurrentOs()) { + val baseFolderPath = when (currentOs) { OS.LINUX -> { var configFolder: String? = System.getenv("XDG_CONFIG_HOME") diff --git a/src/main/kotlin/com/jetpackduba/gitnuro/preferences/AppSettings.kt b/src/main/kotlin/com/jetpackduba/gitnuro/preferences/AppSettings.kt index 342cfd6..ac4bffe 100644 --- a/src/main/kotlin/com/jetpackduba/gitnuro/preferences/AppSettings.kt +++ b/src/main/kotlin/com/jetpackduba/gitnuro/preferences/AppSettings.kt @@ -2,7 +2,7 @@ package com.jetpackduba.gitnuro.preferences import com.jetpackduba.gitnuro.extensions.defaultWindowPlacement import com.jetpackduba.gitnuro.system.OS -import com.jetpackduba.gitnuro.system.getCurrentOs +import com.jetpackduba.gitnuro.system.currentOs import com.jetpackduba.gitnuro.theme.ColorsScheme import com.jetpackduba.gitnuro.theme.Theme import com.jetpackduba.gitnuro.viewmodels.TextDiffType @@ -258,7 +258,7 @@ class AppSettings @Inject constructor() { // TODO migrate old prefs path to new one? fun initPreferencesPath() { - if (getCurrentOs() == OS.LINUX) { + if (currentOs == OS.LINUX) { val xdgConfigHome: String? = System.getenv("XDG_CONFIG_HOME") val settingsPath = if (xdgConfigHome.isNullOrBlank()) { diff --git a/src/main/kotlin/com/jetpackduba/gitnuro/system/OS.kt b/src/main/kotlin/com/jetpackduba/gitnuro/system/OS.kt index 5646fdf..48a9170 100644 --- a/src/main/kotlin/com/jetpackduba/gitnuro/system/OS.kt +++ b/src/main/kotlin/com/jetpackduba/gitnuro/system/OS.kt @@ -18,11 +18,11 @@ enum class OS { fun isMac() = this == MAC } -fun getCurrentOs(): OS { +val currentOs by lazy { val os = System.getProperty("os.name").lowercase() printLog(TAG, "OS is $os") - return when { + return@lazy when { os.contains("linux") -> OS.LINUX os.contains("windows") -> OS.WINDOWS os.contains("mac") -> OS.MAC @@ -30,7 +30,6 @@ fun getCurrentOs(): OS { } } - val systemSeparator: String by lazy { FileSystems.getDefault().separator } diff --git a/src/main/kotlin/com/jetpackduba/gitnuro/system/OpenFilePickerUseCase.kt b/src/main/kotlin/com/jetpackduba/gitnuro/system/OpenFilePickerUseCase.kt index ad76f66..c7a4b70 100644 --- a/src/main/kotlin/com/jetpackduba/gitnuro/system/OpenFilePickerUseCase.kt +++ b/src/main/kotlin/com/jetpackduba/gitnuro/system/OpenFilePickerUseCase.kt @@ -21,9 +21,8 @@ class OpenFilePickerUseCase @Inject constructor( private val shellManager: ShellManager ) { operator fun invoke(pickerType: PickerType, basePath: String?): String? { - val os = getCurrentOs() - val isLinux = os.isLinux() - val isMac = os.isMac() + val isLinux = currentOs.isLinux() + val isMac = currentOs.isMac() return if (isLinux) { openDirectoryDialogLinux(pickerType) diff --git a/src/main/kotlin/com/jetpackduba/gitnuro/system/OpenPathInSystemUseCase.kt b/src/main/kotlin/com/jetpackduba/gitnuro/system/OpenPathInSystemUseCase.kt index fe40a56..70f1575 100644 --- a/src/main/kotlin/com/jetpackduba/gitnuro/system/OpenPathInSystemUseCase.kt +++ b/src/main/kotlin/com/jetpackduba/gitnuro/system/OpenPathInSystemUseCase.kt @@ -19,7 +19,7 @@ class OpenPathInSystemUseCase @Inject constructor( private val shellManager: ShellManager ) { operator fun invoke(path: String): Boolean { - when (getCurrentOs()) { + when (currentOs) { OS.LINUX -> { if (shellManager.runCommandWithoutResult(listOf("xdg-open", path))) return true