Fixed uninitialized modules being opened

This commit is contained in:
Abdelilah El Aissaoui 2023-05-25 23:56:51 +02:00
parent b76f75f3b0
commit 8a48e51469
No known key found for this signature in database
GPG Key ID: 7587FC860F594869
3 changed files with 16 additions and 2 deletions

View File

@ -0,0 +1,8 @@
package com.jetpackduba.gitnuro.extensions
import org.eclipse.jgit.submodule.SubmoduleStatusType
fun SubmoduleStatusType.isValid(): Boolean {
return this == SubmoduleStatusType.INITIALIZED ||
this == SubmoduleStatusType.REV_CHECKED_OUT
}

View File

@ -14,6 +14,7 @@ import androidx.compose.ui.unit.dp
import com.jetpackduba.gitnuro.AppIcons import com.jetpackduba.gitnuro.AppIcons
import com.jetpackduba.gitnuro.extensions.handOnHover import com.jetpackduba.gitnuro.extensions.handOnHover
import com.jetpackduba.gitnuro.extensions.isLocal import com.jetpackduba.gitnuro.extensions.isLocal
import com.jetpackduba.gitnuro.extensions.isValid
import com.jetpackduba.gitnuro.extensions.simpleName import com.jetpackduba.gitnuro.extensions.simpleName
import com.jetpackduba.gitnuro.theme.onBackgroundSecondary import com.jetpackduba.gitnuro.theme.onBackgroundSecondary
import com.jetpackduba.gitnuro.ui.components.* import com.jetpackduba.gitnuro.ui.components.*
@ -552,7 +553,11 @@ private fun Submodule(
SideMenuSubentry( SideMenuSubentry(
text = submodule.first, text = submodule.first,
iconResourcePath = AppIcons.TOPIC, iconResourcePath = AppIcons.TOPIC,
onClick = onOpenSubmoduleInTab, onClick = {
if (submodule.second.type.isValid()) {
onOpenSubmoduleInTab()
}
},
) { ) {
val stateName = submodule.second.type.toString() val stateName = submodule.second.type.toString()
Tooltip(stateName) { Tooltip(stateName) {

View File

@ -2,6 +2,7 @@ package com.jetpackduba.gitnuro.ui.context_menu
import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.painterResource
import com.jetpackduba.gitnuro.AppIcons import com.jetpackduba.gitnuro.AppIcons
import com.jetpackduba.gitnuro.extensions.isValid
import org.eclipse.jgit.submodule.SubmoduleStatus import org.eclipse.jgit.submodule.SubmoduleStatus
import org.eclipse.jgit.submodule.SubmoduleStatusType import org.eclipse.jgit.submodule.SubmoduleStatusType
@ -23,7 +24,7 @@ fun submoduleContextMenuItems(
) )
) )
} }
if (submoduleStatus.type != SubmoduleStatusType.UNINITIALIZED) { if (submoduleStatus.type.isValid()) {
add( add(
ContextMenuElement.ContextTextEntry( ContextMenuElement.ContextTextEntry(
label = "Open submodule in new tab", label = "Open submodule in new tab",