Created attachment 134611 [details] Demo palette for this bug SUMMARY Tested with the Jan 05 4.4.3 (git 79dcac7) appimage but it goes back to 4.3.0. If palette swatch names are identical, as is the case for the common "Untitled" swatch colours or if the internal names are blank, the tooltip that gives the name of a swatch is not updated in its positon or its displayed value. This bug is closely associated with a Wishlist bug that is identified in Comment 1 below. This bug will probably need to be resolved before that Wishlist bug is implemented. A palette, NameBugDemo, is attached for ease of demonstration. STEPS TO REPRODUCE 1. Import and select the NameBugDemo palette for use in the Palette docker. 2. Hover the cursor over and along the top row of swatches, which all have obviously named colours. 3. Move the cursor from one of the top row swatches to one of the second row swatches, which are all called "Untitled", then move the cursor along the second row swatches. 4. Move the cursor to the third row of swatches, which all have obvious names. 5. Move the cursor to the fourth row of swatches which have blank internal names. 5. Move the cursor along the fourth row of swatches. OBSERVED RESULT 2. The tooltip name updates and follows the cursor as the cursor moves over the different swatches. 3. The name "Untitled" is displayed but its location does not follow the cursor movement along the row of swatches. 4. Same as 2. 5. The tooltip swatch name is not updated. 6. The tooltip does not follow the cursor. EXPECTED RESULT 3. The displayed name should move to follow the cursor along the swatches. 5. The displayed name should update to indicate a blank name, in some way 6. The tooltip should follow the cursor. SOFTWARE/OS VERSIONS Krita Version: 4.4.3-alpha (git 79dcac7) Languages: en_GB, en, en, en_GB, en Hidpi: false Qt Version (compiled): 5.12.9 Version (loaded): 5.12.9 OS Information Build ABI: x86_64-little_endian-lp64 Build CPU: x86_64 CPU: x86_64 Kernel Type: linux Kernel Version: 4.19.0-13-amd64 Pretty Productname: Debian GNU/Linux 10 (buster) Product Type: debian Product Version: 10 Desktop: MATE OpenGL Info Vendor: "NVIDIA Corporation" Renderer: "GeForce GTX 750 Ti/PCIe/SSE2" Version: "4.6.0 NVIDIA 450.80.02" Shading language: "4.60 NVIDIA" Requested format: QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile QSurfaceFormat::CompatibilityProfile) Current format: QSurfaceFormat(version 4.6, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile QSurfaceFormat::CompatibilityProfile) Version: 4.6 Supports deprecated functions true is OpenGL ES: false QPA OpenGL Detection Info supportsDesktopGL: true supportsOpenGLES: true isQtPreferOpenGLES: false Hardware Information GPU Acceleration: auto Memory: 16039 Mb Number of Cores: 8 Swap Location: /tmp Current Settings Current Swap Location: /tmp Current Swap Location writable: true Undo Enabled: true Undo Stack Limit: 30 Use OpenGL: true Use OpenGL Texture Buffer: true Use AMD Vectorization Workaround: false Canvas State: OPENGL_SUCCESS Autosave Interval: 900 Use Backup Files: true Number of Backups Kept: 1 Backup File Suffix: ~ Backup Location: Same Folder as the File Backup Location writable: false Use Win8 Pointer Input: false Use RightMiddleTabletButton Workaround: false Levels of Detail Enabled: false Use Zip64: false
The Wishlist bug associated with this palette docker UI/UX bug is: https://bugs.kde.org/show_bug.cgi?id=431221
Since tooltips are handled by the toolkit, not by Krita, I suspect that there's a check somewhere in Qt for the string, and if the string is the same, the tooltip isn't moved.
Git commit 2c90be8d2ad8dbb345c0ed5d6afb196d69182cbb by Halla Rempt. Committed on 06/01/2021 at 12:59. Pushed by rempt into branch 'master'. Add channel values to the palette swatch tooltip With this change, I cannot reproduce the tooltips not moving their position. Related: bug 431221 M +1 -1 libs/widgets/KisPaletteModel.cpp https://invent.kde.org/graphics/krita/commit/2c90be8d2ad8dbb345c0ed5d6afb196d69182cbb
Git commit b017ca6dc02007e8ef50f9ea9782d5f90a28e13b by Halla Rempt. Committed on 06/01/2021 at 13:01. Pushed by rempt into branch 'krita/4.3'. Add channel values to the palette swatch tooltip With this change, I cannot reproduce the tooltips not moving their position. Related: bug 431221 (cherry picked from commit 2c90be8d2ad8dbb345c0ed5d6afb196d69182cbb) M +1 -1 libs/widgets/KisPaletteModel.cpp https://invent.kde.org/graphics/krita/commit/b017ca6dc02007e8ef50f9ea9782d5f90a28e13b
Hm, now that I am thinking of it, it might be that it works for me because I'm using Qt 5.15, not the 5.12 we use for appimages. Let's check tomorrow's nightly.
Testing with the Jan 06 4.4.3 alpha (git b017ca6) appimage, Qt version 5.12.9: The bug report is resolved. The palette does store the Alpha value and displays with the correct appearance for a low alpha colour but when selected for use, the palette alpha does not overide the Opacity set on the Toolbar slider. I don't know if that's to be expected or is a separate issue.
Ah, no, we have never used the alpha of the palette colors. Actually, I never realized that palettes had the alpha defined. Maybe we should...
Wishlist bug reported: https://bugs.kde.org/show_bug.cgi?id=431260
Git commit 011cf6195b82d6e198742c2122578a79dbc57eea by Halla Rempt. Committed on 06/01/2021 at 13:01. Pushed by rempt into branch 'krita/4.4.2'. Add channel values to the palette swatch tooltip With this change, I cannot reproduce the tooltips not moving their position. Related: bug 431221 (cherry picked from commit 2c90be8d2ad8dbb345c0ed5d6afb196d69182cbb) M +1 -1 libs/widgets/KisPaletteModel.cpp https://invent.kde.org/graphics/krita/commit/011cf6195b82d6e198742c2122578a79dbc57eea