SUMMARY This happens for 4.3.0 onwards including the latest Nightly builds. It happens with appimages and Windows .zip packages. It does not happen in 4.2.9. STEPS TO REPRODUCE 1. Create a new image and paint on it. 2. Change the enabled/disabled state of Canvas Graphics Acceleration. NOTE: After a short delay with the system cursor shown on the canvas, no canvas operations can be carried out. The brush cursor is frozen but other tool cursors will show and will move but carry out no action. Layer visibility can be turned on and off and brush presets can be selected. Changing the state of canvas graphics Acceleration has no effect. 3. Create a new image and paint on it. NOTE: This can be done with no problem but the first image can not be worked on. 4. Change the enabled/disabled state of Canvas Graphics Acceleration. NOTE: Both images can now be painted on etc. 5. Create another image, paint, change state of canvas graphics Acceleration. NOTE: No more problems. OBSERVED RESULT Windows seems to be more complicated and sometimes the first image locked up all the time. Sometimes it didn't. EXPECTED RESULT Changing the state of Canvas Graphics Acceleration should not affect the ability to paint (etc) on the canvas. SOFTWARE/OS VERSIONS Krita Version: 4.3.1-alpha (git f717b03) Languages: en_GB, en, en, en_GB, 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: 4.19.0-9-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 440.82" Shading language: "4.60 NVIDIA" Requested format: QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize -1, redBufferSize -1, greenBufferSize -1, blueBufferSize -1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::DefaultSwapBehavior, swapInterval 1, colorSpace QSurfaceFormat::DefaultColorSpace, profile QSurfaceFormat::NoProfile) Current format: QSurfaceFormat(version 4.6, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 0, stencilBufferSize 0, samples -1, swapBehavior QSurfaceFormat::DefaultSwapBehavior, swapInterval 1, 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: none 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: 83 Use OpenGL: false Use OpenGL Texture Buffer: true Use AMD Vectorization Workaround: false Canvas State: OPENGL_SUCCESS Autosave Interval: 60 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-D-1 Depth: 24 Scale: 1 Resolution in pixels: 1280x1024 Manufacturer: Dell Inc. Model: DELL 1704FPV- Refresh Rate: 60 Screen: 1 Name: DVI-D-0 Depth: 24 Scale: 1 Resolution in pixels: 1280x1024 Manufacturer: Dell Inc. Model: DELL 1704FPV- Refresh Rate: 75 Current Settings Current Swap Location: /tmp Current Swap Location writable: true Undo Enabled: true Undo Stack Limit: 83 Use OpenGL: true Use OpenGL Texture Buffer: true Use AMD Vectorization Workaround: false Canvas State: TRY_OPENGL Autosave Interval: 60 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
Bisect tracked this bug introduction to commit: 5aef0e99a7b64a8cdb6970803e9c080d47e918e6 I don't have time to look at it tonight, but I'll do a thorough look at it tomorrow.
A possibly relevant merge request was started @ https://invent.kde.org/graphics/krita/-/merge_requests/426
*** Bug 424220 has been marked as a duplicate of this bug. ***
@Eoin re. Comment 3 Bug 424220 has not been marked as a duplicate of this bug (423840) It has been marked as a duplicate of 424037.
Git commit c0362a9cafa18c035215ebc2703fe5f6ff456220 by Eoin O'Neill. Committed on 22/07/2020 at 19:04. Pushed by eoinoneill into branch 'master'. Fixup: Canvas No Longer Soft-Locks When Changing Graphics Acceleration Setting Initial attempt to fix this bug, tracked origin from commit: 5aef0e99a7b64a8cdb6970803e9c080d47e918e6 NOTE: Originally, we didn't always check for *new* canvas assignments, only that the canvas wasn't within a specific data structure. M +3 -0 libs/ui/input/kis_input_manager_p.cpp https://invent.kde.org/graphics/krita/commit/c0362a9cafa18c035215ebc2703fe5f6ff456220
Git commit 2f76eb471d63d3a092c7d49f9f6d7ab9b7cd608b by Eoin O'Neill. Committed on 23/07/2020 at 21:11. Pushed by eoinoneill into branch 'krita/4.3'. Fixup: Canvas No Longer Soft-Locks When Changing Graphics Acceleration Setting Initial attempt to fix this bug, tracked origin from commit: 5aef0e99a7b64a8cdb6970803e9c080d47e918e6 NOTE: Originally, we didn't always check for *new* canvas assignments, only that the canvas wasn't within a specific data structure. (cherry picked from commit c0362a9cafa18c035215ebc2703fe5f6ff456220) M +3 -0 libs/ui/input/kis_input_manager_p.cpp https://invent.kde.org/graphics/krita/commit/2f76eb471d63d3a092c7d49f9f6d7ab9b7cd608b