aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items
diff options
context:
space:
mode:
authorPaul Olav Tvete <paul.tvete@qt.io>2020-06-16 17:03:47 +0200
committerPaul Olav Tvete <paul.tvete@qt.io>2020-06-17 17:42:01 +0200
commit83fb4f6743860bfb746e6243aad00513d498db4f (patch)
tree816bf1a1d509124c6bfb4fc34cce2a4ed885f40e /src/quick/items
parent48e919e9647fd07351be37e1ad7efdda9c550be9 (diff)
Clean up QT_CONFIG(opengl)
Accelerated graphics is now possible without OpenGL support. With this change, a Qt build with -no-opengl can still run Qt Quick with a Vulkan, Metal, or Direct3D backend. Fixes: QTBUG-84027 Change-Id: Ib63c733d28cfdf7de16b138df136fa7628e1747b Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Diffstat (limited to 'src/quick/items')
-rw-r--r--src/quick/items/context2d/qquickcontext2dcommandbuffer.cpp4
-rw-r--r--src/quick/items/items.pri14
-rw-r--r--src/quick/items/items.qrc12
-rw-r--r--src/quick/items/qquickitemsmodule.cpp10
-rw-r--r--src/quick/items/qquickpainteditem.cpp4
-rw-r--r--src/quick/items/qquickrendercontrol.cpp6
-rw-r--r--src/quick/items/qquickshadereffect.cpp2
-rw-r--r--src/quick/items/qquickspriteengine.cpp2
-rw-r--r--src/quick/items/qquickwindow.cpp16
-rw-r--r--src/quick/items/qquickwindow.h1
-rw-r--r--src/quick/items/shaders/shadereffect.frag9
-rw-r--r--src/quick/items/shaders/shadereffect.vert12
-rw-r--r--src/quick/items/shaders/shadereffect_core.frag13
-rw-r--r--src/quick/items/shaders/shadereffect_core.vert14
-rw-r--r--src/quick/items/shaders/shadereffectfallback.frag4
-rw-r--r--src/quick/items/shaders/shadereffectfallback.vert8
-rw-r--r--src/quick/items/shaders/shadereffectfallback_core.frag8
-rw-r--r--src/quick/items/shaders/shadereffectfallback_core.vert10
18 files changed, 8 insertions, 141 deletions
diff --git a/src/quick/items/context2d/qquickcontext2dcommandbuffer.cpp b/src/quick/items/context2d/qquickcontext2dcommandbuffer.cpp
index 73b52d0c73..e3f8acad00 100644
--- a/src/quick/items/context2d/qquickcontext2dcommandbuffer.cpp
+++ b/src/quick/items/context2d/qquickcontext2dcommandbuffer.cpp
@@ -43,10 +43,6 @@
#include <QtCore/QMutex>
#include <QtQuick/qsgtexture.h>
#include <QtGui/QPaintEngine>
-#if QT_CONFIG(opengl)
-# include <QOpenGLContext>
-# include <private/qopenglpaintengine_p.h>
-#endif
#define HAS_SHADOW(offsetX, offsetY, blur, color) (color.isValid() && color.alpha() && (blur || offsetX || offsetY))
diff --git a/src/quick/items/items.pri b/src/quick/items/items.pri
index c3f350809d..dd477d0e5a 100644
--- a/src/quick/items/items.pri
+++ b/src/quick/items/items.pri
@@ -214,18 +214,6 @@ qtConfig(quick-shadereffect) {
$$PWD/qquickshadereffectsource.cpp \
$$PWD/qquickshadereffectmesh.cpp \
$$PWD/qquickshadereffect.cpp
-
- qtConfig(opengl) {
- OTHER_FILES += \
- $$PWD/shaders/shadereffect.vert \
- $$PWD/shaders/shadereffect.frag \
- $$PWD/shaders/shadereffectfallback.vert \
- $$PWD/shaders/shadereffectfallback.frag \
- $$PWD/shaders/shadereffect_core.vert \
- $$PWD/shaders/shadereffect_core.frag \
- $$PWD/shaders/shadereffectfallback_core.vert \
- $$PWD/shaders/shadereffectfallback_core.frag
- }
}
qtConfig(quick-sprite) {
@@ -252,8 +240,6 @@ qtConfig(opengl(es1|es2)?) {
$$PWD/qquickframebufferobject.h
}
-RESOURCES += \
- $$PWD/items.qrc
qtConfig(quick-canvas): \
include(context2d/context2d.pri)
diff --git a/src/quick/items/items.qrc b/src/quick/items/items.qrc
deleted file mode 100644
index 6aaf757c29..0000000000
--- a/src/quick/items/items.qrc
+++ /dev/null
@@ -1,12 +0,0 @@
-<RCC>
- <qresource prefix="/qt-project.org/items">
- <file>shaders/shadereffect.vert</file>
- <file>shaders/shadereffect.frag</file>
- <file>shaders/shadereffectfallback.frag</file>
- <file>shaders/shadereffectfallback.vert</file>
- <file>shaders/shadereffect_core.frag</file>
- <file>shaders/shadereffect_core.vert</file>
- <file>shaders/shadereffectfallback_core.frag</file>
- <file>shaders/shadereffectfallback_core.vert</file>
- </qresource>
-</RCC>
diff --git a/src/quick/items/qquickitemsmodule.cpp b/src/quick/items/qquickitemsmodule.cpp
index 12d9a499e4..a34ffa829d 100644
--- a/src/quick/items/qquickitemsmodule.cpp
+++ b/src/quick/items/qquickitemsmodule.cpp
@@ -182,16 +182,16 @@ static void qt_quickitems_defineModule()
qRegisterMetaType<QQuickHandlerPoint>();
}
-static void initResources()
-{
- Q_INIT_RESOURCE(items);
-}
+//static void initResources()
+//{
+// Q_INIT_RESOURCE(items);
+//}
QT_BEGIN_NAMESPACE
void QQuickItemsModule::defineModule()
{
- initResources();
+// initResources();
qt_quickitems_defineModule();
}
diff --git a/src/quick/items/qquickpainteditem.cpp b/src/quick/items/qquickpainteditem.cpp
index 6490f4dcdd..6a9599badf 100644
--- a/src/quick/items/qquickpainteditem.cpp
+++ b/src/quick/items/qquickpainteditem.cpp
@@ -640,13 +640,11 @@ QSGTextureProvider *QQuickPaintedItem::textureProvider() const
return QQuickItem::textureProvider();
Q_D(const QQuickPaintedItem);
-#if QT_CONFIG(opengl)
QQuickWindow *w = window();
- if (!w || !w->isSceneGraphInitialized() || QThread::currentThread() != QQuickWindowPrivate::get(w)->context->thread()) {
+ if (!w || !w->isSceneGraphInitialized() || QThread::currentThread() != d->sceneGraphContext()->thread()) {
qWarning("QQuickPaintedItem::textureProvider: can only be queried on the rendering thread of an exposed window");
return nullptr;
}
-#endif
if (!d->textureProvider)
d->textureProvider = new QQuickPaintedItemTextureProvider();
d->textureProvider->node = d->node;
diff --git a/src/quick/items/qquickrendercontrol.cpp b/src/quick/items/qquickrendercontrol.cpp
index 53c0b6b731..51483bce57 100644
--- a/src/quick/items/qquickrendercontrol.cpp
+++ b/src/quick/items/qquickrendercontrol.cpp
@@ -203,8 +203,7 @@ void QQuickRenderControlPrivate::windowDestroyed()
rc->invalidate();
QQuickWindowPrivate::get(window)->animationController.reset();
-// ### Qt 6 clean this up
-#if QT_CONFIG(quick_shadereffect) && QT_CONFIG(opengl)
+#if QT_CONFIG(quick_shadereffect)
QSGRhiShaderEffectNode::cleanupMaterialTypeCache();
#endif
window = nullptr;
@@ -281,8 +280,6 @@ int QQuickRenderControl::samples() const
bool QQuickRenderControl::initialize()
{
Q_D(QQuickRenderControl);
-// ### Qt 6 clean this up
-#if QT_CONFIG(opengl)
if (!d->window) {
qWarning("QQuickRenderControl::initialize called with no associated window");
return false;
@@ -306,7 +303,6 @@ bool QQuickRenderControl::initialize()
qWarning("QRhi is only compatible with default adaptation");
return false;
}
-#endif
return true;
}
diff --git a/src/quick/items/qquickshadereffect.cpp b/src/quick/items/qquickshadereffect.cpp
index c4c48fdea5..a19d881419 100644
--- a/src/quick/items/qquickshadereffect.cpp
+++ b/src/quick/items/qquickshadereffect.cpp
@@ -40,9 +40,7 @@
#include <private/qquickshadereffect_p.h>
#include <private/qsgcontextplugin_p.h>
#include <private/qquickitem_p.h>
-#if QT_CONFIG(opengl) /* || QT_CONFIG(vulkan) || defined(Q_OS_WIN) || defined(Q_OS_DARWIN) */
#include <private/qsgrhisupport_p.h>
-#endif
#include <private/qquickwindow_p.h>
#include <private/qquickitem_p.h>
diff --git a/src/quick/items/qquickspriteengine.cpp b/src/quick/items/qquickspriteengine.cpp
index 3e4ed8707b..f20d8bc6c8 100644
--- a/src/quick/items/qquickspriteengine.cpp
+++ b/src/quick/items/qquickspriteengine.cpp
@@ -45,8 +45,6 @@
#include <QPainter>
#include <QRandomGenerator>
#include <QSet>
-#include <qopengl.h>
-#include <QOpenGLFunctions>
QT_BEGIN_NAMESPACE
diff --git a/src/quick/items/qquickwindow.cpp b/src/quick/items/qquickwindow.cpp
index 22d99be2c0..faf4eb1b50 100644
--- a/src/quick/items/qquickwindow.cpp
+++ b/src/quick/items/qquickwindow.cpp
@@ -80,8 +80,8 @@
#include <private/qqmldebugserviceinterfaces_p.h>
#include <private/qqmldebugconnector_p.h>
-#if QT_CONFIG(opengl)
#include <private/qsgdefaultrendercontext_p.h>
+#if QT_CONFIG(opengl)
#include <private/qopengl_p.h>
#include <QOpenGLContext>
#endif
@@ -105,7 +105,6 @@ Q_LOGGING_CATEGORY(DBG_FOCUS, "qt.quick.focus")
Q_LOGGING_CATEGORY(DBG_DIRTY, "qt.quick.dirty")
Q_LOGGING_CATEGORY(lcTransient, "qt.quick.window.transient")
-extern Q_GUI_EXPORT QImage qt_gl_read_framebuffer(const QSize &size, bool alpha_format, bool include_alpha);
extern Q_GUI_EXPORT bool qt_sendShortcutOverrideEvent(QObject *o, ulong timestamp, int k, Qt::KeyboardModifiers mods, const QString &text = QString(), bool autorep = false, ushort count = 1);
bool QQuickWindowPrivate::defaultAlphaBuffer = false;
@@ -4791,7 +4790,6 @@ QSGTexture *QQuickWindow::createTextureFromNativeObject(NativeObjectType type,
return nullptr;
}
-#if QT_CONFIG(opengl) /* || QT_CONFIG(vulkan) || defined(Q_OS_WIN) || defined(Q_OS_DARWIN) */
Q_D(const QQuickWindow);
if (d->rhi) {
QSGPlainTexture *texture = new QSGPlainTexture;
@@ -4803,12 +4801,6 @@ QSGTexture *QQuickWindow::createTextureFromNativeObject(NativeObjectType type,
texture->setTextureSize(size);
return texture;
}
-#else
- Q_UNUSED(nativeObjectHandle);
- Q_UNUSED(nativeLayout);
- Q_UNUSED(size);
- Q_UNUSED(options);
-#endif
return nullptr;
}
@@ -4950,7 +4942,6 @@ const QQuickWindow::GraphicsStateInfo &QQuickWindow::graphicsStateInfo()
*/
void QQuickWindow::beginExternalCommands()
{
-#if QT_CONFIG(opengl) /* || QT_CONFIG(vulkan) || defined(Q_OS_WIN) || defined(Q_OS_DARWIN) */
Q_D(QQuickWindow);
if (d->rhi && d->context && d->context->isValid()) {
QSGDefaultRenderContext *rc = static_cast<QSGDefaultRenderContext *>(d->context);
@@ -4958,7 +4949,6 @@ void QQuickWindow::beginExternalCommands()
if (cb)
cb->beginExternal();
}
-#endif
}
/*!
@@ -4989,7 +4979,6 @@ void QQuickWindow::beginExternalCommands()
*/
void QQuickWindow::endExternalCommands()
{
-#if QT_CONFIG(opengl) /* || QT_CONFIG(vulkan) || defined(Q_OS_WIN) || defined(Q_OS_DARWIN) */
Q_D(QQuickWindow);
if (d->rhi && d->context && d->context->isValid()) {
QSGDefaultRenderContext *rc = static_cast<QSGDefaultRenderContext *>(d->context);
@@ -4997,7 +4986,6 @@ void QQuickWindow::endExternalCommands()
if (cb)
cb->endExternal();
}
-#endif
}
/*!
@@ -5581,10 +5569,8 @@ void QQuickWindow::setSceneGraphBackend(QSGRendererInterface::GraphicsApi api)
default:
break;
}
-#if QT_CONFIG(opengl) /* || QT_CONFIG(vulkan) || defined(Q_OS_WIN) || defined(Q_OS_DARWIN) */
if (QSGRendererInterface::isApiRhiBased(api))
QSGRhiSupport::configure(api);
-#endif
}
/*!
diff --git a/src/quick/items/qquickwindow.h b/src/quick/items/qquickwindow.h
index 972d44b1c3..dc9eeb4e70 100644
--- a/src/quick/items/qquickwindow.h
+++ b/src/quick/items/qquickwindow.h
@@ -44,7 +44,6 @@
#include <QtQuick/qsgrendererinterface.h>
#include <QtCore/qmetatype.h>
-#include <QtGui/qopengl.h>
#include <QtGui/qwindow.h>
#include <QtGui/qevent.h>
#include <QtQml/qqml.h>
diff --git a/src/quick/items/shaders/shadereffect.frag b/src/quick/items/shaders/shadereffect.frag
deleted file mode 100644
index c1c15ecb0c..0000000000
--- a/src/quick/items/shaders/shadereffect.frag
+++ /dev/null
@@ -1,9 +0,0 @@
-varying highp vec2 qt_TexCoord0;
-
-uniform sampler2D source;
-uniform lowp float qt_Opacity;
-
-void main()
-{
- gl_FragColor = texture2D(source, qt_TexCoord0) * qt_Opacity;
-} \ No newline at end of file
diff --git a/src/quick/items/shaders/shadereffect.vert b/src/quick/items/shaders/shadereffect.vert
deleted file mode 100644
index ae1e84a50c..0000000000
--- a/src/quick/items/shaders/shadereffect.vert
+++ /dev/null
@@ -1,12 +0,0 @@
-uniform highp mat4 qt_Matrix;
-
-attribute highp vec4 qt_Vertex;
-attribute highp vec2 qt_MultiTexCoord0;
-
-varying highp vec2 qt_TexCoord0;
-
-void main()
-{
- qt_TexCoord0 = qt_MultiTexCoord0;
- gl_Position = qt_Matrix * qt_Vertex;
-} \ No newline at end of file
diff --git a/src/quick/items/shaders/shadereffect_core.frag b/src/quick/items/shaders/shadereffect_core.frag
deleted file mode 100644
index 2163753edc..0000000000
--- a/src/quick/items/shaders/shadereffect_core.frag
+++ /dev/null
@@ -1,13 +0,0 @@
-#version 150 core
-
-in vec2 qt_TexCoord0;
-
-out vec4 fragColor;
-
-uniform sampler2D source;
-uniform float qt_Opacity;
-
-void main()
-{
- fragColor = texture(source, qt_TexCoord0) * qt_Opacity;
-} \ No newline at end of file
diff --git a/src/quick/items/shaders/shadereffect_core.vert b/src/quick/items/shaders/shadereffect_core.vert
deleted file mode 100644
index 2ed2d47b5f..0000000000
--- a/src/quick/items/shaders/shadereffect_core.vert
+++ /dev/null
@@ -1,14 +0,0 @@
-#version 150 core
-
-in vec4 qt_Vertex;
-in vec2 qt_MultiTexCoord0;
-
-out vec2 qt_TexCoord0;
-
-uniform mat4 qt_Matrix;
-
-void main()
-{
- qt_TexCoord0 = qt_MultiTexCoord0;
- gl_Position = qt_Matrix * qt_Vertex;
-} \ No newline at end of file
diff --git a/src/quick/items/shaders/shadereffectfallback.frag b/src/quick/items/shaders/shadereffectfallback.frag
deleted file mode 100644
index d279e54083..0000000000
--- a/src/quick/items/shaders/shadereffectfallback.frag
+++ /dev/null
@@ -1,4 +0,0 @@
-void main()
-{
- gl_FragColor = vec4(1., 0., 1., 1.);
-} \ No newline at end of file
diff --git a/src/quick/items/shaders/shadereffectfallback.vert b/src/quick/items/shaders/shadereffectfallback.vert
deleted file mode 100644
index 0a11a1d340..0000000000
--- a/src/quick/items/shaders/shadereffectfallback.vert
+++ /dev/null
@@ -1,8 +0,0 @@
-uniform highp mat4 qt_Matrix;
-
-attribute highp vec4 v;
-
-void main()
-{
- gl_Position = qt_Matrix * v;
-} \ No newline at end of file
diff --git a/src/quick/items/shaders/shadereffectfallback_core.frag b/src/quick/items/shaders/shadereffectfallback_core.frag
deleted file mode 100644
index 4abf124737..0000000000
--- a/src/quick/items/shaders/shadereffectfallback_core.frag
+++ /dev/null
@@ -1,8 +0,0 @@
-#version 150 core
-
-out vec4 fragColor;
-
-void main()
-{
- fragColor = vec4(1., 0., 1., 1.);
-} \ No newline at end of file
diff --git a/src/quick/items/shaders/shadereffectfallback_core.vert b/src/quick/items/shaders/shadereffectfallback_core.vert
deleted file mode 100644
index b1ca84cc6d..0000000000
--- a/src/quick/items/shaders/shadereffectfallback_core.vert
+++ /dev/null
@@ -1,10 +0,0 @@
-#version 150 core
-
-in vec4 v;
-
-uniform mat4 qt_Matrix;
-
-void main()
-{
- gl_Position = qt_Matrix * v;
-} \ No newline at end of file