SUMMARY This effect can be easily induced and can also be 'fixed' by inducing another inversion. It happens per-document and a new document or freshly opened document will not have this. It happens with all versions from 4.1.7 onwards. This is confusing but not a disaster so I classed it as Minor. STEPS TO REPRODUCE 1. With any number of assistants already in place, turn off Show Painting Assistants. 2. Using the Assistant Tool, create a new assistant. 3. Note that Show Painting Assistants is now set to 'on/ticked' but that assistants are not shown. 4. Note that the operation of Show Painting Assistants is now inverted with the Assistant Tool and with the painting tools. 5. Turn off Show Painting Assistants and create a new assistant. (You can also delete an existing assistant to get the same result as in 6.) 6. Note that Show Painting Assistants now works normally. It has been inverted back to normal. OBSERVED RESULT See Steps to reproduce. EXPECTED RESULT It doesn't happen SOFTWARE/OS VERSIONS Krita Version: 4.3.0-prealpha (git dffa076) Languages: en_GB, en, en, en_GB, en Hidpi: true Qt Version (compiled): 5.12.5 Version (loaded): 5.12.5 OS Information Build ABI: x86_64-little_endian-lp64 Build CPU: x86_64 CPU: x86_64 Kernel Type: linux Kernel Version: 4.19.0-6-amd64 Pretty Productname: Debian GNU/Linux 10 (buster) Product Type: debian Product Version: 10 OpenGL Info Vendor: "NVIDIA Corporation" Renderer: "GeForce GTX 750 Ti/PCIe/SSE2" Version: "4.6.0 NVIDIA 418.74" 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
I don't even have to test this to confirm it :-)
To add to this report, View > Show Painting Assistants can also get confused when going between multiple open documents after it was used to hide assistants in one of documents previously. View > Show Assistant Previews seems to remain correctly in sync with the visibility of the helper preview in the current document. View > Show Reference Images works as a global switch across all open documents. Maybe this option could also be changed to work per-document, that would be a bit more useful and consistent in my opinion.
Git commit 0da91363b998f02deb309f3581b1a88aa8a61edb by Agata Cacko. Committed on 22/09/2021 at 11:57. Pushed by tymond into branch 'master'. Fix Show Painting Assistants to update correctly Before this commit, if you opened two files with assistants, and in one turned the View -> Show Painting Assistants off, and then switch to the other file and to that same file again, the View -> Show Painting Assistant would be "on" even though the painting assistants wouldn't be drawn on the canvas (only preview would be visible). And then switching it off would actually turn the drawing of the assistants on. Another way to reproduce this issue would be to open a new document, create a new assistant, turn off Show Painting Assistant, then create a new assistant. Show Painting Assistant now looks "on" but the drawing of the assistants is still actually off (which is correct and it's just the checkbox that should stay "off"). This commit fixes this behaviour and now the checkbox in the View menu reflects correctly the current state of drawing the assistant. Related: bug 399419 M +1 -1 libs/ui/KisDecorationsManager.cpp M +1 -0 libs/ui/kis_painting_assistants_decoration.cpp https://invent.kde.org/graphics/krita/commit/0da91363b998f02deb309f3581b1a88aa8a61edb
Git commit 476806ba2007faaad18df7fc9fa57dd4c3be9290 by Agata Cacko. Committed on 24/09/2021 at 13:45. Pushed by tymond into branch 'krita/5.0'. Fix Show Painting Assistants to update correctly Before this commit, if you opened two files with assistants, and in one turned the View -> Show Painting Assistants off, and then switch to the other file and to that same file again, the View -> Show Painting Assistant would be "on" even though the painting assistants wouldn't be drawn on the canvas (only preview would be visible). And then switching it off would actually turn the drawing of the assistants on. Another way to reproduce this issue would be to open a new document, create a new assistant, turn off Show Painting Assistant, then create a new assistant. Show Painting Assistant now looks "on" but the drawing of the assistants is still actually off (which is correct and it's just the checkbox that should stay "off"). This commit fixes this behaviour and now the checkbox in the View menu reflects correctly the current state of drawing the assistant. Related: bug 399419 M +1 -1 libs/ui/KisDecorationsManager.cpp M +1 -0 libs/ui/kis_painting_assistants_decoration.cpp https://invent.kde.org/graphics/krita/commit/476806ba2007faaad18df7fc9fa57dd4c3be9290