Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
3pia
VISPA
VISPA web
Commits
8bfede51
Commit
8bfede51
authored
Sep 18, 2015
by
Fabian-Andree Heidemann
Browse files
fix #1851 - multiple selection with shift (testing requested)
parent
250e68bb
Changes
3
Show whitespace changes
Inline
Side-by-side
vispa/extensions/file/static/js/base/events.js
View file @
8bfede51
...
...
@@ -77,6 +77,15 @@ define(["jquery", "jclass"], function($, JClass) {
}
if
(
self
.
FileBase
.
workflow
.
selectmode
)
{
self
.
FileBase
.
selections
.
changeSelection
(
node
,
true
);
}
else
if
(
self
.
FileBase
.
workflow
.
selectmodeMultiple
)
{
// multiple selection with shift (default)
var
indexOfCurrentNode
=
node
.
parent
().
children
().
index
(
node
);
var
indexOfLastNode
=
node
.
parent
().
children
().
index
(
self
.
FileBase
.
selections
.
lastSelectedNode
);
var
krementer
=
(
indexOfCurrentNode
-
indexOfLastNode
);
krementer
/=
Math
.
abs
(
krementer
);
while
(
!
node
.
attr
(
"
selected
"
))
{
self
.
FileBase
.
selections
.
selectArbitNode
(
krementer
);
}
}
else
if
((
vispa
.
device
.
hasTouch
||
openstring
==
"
click
"
)
&&
Object
.
keys
(
self
.
FileBase
.
selections
.
entries
).
length
>
0
)
{
...
...
@@ -97,12 +106,23 @@ define(["jquery", "jclass"], function($, JClass) {
node
.
click
(
function
(
event
)
{
if
(
self
.
FileBase
.
instance
.
_shortcuts
.
singleSelect
==
"
keydown:meta
"
&&
event
.
metaKey
)
self
.
FileBase
.
workflow
.
selectmode
=
true
;
if
(
!
self
.
FileBase
.
workflow
.
selectmode
)
{
if
(
!
self
.
FileBase
.
workflow
.
selectmode
&&
!
self
.
FileBase
.
workflow
.
selectmodeMultiple
)
{
self
.
FileBase
.
selections
.
unselectAll
();
}
event
.
preventDefault
();
self
.
FileBase
.
menuitems
.
hideMenu
();
if
(
self
.
FileBase
.
workflow
.
selectmodeMultiple
)
{
// multiple selection with shift (default)
var
indexOfCurrentNode
=
node
.
parent
().
children
().
index
(
node
);
var
indexOfLastNode
=
node
.
parent
().
children
().
index
(
self
.
FileBase
.
selections
.
lastSelectedNode
);
var
krementer
=
(
indexOfCurrentNode
-
indexOfLastNode
);
krementer
/=
Math
.
abs
(
krementer
);
while
(
!
node
.
attr
(
"
selected
"
))
{
self
.
FileBase
.
selections
.
selectArbitNode
(
krementer
);
}
}
else
{
self
.
FileBase
.
selections
.
changeSelection
(
node
,
true
);
}
if
(
self
.
FileBase
.
instance
.
_shortcuts
.
singleSelect
==
"
keydown:meta
"
&&
event
.
metaKey
)
self
.
FileBase
.
workflow
.
selectmode
=
false
;
});
...
...
vispa/extensions/file/static/js/base/selections.js
View file @
8bfede51
...
...
@@ -167,7 +167,7 @@ define(["jquery", "jclass"], function($, JClass) {
if
(
selectNode
.
length
===
0
)
{
return
;
}
if
(
!
this
.
FileBase
.
workflow
.
selectmode
)
{
if
(
!
this
.
FileBase
.
workflow
.
selectmode
&&
!
this
.
FileBase
.
workflow
.
selectmodeMultiple
)
{
this
.
unselectAll
();
}
this
.
changeSelection
(
selectNode
,
true
);
...
...
vispa/extensions/file/static/js/shortcuts.js
View file @
8bfede51
...
...
@@ -17,6 +17,22 @@ define(function() {
this
.
fb
.
workflow
.
selectmode
=
false
;
}
},
multipleSelect
:
{
description
:
"
Key for selection of multiple files or folders
"
,
value
:
"
keydown:shift
"
,
callback
:
function
(
event
)
{
event
.
preventDefault
();
this
.
fb
.
workflow
.
selectmodeMultiple
=
true
;
}
},
abortMultipleSelect
:
{
description
:
"
Key for selection of multiple files or folders
"
,
value
:
"
keyup:shift
"
,
callback
:
function
(
event
)
{
event
.
preventDefault
();
this
.
fb
.
workflow
.
selectmodeMultiple
=
false
;
}
},
copy
:
{
description
:
"
Copy current selection
"
,
value
:
ctrlMeta
+
"
+c
"
,
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment