From fa95141eea4d04d4b55551b6491a3aaeab362427 Mon Sep 17 00:00:00 2001 From: "kavita.sonawane@t-systems.com" Date: Tue, 15 Nov 2022 11:27:46 +0530 Subject: [PATCH 1/6] Filelist:-Deselecting all files checkboxes within cells of encrypted folder Signed-off-by: Kavita Sonawane --- apps/files/js/filelist.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js index 7caed29baa304..46b63140b2739 100644 --- a/apps/files/js/filelist.js +++ b/apps/files/js/filelist.js @@ -976,6 +976,7 @@ // Select only visible checkboxes to filter out unmatched file in search this.$fileList.find('td.selection > .selectCheckBox:visible').prop('checked', checked) .closest('tr').toggleClass('selected', checked); + this.$fileList.find('tr[data-e2eencrypted="true"]').find('td.selection > .selectCheckBox:visible').prop('checked', false).closest('tr').toggleClass('selected', false); if (checked) { for (var i = 0; i < this.files.length; i++) { @@ -984,7 +985,7 @@ var fileData = this.files[i]; var fileRow = this.$fileList.find('tr[data-id=' + fileData.id + ']'); // do not select already selected ones - if (!fileRow.hasClass('hidden') && _.isUndefined(this._selectedFiles[fileData.id])) { + if (!fileRow.hasClass('hidden') && _.isUndefined(this._selectedFiles[fileData.id]) && (!fileData.isEncrypted)) { this._selectedFiles[fileData.id] = fileData; this._selectionSummary.add(fileData); } From 9037531ffd7795ca3d7403d4575168aea787a1bb Mon Sep 17 00:00:00 2001 From: "kavita.sonawane@t-systems.com" Date: Tue, 15 Nov 2022 17:58:57 +0530 Subject: [PATCH 2/6] Add comments for prevents the selection of encrypted folders Signed-off-by: Kavita Sonawane --- apps/files/js/filelist.js | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js index 46b63140b2739..75d7603022b4b 100644 --- a/apps/files/js/filelist.js +++ b/apps/files/js/filelist.js @@ -976,6 +976,7 @@ // Select only visible checkboxes to filter out unmatched file in search this.$fileList.find('td.selection > .selectCheckBox:visible').prop('checked', checked) .closest('tr').toggleClass('selected', checked); + //For prevents the selection of encrypted folders when clicking on the "Select all" checkbox this.$fileList.find('tr[data-e2eencrypted="true"]').find('td.selection > .selectCheckBox:visible').prop('checked', false).closest('tr').toggleClass('selected', false); if (checked) { From cc06eb52cec6702c4e89bb1d86278937a9cf6846 Mon Sep 17 00:00:00 2001 From: "kavita.sonawane@t-systems.com" Date: Wed, 16 Nov 2022 11:42:50 +0530 Subject: [PATCH 3/6] Deactivates the possiblility to checkmark or click on the encrypted folder Signed-off-by: Kavita Sonawane --- apps/files/css/files.scss | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/apps/files/css/files.scss b/apps/files/css/files.scss index 1950d740bd758..612ac975aebf9 100644 --- a/apps/files/css/files.scss +++ b/apps/files/css/files.scss @@ -91,6 +91,11 @@ color: var(--color-text-maxcontrast); } } + + // Deactivates the possiblility to checkmark or click on the encrypted folder + tr[data-e2eencrypted="true"] { + pointer-events: none; + } } } From fffe2e3dd8d9a2ddc87815c7528174d21c8769cd Mon Sep 17 00:00:00 2001 From: "kavita.sonawane@t-systems.com" Date: Thu, 17 Nov 2022 11:31:07 +0530 Subject: [PATCH 4/6] Prevents the selection of encrypted folder on scroll page Signed-off-by: Kavita Sonawane --- apps/files/js/filelist.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js index 75d7603022b4b..38d096acccc8c 100644 --- a/apps/files/js/filelist.js +++ b/apps/files/js/filelist.js @@ -976,7 +976,7 @@ // Select only visible checkboxes to filter out unmatched file in search this.$fileList.find('td.selection > .selectCheckBox:visible').prop('checked', checked) .closest('tr').toggleClass('selected', checked); - //For prevents the selection of encrypted folders when clicking on the "Select all" checkbox + // For prevents the selection of encrypted folders when clicking on the "Select all" checkbox this.$fileList.find('tr[data-e2eencrypted="true"]').find('td.selection > .selectCheckBox:visible').prop('checked', false).closest('tr').toggleClass('selected', false); if (checked) { @@ -1271,6 +1271,7 @@ _onScroll: function(e) { if (this.$container.scrollTop() + this.$container.height() > this.$el.height() - 300) { this._nextPage(true); + this.$fileList.find('tr[data-e2eencrypted="true"]').find('td.selection > .selectCheckBox:visible').prop('checked', false).closest('tr').toggleClass('selected', false); } }, From 3ab485fbc33ed05e4e7f0144692631d9b020762f Mon Sep 17 00:00:00 2001 From: "kavita.sonawane@t-systems.com" Date: Fri, 18 Nov 2022 14:46:50 +0530 Subject: [PATCH 5/6] Prevents the selection of encrypted folder on next page load Signed-off-by: Kavita Sonawane --- apps/files/js/filelist.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js index 38d096acccc8c..201edde48bd9e 100644 --- a/apps/files/js/filelist.js +++ b/apps/files/js/filelist.js @@ -1271,7 +1271,6 @@ _onScroll: function(e) { if (this.$container.scrollTop() + this.$container.height() > this.$el.height() - 300) { this._nextPage(true); - this.$fileList.find('tr[data-e2eencrypted="true"]').find('td.selection > .selectCheckBox:visible').prop('checked', false).closest('tr').toggleClass('selected', false); } }, @@ -1422,6 +1421,7 @@ hidden = false; } tr = this._renderRow(fileData, {updateSummary: false, silent: true, hidden: hidden}); + this.$fileList.find('tr[data-e2eencrypted="true"]').find('td.selection > .selectCheckBox:visible').prop('checked', false).closest('tr').toggleClass('selected', false); this.$fileList.append(tr); if (isAllSelected || this._selectedFiles[fileData.id]) { tr.addClass('selected'); From a13b76f77cf1a8e129a445fbce9e45951f6524de Mon Sep 17 00:00:00 2001 From: "kavita.sonawane@t-systems.com" Date: Mon, 21 Nov 2022 11:55:25 +0530 Subject: [PATCH 6/6] Prevent selection of encrypted folders Signed-off-by: Kavita Sonawane --- apps/files/js/filelist.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js index 201edde48bd9e..96273b325cb9c 100644 --- a/apps/files/js/filelist.js +++ b/apps/files/js/filelist.js @@ -1421,7 +1421,10 @@ hidden = false; } tr = this._renderRow(fileData, {updateSummary: false, silent: true, hidden: hidden}); - this.$fileList.find('tr[data-e2eencrypted="true"]').find('td.selection > .selectCheckBox:visible').prop('checked', false).closest('tr').toggleClass('selected', false); + if (tr.attr('data-e2eencrypted') === 'true') { + tr.toggleClass('selected', false); + tr.find('td.selection > .selectCheckBox:visible').prop('checked', false); + } this.$fileList.append(tr); if (isAllSelected || this._selectedFiles[fileData.id]) { tr.addClass('selected');