Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Substitute QGL classes with QOpenGL #764

Merged
merged 4 commits into from Feb 18, 2022
Merged

Conversation

YakoYakoYokuYoku
Copy link
Member

@YakoYakoYokuYoku YakoYakoYokuYoku commented Jan 30, 2022

PR Description

What type of PR is this? (Check one of the boxes below)

  • Bug fix (non-breaking change which fixes an issue)

What does this pull request do?

Given that the Qt OpenGL module was deprecated in Qt 5.4.0, removed in Qt 6 and most importantly was not functioning under a Wayland session (e.g. alpha output in KDE KWin or corrupted images in Sway), I've replaced its usage with the newer OpenGL integration from Qt Gui and used both type definitions plus preprocessor conditionals for backwards compatibility with Qt 4.

Show a few screenshots (if this is a visual change)

2022-01-30_19-37

Have you tested your changes (if applicable)? If so, how?

By building Natron and using the viewer, the dope sheet editor, the curve editor and the histogram.

Futher details of this pull request

Will post support for Wayland offscreen (OSGLContext) soon.

YakoYakoYokuYoku added a commit that referenced this pull request Jan 30, 2022
YakoYakoYokuYoku added a commit that referenced this pull request Jan 30, 2022
YakoYakoYokuYoku added a commit that referenced this pull request Jan 31, 2022
YakoYakoYokuYoku added a commit that referenced this pull request Jan 31, 2022
@devernay
Copy link
Member

devernay commented Feb 1, 2022

Did you test the Qt4 build as well?

@YakoYakoYokuYoku
Copy link
Member Author

Yes, although it was only on a Linux box but I think it'll do fine on the other OSes.

Copy link
Member

@devernay devernay left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

asking for a few changes and explanations

Gui/QGLWidgetCompat.h Outdated Show resolved Hide resolved
Gui/TextRenderer.cpp Outdated Show resolved Hide resolved
Gui/ViewerGL.cpp Show resolved Hide resolved
Gui/QGLExtrasCompat.h Outdated Show resolved Hide resolved
@devernay
Copy link
Member

devernay commented Feb 6, 2022

I'll take some time to test on macOS (Qt4 and Qt5). Sorry if it causes some delay

@YakoYakoYokuYoku
Copy link
Member Author

I'll take some time to test on macOS (Qt4 and Qt5). Sorry if it causes some delay

No problem with it and thanks for taking the time to test it.

@YakoYakoYokuYoku
Copy link
Member Author

@devernay how's testing going? As this is a blocker for some local work, although no problem if testing should take even more time.

@devernay
Copy link
Member

good!

@devernay devernay merged commit 4946c83 into RB-2.5 Feb 18, 2022
@YakoYakoYokuYoku YakoYakoYokuYoku mentioned this pull request Jun 8, 2022
@YakoYakoYokuYoku YakoYakoYokuYoku deleted the qopengl-instead-of-qgl branch June 18, 2022 18:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants