|
@@ -1021,6 +1021,9 @@
|
|
|
<div class="item singleObjectOnlyHide" onclick="shareFile();">
|
|
|
<i class="share alternate icon"></i> Share
|
|
|
</div>
|
|
|
+ <div class="item mobileonly" onclick="toggleCtrl();">
|
|
|
+ <i class="mouse pointer icon"></i> Multi-select
|
|
|
+ </div>
|
|
|
<div class="item" onclick="copy();">
|
|
|
<i class="copy icon"></i> Copy
|
|
|
<span class="description">Ctrl + C</span>
|
|
@@ -1779,7 +1782,7 @@
|
|
|
var lastClickedFileID = 0;
|
|
|
function bindFileObjectEvents(){
|
|
|
$(".fileObject").off("click").on('click',function(evt){
|
|
|
- if (isMobile){
|
|
|
+ if (!ctrlHold && isMobile){
|
|
|
//If on mobile, click means open
|
|
|
openthis(this,evt);
|
|
|
return
|
|
@@ -1862,6 +1865,35 @@
|
|
|
$(".fileObject").off("contextmenu").on("contextmenu", function(evt){
|
|
|
evt.preventDefault();
|
|
|
|
|
|
+ if (isFirefox && isMobile){
|
|
|
+ //Firefox Mobile. Fix select with context menu not working bug
|
|
|
+ var selectedObject = $(evt.target);
|
|
|
+
|
|
|
+ if ($(selectedObject).hasClass("fileObject")){
|
|
|
+ if (!ctrlHold){
|
|
|
+ $(".fileObject.selected").removeClass("selected");
|
|
|
+ }
|
|
|
+ $(selectedObject).addClass("selected");
|
|
|
+ }else{
|
|
|
+ //Uptrace 5 layers for fileObject
|
|
|
+ for (var i = 0; i < 5; i++){
|
|
|
+ if ($(selectedObject).hasClass("fileObject") == false){
|
|
|
+ selectedObject = $(selectedObject).parent();
|
|
|
+ }else{
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!ctrlHold){
|
|
|
+ $(".fileObject.selected").removeClass("selected");
|
|
|
+ }
|
|
|
+ $(selectedObject).addClass("selected");
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
calculateContextMenuOffsets(evt);
|
|
|
|
|
|
//Show all options by defaults
|
|
@@ -1893,6 +1925,12 @@
|
|
|
$("#contextmenu").css("top",window.innerHeight - $("#contextmenu").height() + "px");
|
|
|
}
|
|
|
|
|
|
+ if (isMobile){
|
|
|
+ $("#contextmenu").find(".mobileonly").show();
|
|
|
+ }else{
|
|
|
+ $("#contextmenu").find(".mobileonly").hide();
|
|
|
+ }
|
|
|
+
|
|
|
});
|
|
|
|
|
|
//Right click on empty space of the file selector
|
|
@@ -2691,7 +2729,7 @@
|
|
|
var downloadURL = "/media?file=" + encodeURIComponent($(".fileObject.selected").attr("filepath")) + "&download=true";
|
|
|
var filename = $(".fileObject.selected").attr("filename");
|
|
|
generateDownloadFromURL(downloadURL,escape(filename));
|
|
|
- }else{
|
|
|
+ }else if ($(".fileObject.selected").length > 1){
|
|
|
//Do zip and download for multiple files
|
|
|
$(".fileObject.selected").each(function(){
|
|
|
fileList.push($(this).attr("filepath"));
|
|
@@ -2712,6 +2750,8 @@
|
|
|
}
|
|
|
});
|
|
|
|
|
|
+ }else{
|
|
|
+ alert("No file selected!")
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -4423,6 +4463,10 @@
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ function toggleCtrl(){
|
|
|
+ ctrlHold = !ctrlHold;
|
|
|
+ }
|
|
|
+
|
|
|
function appendUploadFileItem(filename, filesize){
|
|
|
var newuuid = uuidv4();
|
|
|
var humanReadableFilesize = bytesToSize(filesize);
|