Bug 160219 - Add confirmation dialog to "Delete all comments" (.uno:DeleteAllNotes) in Calc
Summary: Add confirmation dialog to "Delete all comments" (.uno:DeleteAllNotes) in Calc
Status: ASSIGNED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
7.6.5.2 release
Hardware: All All
: medium enhancement
Assignee: Daeyoon Choi
URL:
Whiteboard:
Keywords: difficultyBeginner, easyHack, skillCpp, topicUI
Depends on:
Blocks: Calc-Comments
  Show dependency treegraph
 
Reported: 2024-03-15 14:46 UTC by Tony
Modified: 2024-05-27 16:36 UTC (History)
5 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tony 2024-03-15 14:46:15 UTC
Description:
Opened LO calc this morning and all comments on my main sheet had vanished. Comments on other sheets were still there. 100% sure I didn't click thru the menus to do - Sheet/Comments/Delete All Comments, and there is no keyboard shortcut for this happen accidentally. As a side note, the "Delete All Comments" option has no confirmation dialog asking if you are sure you want to do that - it just deletes immediately. 

Steps to Reproduce:
1. N/A
2. N/A
3. N/a

Actual Results:
Comments deleted

Expected Results:
Comments saved


Reproducible: Always


User Profile Reset: Yes

Additional Info:
As mentioned, even though i don't believe this is what happened, the possibility of accidentally deleting all comments in a sheet is very real, as there is no confirmation required. There needs to be a confirmation dialog before the delete command is executed.
Comment 1 Rafael Lima 2024-03-15 17:41:03 UTC
(In reply to Tony from comment #0)
>> As a side note, the "Delete All
> Comments" option has no confirmation dialog asking if you are sure you want
> to do that - it just deletes immediately. 

This is quite bad. I've just tested it here and if you have many comments in your documents, all of them will be immediately terminated if you click Delete All Comments. No questions asked.
Comment 2 Haris 2024-04-01 06:18:17 UTC
Like Rafael Lima, I tested what you mentioned by adding comments in the Calc Spreadsheet and used "Deleting All Comments". As you mentioned, it deleted all my comments without any confirmation. I then made new comments and saved it, and similar to you, those comments were still there when I opened them. This can definitely be disastrous if someone has several important comments in the spreadsheet. I'm not sure if I can mark this as 'NEW' but its definitely something the developers should touch up on.

These are the two builds I used:

Stable Build
Version: 24.2.1.2 (AARCH64) / LibreOffice Community
Build ID: db4def46b0453cc22e2d0305797cf981b68ef5ac
CPU threads: 10; OS: macOS 14.1.2; UI render: Skia/Metal; VCL: osx
Locale: en-US (en_US.UTF-8); UI: en-US
Calc: threaded

Master/Daily Build
Version: 24.8.0.0.alpha0+ (AARCH64) / LibreOffice Community
Build ID: c4023d3ec604abfff38be2053e2989c7ec2ba8c1
CPU threads: 10; OS: macOS 14.1.2; UI render: Skia/Metal; VCL: osx
Locale: en-US (en_US.UTF-8); UI: en-US
Calc: threaded
Comment 3 Stéphane Guillou (stragu) 2024-04-29 04:26:13 UTC
Without steps to reproduce, I don't think we'll be able to solve this issue if it really is a bug.

However, I completely agree with a confirmation dialog, especially since the Tabbed interface is used more and more: when using the classic interface and relying on the menubar, it currently takes 3 clicks (Sheet > Cell comments > Delete all comments), but with the Tabbed interface, it is right there in the Review tab, so a lot easier to click without planning to (e.g. trying to switch to the Data tab, or trying the remove a single comment...).

So I am changing the focus to that enhancement request. (But please let us know if it turns out to be an actual bug.)

Design/UX team, what's your opinion on:

A. Adding a confirmation dialog for .uno:DeleteAllNotes? Note that Writer does not have a confirmation dialog either, and it was already suggested for Writer in bug 127874. Being the same UNO command in both, I guess the two reports could be merged? (Impress uses .uno:DeleteAllAnnotation - no confirmation dialog either.)
B. The presence of .uno:DeleteAllNotes in Calc's Review tab? Note that Writer does not have it in its Review tab -  but it is easier to access via individual comment's dropdown menus. See also bug 158598 and bug 133539, reviewing the available Comment options in Calc's tabbed UI.

Version: 24.8.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 2f5ab5b8e7bd7dd06e00153abb77a69e5d192dd2
CPU threads: 8; OS: Linux 6.5; UI render: default; VCL: gtk3
Comment 4 Heiko Tietze 2024-04-29 08:24:45 UTC
Support from my side for the confirmation, mentioned it recently in bug 160598 comment 7. Since the function can be undone, at least in Writer, it's not super important and we could add an option to not ask again. But I believe Delete-All is not a frequently used function that we have to make usable as easy as possible.

Code pointer:

Calc
* sc/source/ui/view/cellsh1.cxx > ExecuteEdit() > FID_DELETE_ALL_NOTES

Writer
* sw/source/uibase/shells/textfld.cxx > ExecField() > FN_DELETE_ALL_NOTES
* sw/source/uibase/shells/annotsh.cxx > NoteExec() > FN_DELETE_ALL_NOTES
Don't know why this command has two implementations here and perhaps we add the confirmation in the postitmgr class at
* sw/source/uibase/docvw/PostItMgr.cxx > SwPostItMgr::Delete()

Draw/Impress
* sd/source/ui/annotations/annotationmanager.cxx > ExecuteDeleteAnnotation() > SID_DELETEALL_POSTIT
Comment 5 Daeyoon Choi 2024-05-27 16:15:11 UTC
I add a confirmation dialog when I press the "Delete All Comments" btn on Calc?, right?

and

What are the phrases to write in the dialog, and how do I translates them in multiple languages?
Comment 6 Buovjaga 2024-05-27 16:36:07 UTC
(In reply to Daeyoon Choi from comment #5)
> I add a confirmation dialog when I press the "Delete All Comments" btn on
> Calc?, right?

Yes.

> What are the phrases to write in the dialog, and how do I translates them in
> multiple languages?

You don't have to translate them yourself. Something like "You are about to delete all comments in the current sheet. Are you sure?". It can be tweaked after you have submitted your patch, if needed.