Allow shift-click to select multiple versions

This commit is contained in:
James Allen 2014-03-17 14:33:02 +00:00
parent 3c9f6e0ce0
commit a8ca388146
2 changed files with 15 additions and 1 deletions

View file

@ -39,7 +39,10 @@ define [
view.$el.insertBefore(elementAtIndex) view.$el.insertBefore(elementAtIndex)
view.on "click", (e, v) => view.on "click", (e, v) =>
@setSelectionRange(index, index) if e.shiftKey
@selectRangeTo(index)
else
@setSelectionRange(index, index)
view.on "selected:to", (e, v) => view.on "selected:to", (e, v) =>
@setSelectionRange(@selectedFromIndex, index) @setSelectionRange(@selectedFromIndex, index)
@ -74,6 +77,13 @@ define [
@resetAllSelectors() @resetAllSelectors()
@triggerChangeDiff() @triggerChangeDiff()
selectRangeTo: (index) ->
return unless @selectedFromIndex? and @selectedToIndex?
if index < @selectedToIndex
@setSelectionRange(@selectedFromIndex, index)
else
@setSelectionRange(index, @selectedToIndex)
resetAllSelectors: () -> resetAllSelectors: () ->
for view, i in @itemViews for view, i in @itemViews
view.resetSelector(i, @selectedFromIndex, @selectedToIndex) view.resetSelector(i, @selectedFromIndex, @selectedToIndex)

View file

@ -96,6 +96,10 @@
position: relative; position: relative;
border-bottom: 1px solid #ccc; border-bottom: 1px solid #ccc;
cursor: pointer; cursor: pointer;
user-select: none;
-ms-user-select: none;
-moz-user-select: none;
-webkit-user-select: none;
.change-selectors { .change-selectors {
.change-selector-from { .change-selector-from {
position: absolute; position: absolute;