Bug 490873

Summary: Colour preview in popup palette is unusually slow.
Product: [Applications] krita Reporter: Benjamin Round <benalbertr>
Component: Color SelectorsAssignee: Krita Bugs <krita-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: yavn.work
Priority: NOR    
Version First Reported In: 5.2.3   
Target Milestone: ---   
Platform: Compiled Sources   
OS: All   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: Recording of speed difference between popup palette and advanced colour selector

Description Benjamin Round 2024-07-27 02:11:58 UTC
Created attachment 172022 [details]
Recording of speed difference between popup palette and advanced colour selector

SUMMARY
Compared to the advanced colour selector the popup palette doesn't update the colour preview as fast. Meaning it is hard to see what colour is selected. But the preview is instant when using the advanced colour selector with the pop-up palette open. So this is only a bug when using the colour selector in the pop-up palette. See the video for clarity.

STEPS TO REPRODUCE
1.  Open pop-up palette and have the advanced color selector visible
2. select a colour in the popup palette
3. Then compare by selecting a colour in the advanced color selector

OBSERVED RESULT
When selecting a colour using the popup palette the preview is very slow. When choosing a colour in the advanced colour selector the colour preview updates instantly.

EXPECTED RESULT
When using the popup palette colour selector. The colour preview in the top left of the palette should update instantly. Just like when selecting a colour with the advanced colour selector.

Krita

 Version: 5.2.3 (git 68d178c)
 Installation type: installer / portable package
 Hidpi: true

Qt

  Version (compiled): 5.15.7
  Version (loaded): 5.15.7

OS Information
Windows 11

  Build ABI: x86_64-little_endian-llp64
  Build CPU: x86_64
  CPU: x86_64
  Kernel Type: winnt
  Kernel Version: 10.0.22631
  Pretty Productname: Windows 10 Version 2009
  Product Type: windows
  Product Version: 10
Comment 1 YRH 2024-10-23 20:46:39 UTC
Confirmed in git master @ 1b1422e09a9378a4c1763c41ad895eba299c7264

Hi, I do get this behavior, but I suspect this is not a bug but by design. Maybe it was done like this for performance reasons, hard to say. Let's see what maintainers think.

It's very easy to reproduce with a mouse. For some color selectors, as long as the mouse cursor is moving, the other selectors won't update. For example:

* Selecting in Advanced Color Selector => updates other color selectors in real time
* Selecting in on-canvas color selector => updates other color selectors in real time

* Selecting in Wide Gamut Color Selector => updates other color selectors when stopped moving
* Selecting in the Pop-up Palette => updates other color selectors when stopped moving
Comment 2 Dmitry Kazakov 2024-11-04 20:15:06 UTC
Git commit 1fe16cb3e5a9f3da63c215e519bb31c987f901d9 by Dmitry Kazakov.
Committed on 04/11/2024 at 20:14.
Pushed by dkazakov into branch 'master'.

Fix hiccups when selecting color in the popup palette

Basically, we should always use FIRST_ACTIVE mode instead of POSTPONE when the
action is not extremely slow and user needs decently swift feedback.

M  +1    -1    libs/ui/kis_popup_palette.cpp

https://invent.kde.org/graphics/krita/-/commit/1fe16cb3e5a9f3da63c215e519bb31c987f901d9