Bug 138722 - Custom shortcut for uno:BackgroundColor should set last color not NoFill
Summary: Custom shortcut for uno:BackgroundColor should set last color not NoFill
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
6.1.5.2 release
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: Shortcuts-Accelerators
  Show dependency treegraph
 
Reported: 2020-12-07 20:08 UTC by Robert Lacroix
Modified: 2023-11-16 03:12 UTC (History)
1 user (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 Robert Lacroix 2020-12-07 20:08:05 UTC
Description:
Current behaviour - a custom shortcut key bound to Category:{Format}, Function:{Background Color} sets the cell background colour to "No Fill". This is possibly a bug when the current Background Color is something else.

Requested behaviour - successive strokes of the custom shortcut key alternates the cell's Background Color between the current selection of the Background Color tool, and "No Fill".

Another proposal (more complex but more functional) - instead of alternating between the 2 choices above, each keypress chooses the next colour in the list of Recent colours of the Background Color tool. This allows the user to rapidly select from among Recent colours while keeping both hands on the keyboard. When the user tries to go beyond the end of the list, automatically open the Background Color tool. This tool already has a good keyboard interface for selecting another colour (arrows navigate, Enter accepts, "r" jumps to the Recent list, Esc cancels) which gets added to the Recent list. To be most useful, change the Recent list into a Recent history queue, where the most recently used colour is moved to the head of the queue. Since the cell changes colour instantaneously with each keystroke, the move up the queue occurs when a different keystroke or mouse click happens. This would allow the user to repeatedly assign the same colour multiple times with just one keystroke.

Note that either of these proposals is compatible with current functionality when the user has not yet selected a colour.

Steps to Reproduce:
1. Assign a custom shortcut key (for example F3) to Background Color
1a navigate to Tools > Customize
1b choose the Keyboard tab
1c select F3 in the Keystroke list
1d select Format in the Category list
1e select Background Color in the Function list
1f click Modify
1g click OK
2. Pick a colour in the Background Color tool; the active cell changes colour
3. Press F3; the cell Background Color is set to No Fill
4. Select another cell
5. Press F3; nothing happens, the Background Colour is still No Fill

Actual Results:
As noted in steps 3 to 5 in Steps to Reproduce

Expected Results:
If the current operation is considered to be a bug, then pressing F3 should set the cell's Background Colour to the current setting of the Background Color tool. There should have been no change in Step 3 and Step 5 should have set the colour.


Reproducible: Always


User Profile Reset: No


OpenGL enabled: Yes

Additional Info:
Version: 6.1.5.2
Build ID: 1:6.1.5-3+deb10u6
CPU threads: 12; OS: Linux 4.19; UI render: default; VCL: x11; 
Locale: en-CA (en_CA.utf8); Calc: group threaded

If current functionality is NOTABUG, then consider this request to be an enhancement request.
Comment 1 Heiko Tietze 2021-11-15 11:55:12 UTC
The command .uno:BackgroundColor is the widget at the formatting toolbar to set the background color. Clicking this widget applies the last used color (or no fill) to the selected cells, clicking the expander opens the listview.

It's very purposeful to not toggle: imagine you want to set the background of some non-adjacent cells to the same color. So clearly NAB/WF.

Depending on your workflow you might love the cell style feature.
Comment 2 Robert Lacroix 2021-11-15 14:53:58 UTC
OK, I agree and withdraw the request for toggle functionality as a proposed solution.

So then how about just fixing the bug, your way? I expect the custom keystoke to apply the last used background colour, as you stated. The keystroke instead only applies "no fill" regardless of the last used background colour.

Do you expect the custom keystroke to apply the last used background colour that was set at the time the key was bound to the function, or to apply the last used background colour at keypress time (as I expected)? I confirm that neither behaviour works, i.e. the custom keystroke ALWAYS uses "no fill". This is the bug that I raised, which was not addressed in the response.
Comment 3 Heiko Tietze 2021-11-15 15:04:00 UTC
(In reply to Robert Lacroix from comment #2)
> I expect the custom keystroke to apply the last used background colour...

Me too :-)
Comment 4 QA Administrators 2023-11-16 03:12:51 UTC
Dear Robert Lacroix,

To make sure we're focusing on the bugs that affect our users today, LibreOffice QA is asking bug reporters and confirmers to retest open, confirmed bugs which have not been touched for over a year.

There have been thousands of bug fixes and commits since anyone checked on this bug report. During that time, it's possible that the bug has been fixed, or the details of the problem have changed. We'd really appreciate your help in getting confirmation that the bug is still present.

If you have time, please do the following:

Test to see if the bug is still present with the latest version of LibreOffice from https://www.libreoffice.org/download/

If the bug is present, please leave a comment that includes the information from Help - About LibreOffice.
 
If the bug is NOT present, please set the bug's Status field to RESOLVED-WORKSFORME and leave a comment that includes the information from Help - About LibreOffice.

Please DO NOT

Update the version field
Reply via email (please reply directly on the bug tracker)
Set the bug's Status field to RESOLVED - FIXED (this status has a particular meaning that is not 
appropriate in this case)


If you want to do more to help you can test to see if your issue is a REGRESSION. To do so:
1. Download and install oldest version of LibreOffice (usually 3.3 unless your bug pertains to a feature added after 3.3) from https://downloadarchive.documentfoundation.org/libreoffice/old/

2. Test your bug
3. Leave a comment with your results.
4a. If the bug was present with 3.3 - set version to 'inherited from OOo';
4b. If the bug was not present in 3.3 - add 'regression' to keyword


Feel free to come ask questions or to say hello in our QA chat: https://web.libera.chat/?settings=#libreoffice-qa

Thank you for helping us make LibreOffice even better for everyone!

Warm Regards,
QA Team

MassPing-UntouchedBug