Skip to content

Commit 9c795ed

Browse files
author
Michelle Tilley
committed
Fix logic for selecting single/multiple items in StagingView
1 parent 904f365 commit 9c795ed

File tree

1 file changed

+13
-6
lines changed

1 file changed

+13
-6
lines changed

lib/views/staging-view.js

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,9 @@ export default class StagingView {
2727
this.props = props;
2828
atom.config.observe('github.keyboardNavigationDelay', value => {
2929
if (value === 0) {
30-
this.debouncedDidChangeSelectedItem = this.didChangeSelectedItem.bind(this);
30+
this.debouncedDidChangeSelectedItem = this.didChangeSelectedItems.bind(this);
3131
} else {
32-
this.debouncedDidChangeSelectedItem = debounce(this.didChangeSelectedItem.bind(this), value);
32+
this.debouncedDidChangeSelectedItem = debounce(this.didChangeSelectedItems.bind(this), value);
3333
}
3434
});
3535
this.mouseSelectionInProgress = false;
@@ -136,10 +136,17 @@ export default class StagingView {
136136
if (headItem) { this.listElementsByItem.get(headItem).scrollIntoViewIfNeeded(); }
137137
}
138138

139-
didChangeSelectedItem() {
140-
const selectedItem = this.selection.getHeadItem();
141-
if (!this.isFocused() || !selectedItem) { return; }
139+
didChangeSelectedItems() {
140+
const selectedItems = Array.from(this.selection.getSelectedItems());
141+
if (!this.isFocused() || !selectedItems.length) { return; }
142142

143+
144+
if (selectedItems.length === 1) {
145+
this.didSelectSingleItem(selectedItems[0]);
146+
}
147+
}
148+
149+
didSelectSingleItem(selectedItem) {
143150
if (this.selection.getActiveListKey() === 'conflicts') {
144151
if (this.props.didSelectMergeConflictFile) {
145152
this.props.didSelectMergeConflictFile(selectedItem.filePath);
@@ -187,7 +194,7 @@ export default class StagingView {
187194
if (this.mouseSelectionInProgress) {
188195
this.mouseSelectionInProgress = false;
189196
this.selection.coalesce();
190-
this.didChangeSelectedItem();
197+
this.didChangeSelectedItems();
191198
}
192199
}
193200

0 commit comments

Comments
 (0)