summaryrefslogtreecommitdiffstats
path: root/pkg/gui/discard_changes_menu_panel.go
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/gui/discard_changes_menu_panel.go')
-rw-r--r--pkg/gui/discard_changes_menu_panel.go87
1 files changed, 0 insertions, 87 deletions
diff --git a/pkg/gui/discard_changes_menu_panel.go b/pkg/gui/discard_changes_menu_panel.go
deleted file mode 100644
index 5da349314..000000000
--- a/pkg/gui/discard_changes_menu_panel.go
+++ /dev/null
@@ -1,87 +0,0 @@
-package gui
-
-import (
- "github.com/jesseduffield/lazygit/pkg/gui/types"
-)
-
-func (gui *Gui) handleCreateDiscardMenu() error {
- node := gui.getSelectedFileNode()
- if node == nil {
- return nil
- }
-
- var menuItems []*types.MenuItem
- if node.File == nil {
- menuItems = []*types.MenuItem{
- {
- DisplayString: gui.c.Tr.LcDiscardAllChanges,
- OnPress: func() error {
- gui.c.LogAction(gui.c.Tr.Actions.DiscardAllChangesInDirectory)
- if err := gui.git.WorkingTree.DiscardAllDirChanges(node); err != nil {
- return gui.c.Error(err)
- }
- return gui.c.Refresh(types.RefreshOptions{Mode: types.ASYNC, Scope: []types.RefreshableView{types.FILES}})
- },
- },
- }
-
- if node.GetHasStagedChanges() && node.GetHasUnstagedChanges() {
- menuItems = append(menuItems, &types.MenuItem{
- DisplayString: gui.c.Tr.LcDiscardUnstagedChanges,
- OnPress: func() error {
- gui.c.LogAction(gui.c.Tr.Actions.DiscardUnstagedChangesInDirectory)
- if err := gui.git.WorkingTree.DiscardUnstagedDirChanges(node); err != nil {
- return gui.c.Error(err)
- }
-
- return gui.c.Refresh(types.RefreshOptions{Mode: types.ASYNC, Scope: []types.RefreshableView{types.FILES}})
- },
- })
- }
- } else {
- file := node.File
-
- submodules := gui.State.Submodules
- if file.IsSubmodule(submodules) {
- submodule := file.SubmoduleConfig(submodules)
-
- menuItems = []*types.MenuItem{
- {
- DisplayString: gui.c.Tr.LcSubmoduleStashAndReset,
- OnPress: func() error {
- return gui.Controllers.Files.ResetSubmodule(submodule)
- },
- },
- }
- } else {
- menuItems = []*types.MenuItem{
- {
- DisplayString: gui.c.Tr.LcDiscardAllChanges,
- OnPress: func() error {
- gui.c.LogAction(gui.c.Tr.Actions.DiscardAllChangesInFile)
- if err := gui.git.WorkingTree.DiscardAllFileChanges(file); err != nil {
- return gui.c.Error(err)
- }
- return gui.c.Refresh(types.RefreshOptions{Mode: types.ASYNC, Scope: []types.RefreshableView{types.FILES}})
- },
- },
- }
-
- if file.HasStagedChanges && file.HasUnstagedChanges {
- menuItems = append(menuItems, &types.MenuItem{
- DisplayString: gui.c.Tr.LcDiscardUnstagedChanges,
- OnPress: func() error {
- gui.c.LogAction(gui.c.Tr.Actions.DiscardAllUnstagedChangesInFile)
- if err := gui.git.WorkingTree.DiscardUnstagedFileChanges(file); err != nil {
- return gui.c.Error(err)
- }
-
- return gui.c.Refresh(types.RefreshOptions{Mode: types.ASYNC, Scope: []types.RefreshableView{types.FILES}})
- },
- })
- }
- }
- }
-
- return gui.c.Menu(types.CreateMenuOptions{Title: node.GetPath(), Items: menuItems})
-}