summaryrefslogtreecommitdiffstats
path: root/pkg/gui/filetree
diff options
context:
space:
mode:
authorAzraelSec <me@azraelsec.sh>2023-11-02 23:31:38 +0100
committerStefan Haller <stefan@haller-berlin.de>2023-12-07 08:30:03 +0100
commitc7012528fce35802440342e0f9e69d5c84acbabb (patch)
tree41039fe4d290485fffbafbda9a593b06e77f04a3 /pkg/gui/filetree
parent2162e5ff64607856fe76b5f9e37612e415852a25 (diff)
feat: introduce a copy menu into the file view
Diffstat (limited to 'pkg/gui/filetree')
-rw-r--r--pkg/gui/filetree/file_node.go9
-rw-r--r--pkg/gui/filetree/node.go6
2 files changed, 15 insertions, 0 deletions
diff --git a/pkg/gui/filetree/file_node.go b/pkg/gui/filetree/file_node.go
index abfdbafe6..d9b28d1ca 100644
--- a/pkg/gui/filetree/file_node.go
+++ b/pkg/gui/filetree/file_node.go
@@ -30,6 +30,15 @@ func (self *FileNode) GetHasUnstagedChanges() bool {
return self.SomeFile(func(file *models.File) bool { return file.HasUnstagedChanges })
}
+func (self *FileNode) GetHasStagedOrTrackedChanges() bool {
+ if !self.GetHasStagedChanges() {
+ return self.SomeFile(func(t *models.File) bool {
+ return t.Tracked
+ })
+ }
+ return true
+}
+
func (self *FileNode) GetHasStagedChanges() bool {
return self.SomeFile(func(file *models.File) bool { return file.HasStagedChanges })
}
diff --git a/pkg/gui/filetree/node.go b/pkg/gui/filetree/node.go
index 3c125bc7d..efb64f649 100644
--- a/pkg/gui/filetree/node.go
+++ b/pkg/gui/filetree/node.go
@@ -1,6 +1,8 @@
package filetree
import (
+ "path"
+
"github.com/jesseduffield/lazygit/pkg/commands/models"
"github.com/jesseduffield/lazygit/pkg/gui/types"
"github.com/samber/lo"
@@ -300,3 +302,7 @@ func (self *Node[T]) ID() string {
func (self *Node[T]) Description() string {
return self.GetPath()
}
+
+func (self *Node[T]) Name() string {
+ return path.Base(self.Path)
+}