Bug 422045 - Advanced Colour Selector does not respond properly to HSV keyboard shortcuts shifts in some situations
Summary: Advanced Colour Selector does not respond properly to HSV keyboard shortcuts ...
Status: CONFIRMED
Alias: None
Product: krita
Classification: Applications
Component: Usability (show other bugs)
Version: unspecified
Platform: Debian stable Linux
: NOR minor
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-05-25 11:11 UTC by Ahab Greybeard
Modified: 2020-08-03 15:36 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ahab Greybeard 2020-05-25 11:11:08 UTC
SUMMARY
This happens with all versions from 4.2.9 to the 22-May 5.0.0 prealpha (git fdf794d)

This is a minor bug and is confusing until you realise what you need to do to avoid it.
It's only present for the Advanced Colour Selector, not any of the other colour selector dockers.
It happens with all wheel/rectangle presentations and all colour model types.
It seems to happen with all bit depths and colour spaces but I haven't done full coverage of all possible variations.
It happens whether the Advanced Colour Selector is docked or floating.

It's not likely to be noticed in general but the behaviour is different from all the other types of colour selection/modification dockers.

If you click to select a hue or a saturation/value, then use a keyboard shortcut to darken/lighten or to do a hue shift, the new value or hue is not shown on the wheel/rectangle unless you do this with the cursor placed outside of the active docker area.
If you do e.g. 'K' for darken then successive presses are 'stored' and then the cumulative effect is shown after you do a 'K' with the cursor outside of the active docker area.

While these not-displayed 'K' shifts are being done, the changes are shown on the other colour selector dockers an also on the Shade Selector of the Advanced Colour Selector.


STEPS TO REPRODUCE
1. Select a hue or saturation/value by clicking in the Advanced Colour Selector and keep the cursor within the rectangular area that encloses the colour wheel (including just outside the hue ring).
2. Press 'K' to darken the colour
[Note that the selected point of saturation/value does not change but the shade selector display does change and any other colour selector dockers show the change.]
3. Press 'K' again.
[Note the same result as in 2.]
4. Move the cursor outside of the selection area to any of: shade selector, colour history area, the tab label of the Advanced Colour Selector itself, any other docker or the workspace.
5. Press 'K' again.
[Note that the Advanced Colour Selector now shows the cumulative effect of three 'K' presses.

OBSERVED RESULT
See Steps To Reproduce

EXPECTED RESULT
The change due to use of the keyboard shortcuts should be immediately seen on the colour display of the Advanced Colour Selector without needing to move the cursor away from the HSV selection zone.

SOFTWARE
Krita

 Version: 5.0.0-prealpha (git fdf794d)
 Languages: en_GB, en, en, en_GB, en
 Hidpi: true

Qt

  Version (compiled): 5.12.8
  Version (loaded): 5.12.8

OS Information

  Build ABI: x86_64-little_endian-lp64
  Build CPU: x86_64
  CPU: x86_64
  Kernel Type: linux
  Kernel Version: 4.19.0-8-amd64
  Pretty Productname: Debian GNU/Linux 10 (buster)
  Product Type: debian
  Product Version: 10
  Desktop: MATE
Comment 1 Tiar 2020-08-03 15:36:35 UTC
Confirmed.

Notes:
- the cursor needs to be inside the rectangle to trigger the issue
- the color changes; just the color pointer inside the rectangle doesn't
- if the color is set to black already (while color pointer is set to for example red), then pressing K multiple times even with a cursor oover the canvas doesn't fix it, because the foreground color doesn't actually change (it's black -> black)
- steps that reproduce the issue:
   - select manually a color inside a rectangle
   - keep cursor inside a rectangle
   - press K multiple times (result: the color pointer doesn't move)
- steps that do not reproduce the issue:
  - put cursor over the canvas
  - press K
  - put cursor over the rectangle
  - press K (result: the color pointer moves)