Fixed refresh not working after changing tabs

This commit is contained in:
Abdelilah El Aissaoui 2024-09-09 00:36:45 +02:00
parent 7b5290aef8
commit 03e94d0ce9
No known key found for this signature in database
GPG Key ID: 7587FC860F594869
2 changed files with 34 additions and 45 deletions

View File

@ -1,8 +1,8 @@
package com.jetpackduba.gitnuro.git.rebase package com.jetpackduba.gitnuro.git.rebase
sealed interface RebaseInteractiveState { sealed interface RebaseInteractiveState {
object None : RebaseInteractiveState data object None : RebaseInteractiveState
object AwaitingInteraction : RebaseInteractiveState data object AwaitingInteraction : RebaseInteractiveState
data class ProcessingCommits(val commitToAmendId: String?) : RebaseInteractiveState { data class ProcessingCommits(val commitToAmendId: String?) : RebaseInteractiveState {
val isCurrentStepAmenable: Boolean = !commitToAmendId.isNullOrBlank() val isCurrentStepAmenable: Boolean = !commitToAmendId.isNullOrBlank()
} }

View File

@ -10,7 +10,6 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.focus.FocusRequester import androidx.compose.ui.focus.FocusRequester
import androidx.compose.ui.focus.focusRequester import androidx.compose.ui.focus.focusRequester
import androidx.compose.ui.input.key.onKeyEvent
import androidx.compose.ui.input.key.onPreviewKeyEvent import androidx.compose.ui.input.key.onPreviewKeyEvent
import androidx.compose.ui.platform.LocalDensity import androidx.compose.ui.platform.LocalDensity
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
@ -145,56 +144,46 @@ fun RepositoryOpenPage(
true true
} }
it.matchesBinding(KeybindingOption.REFRESH) -> {
repositoryOpenViewModel.refreshAll()
true
}
else -> false else -> false
} }
} }
) { ) {
Row(modifier = Modifier.weight(1f)) { Column(modifier = Modifier.weight(1f)) {
Column( Menu(
menuViewModel = repositoryOpenViewModel.tabViewModelsProvider.menuViewModel,
modifier = Modifier modifier = Modifier
.focusable() .padding(
.onKeyEvent { keyEvent -> vertical = 4.dp
if (keyEvent.matchesBinding(KeybindingOption.REFRESH)) { )
repositoryOpenViewModel.refreshAll() .fillMaxWidth(),
true onCreateBranch = { showNewBranchDialog = true },
} else { onStashWithMessage = { showStashWithMessageDialog = true },
false onOpenAnotherRepository = { repositoryOpenViewModel.openAnotherRepository(it) },
} onOpenAnotherRepositoryFromPicker = {
val repoToOpen = repositoryOpenViewModel.openDirectoryPicker()
if (repoToOpen != null) {
repositoryOpenViewModel.openAnotherRepository(repoToOpen)
} }
) { },
Column(modifier = Modifier.weight(1f)) { onQuickActions = { showQuickActionsDialog = true },
Menu( onShowSettingsDialog = onShowSettingsDialog
menuViewModel = repositoryOpenViewModel.tabViewModelsProvider.menuViewModel, )
modifier = Modifier
.padding(
vertical = 4.dp
)
.fillMaxWidth(),
onCreateBranch = { showNewBranchDialog = true },
onStashWithMessage = { showStashWithMessageDialog = true },
onOpenAnotherRepository = { repositoryOpenViewModel.openAnotherRepository(it) },
onOpenAnotherRepositoryFromPicker = {
val repoToOpen = repositoryOpenViewModel.openDirectoryPicker()
if (repoToOpen != null) { RepoContent(
repositoryOpenViewModel.openAnotherRepository(repoToOpen) repositoryOpenViewModel = repositoryOpenViewModel,
} diffSelected = diffSelected,
}, selectedItem = selectedItem,
onQuickActions = { showQuickActionsDialog = true }, repositoryState = repositoryState,
onShowSettingsDialog = onShowSettingsDialog blameState = blameState,
) showHistory = showHistory,
)
RepoContent(
repositoryOpenViewModel = repositoryOpenViewModel,
diffSelected = diffSelected,
selectedItem = selectedItem,
repositoryState = repositoryState,
blameState = blameState,
showHistory = showHistory,
)
}
}
} }
Spacer( Spacer(