summaryrefslogtreecommitdiffstats
path: root/pkg/gui/filetree
diff options
context:
space:
mode:
authorAaron Hoffman <kd0sgh@gmail.com>2024-01-24 19:16:30 -0600
committerJesse Duffield <jessedduffield@gmail.com>2024-01-28 12:00:47 +1100
commit510f9a1ae1341c42251ece9c1c0bb277b8197cde (patch)
treea7700e012428037f8f483f19bd9433821ca361ae /pkg/gui/filetree
parent9b2a5f636ad51b5244debe5afdc512f94dffe343 (diff)
Support selecting file range in patch builder
test: add move_range_to_index test: add toggle_range
Diffstat (limited to 'pkg/gui/filetree')
-rw-r--r--pkg/gui/filetree/commit_file_tree_view_model.go13
1 files changed, 12 insertions, 1 deletions
diff --git a/pkg/gui/filetree/commit_file_tree_view_model.go b/pkg/gui/filetree/commit_file_tree_view_model.go
index 99ed8d477..95cb1a140 100644
--- a/pkg/gui/filetree/commit_file_tree_view_model.go
+++ b/pkg/gui/filetree/commit_file_tree_view_model.go
@@ -80,7 +80,18 @@ func (self *CommitFileTreeViewModel) GetSelectedItemId() string {
}
func (self *CommitFileTreeViewModel) GetSelectedItems() ([]*CommitFileNode, int, int) {
- panic("Not implemented")
+ if self.Len() == 0 {
+ return nil, 0, 0
+ }
+
+ startIdx, endIdx := self.GetSelectionRange()
+
+ nodes := []*CommitFileNode{}
+ for i := startIdx; i <= endIdx; i++ {
+ nodes = append(nodes, self.Get(i))
+ }
+
+ return nodes, startIdx, endIdx
}
func (self *CommitFileTreeViewModel) GetSelectedItemIds() ([]string, int, int) {