I've been experiencing some maddening issues with brush presets. There are two slightly different problems. I'm not sure if they're related, but they have a lot in common, so I'm posting them as one bug. I use sessions, and I don't know if these problems occur when not using sessions. I'm also was not sure which component to select for the bug report. I chose Dockers, as this involves two of them. ------ The first problem is related to opacity. An actively-selected brush with opacity less than 100% will be changed to 100% opacity in the following situations: a. Upon starting Krita, when using sessions, when the second window opens. The brush's opacity is fine when the first window opens, but once Krita starts to open the second, the opacity becomes 100%. STEPS TO REPRODUCE 1. Using sessions, open more than one window and select a brush with opacity. 2. Save the session and close it. 3. Reopen the session. OBSERVED RESULT The selected brush's opacity will change to 100% when the second window opens. EXPECTED RESULT The brush's opacity should be unchanged. --- b. When clicking on one of the icons in the toolbox docker, the opacity of the brush will change to 100%. This only happens once per icon though. After you reset the brush by clicking "reload brush preset," this does not happen for the same icon, but it will happen for another icon that hasn't previously been selected. This also happens per window. If you switch to another window, the bug starts all over again. STEPS TO REPRODUCE 1. Open Krita with a saved session. 2. Select a brush with opacity. Reload it to clear up the above issue if affected. 3. Click on one of the icons in the toolbox docker. OBSERVED RESULT The selected brush's opacity will change to 100%. EXPECTED RESULT The brush's opacity should be unchanged. ------ The second part of this bug doesn't change opacity, however, the small "pencil" overlay in the Brush Presets docker that signifies when a brush has been changed from its original preset appears on the active brush when doing certain things, even though the brush settings seem not to have not been changed, at least not obviously. This happens when: a. Switching to another opened window (in sessions) for the first time. Once you click the "reload original preset" button, it doesn't happen again when selecting that same window. STEPS TO REPRODUCE 1. Using sessions, select a brush with opacity and clear up any issues with the first part of this bug, as above. 2. Switch to another open window. OBSERVED RESULT The "pencil" overlay appears on the selected brush, though the brush's settings don't appear to have been changed. EXPECTED RESULT The overlay shouldn't appear and the brush settings shouldn't change. --- b. When selecting one of the selection tools. Simply clicking on the icon in the toolbox docker or hitting the new keyboard shortcuts will cause this to happen repeatedly until you click one of the non-selection tool icons in the docker, for example the Assistant Tool. Using that example, the overlay appears on the brush preset the first time you click the Assistant Tool icon, and, after you reload the preset, will appear again when you click on one of the selection tools, but after that it does not appear again when clicking on any icons in the toolbox docker. STEPS TO REPRODUCE 1. Using sessions, reload the brush presets to clear up issues with the first part of this bug. 2. Click on one of the selection tools and then reload the brush's presets again to clear up issues with the second part of this bug. 3. Now, click on one of the selection tools again. OBSERVED RESULT The "pencil" overlay appears on the selected brush, though the brush's settings don't appear to have been changed. EXPECTED RESULT The overlay shouldn't appear and the brush settings shouldn't change. ------ This behavior was occurring in 4.1 as well, but I didn't figure out what was causing it until just today. I hope my descriptions are clear. I spent an hour-and-a-half tracking down all the situations that cause it to happen. SOFTWARE/OS VERSIONS Krita Version: 4.4.2-beta1 Languages: en_US, en Hidpi: true 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: 5.8.18-300.fc33.x86_64 Pretty Productname: Fedora 33 (Cinnamon) Product Type: fedora Product Version: 33 Desktop: X-Cinnamon OpenGL Info Vendor: "NVIDIA Corporation" Renderer: "Quadro 600/PCIe/SSE2" Version: "4.6.0 NVIDIA 390.138" 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: 24037 Mb Number of Cores: 4 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 Display Information Number of screens: 2 Screen: 0 Name: DVI-I-1 Depth: 24 Scale: 1 Resolution in pixels: 1920x1080 Manufacturer: HPN Model: HP VH240a- Refresh Rate: 60 Screen: 1 Name: DP-0 Depth: 24 Scale: 1 Resolution in pixels: 1920x1080 Manufacturer: LG Electronics Model: LG IPS FULLHD Refresh Rate: 60
In relation to the first part of the bug, I'll also add that when a new window is manually opened in an active session, brushes with opacity less than 100% will have that opacity changed to 100% as well.
Just updating to say this still happens in 4.4.2-beta2.
Yes, we haven't fixed this yet, or even had time to triage the report, sorry for that! Since it wasn't a regression -- you note it also happens in 4.1 -- it didn't have priority for 4.4.2-beta2. We only fix regressions after the first beta has been released, because any bug fix brings with it the chance for another regression.
No worries. That's understandable. Let me add that today I discovered another event that triggers this bug: Plugging in my graphics tablet, an Intuos 4, while a brush with less than 100% opacity is selected, will also trigger the "edited" icon on the brush preset the first time the pen comes close enough to the tablet to be active. STEPS TO REPRODUCE 1. Select a brush with less than 100% opacity. 2. Plug in a graphics tablet. 3. Bring the pen into contact with the tablet. OBSERVED RESULT The "pencil" overlay appears on the selected brush, though the brush's settings don't appear to have been changed. EXPECTED RESULT The overlay shouldn't appear and the brush settings shouldn't change. I've also noticed other instances of this bug happening while working. I haven't yet figured out what triggers those events however. I also have two brushes that switch opacity at least once a day. My sketch pencil, at 75% opacity, and my eraser, at 100%, will sometimes trade opacities. I don't know what triggers that yet either. I'm assuming it's related to the other instances. I hope this extra information helps triage the bug when you're ready to tackle it.
There is bug 422086 which seems to be related, if not a duplicate. Both reports have lots of information and slightly so I'm not sure if I should mark one as duplicate and if so, which one.
*** Bug 422086 has been marked as a duplicate of this bug. ***