Bug 423840 - Versions 4.3.0 onwards have non-responsive canvas after enabling/disabling Canvas Graphics Acceleration
Summary: Versions 4.3.0 onwards have non-responsive canvas after enabling/disabling Ca...
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: General (show other bugs)
Version: nightly build (please specify the git hash!)
Platform: Debian stable Linux
: NOR normal
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2020-07-03 14:12 UTC by Ahab Greybeard
Modified: 2020-07-23 21:11 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ahab Greybeard 2020-07-03 14:12:30 UTC
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
Comment 1 Eoin O'Neill 2020-07-15 05:24:12 UTC
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.
Comment 2 Bug Janitor Service 2020-07-15 05:59:06 UTC
A possibly relevant merge request was started @ https://invent.kde.org/graphics/krita/-/merge_requests/426
Comment 3 Eoin O'Neill 2020-07-17 04:43:08 UTC
*** Bug 424220 has been marked as a duplicate of this bug. ***
Comment 4 Ahab Greybeard 2020-07-17 09:18:16 UTC
@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.
Comment 5 Eoin O'Neill 2020-07-22 19:04:32 UTC
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
Comment 6 Eoin O'Neill 2020-07-23 21:11:30 UTC
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