1
0
mirror of https://github.com/termux/termux-packages synced 2024-06-21 12:27:09 +00:00
termux-packages/x11-packages/kirigami2/no_opengl.patch
Kevin Williams 9019fdfba0 upgpkg(x11/kirigami2): 5.99.0
Signed-off-by: Kevin Williams <admin@utermux.dev>
2022-11-15 12:01:03 +08:00

163 lines
6.1 KiB
Diff

Qt on Termux doesn't have OpenGL. This dirty patch comments out all OpenGL related code so
it can be compiled. However, this means the Kirigami 2 might not function completely or
correctly.
diff -uNr kirigami2-5.99.0/src/scenegraph/shadowedborderrectanglematerial.cpp kirigami2-5.99.0.mod/src/scenegraph/shadowedborderrectanglematerial.cpp
--- kirigami2-5.99.0/src/scenegraph/shadowedborderrectanglematerial.cpp 2022-10-01 22:20:15.000000000 +0800
+++ kirigami2-5.99.0.mod/src/scenegraph/shadowedborderrectanglematerial.cpp 2022-11-12 15:46:43.598160969 +0800
@@ -1,13 +1,14 @@
/*
+ *
* SPDX-FileCopyrightText: 2020 Arjen Hiemstra <ahiemstra@heimr.nl>
*
* SPDX-License-Identifier: LGPL-2.0-or-later
*/
#include "shadowedborderrectanglematerial.h"
-
+#ifndef __ANDROID__
#include <QOpenGLContext>
-
+#endif
QSGMaterialType ShadowedBorderRectangleMaterial::staticType;
ShadowedBorderRectangleMaterial::ShadowedBorderRectangleMaterial()
@@ -54,8 +55,10 @@
void ShadowedBorderRectangleShader::initialize()
{
ShadowedRectangleShader::initialize();
+#ifndef __ANDROID__
m_borderWidthLocation = program()->uniformLocation("borderWidth");
m_borderColorLocation = program()->uniformLocation("borderColor");
+#endif
}
void ShadowedBorderRectangleShader::updateState(const QSGMaterialShader::RenderState &state, QSGMaterial *newMaterial, QSGMaterial *oldMaterial)
diff -uNr kirigami2-5.99.0/src/scenegraph/shadowedbordertexturematerial.cpp kirigami2-5.99.0.mod/src/scenegraph/shadowedbordertexturematerial.cpp
--- kirigami2-5.99.0/src/scenegraph/shadowedbordertexturematerial.cpp 2022-10-01 22:20:15.000000000 +0800
+++ kirigami2-5.99.0.mod/src/scenegraph/shadowedbordertexturematerial.cpp 2022-11-12 15:49:05.098160915 +0800
@@ -5,9 +5,9 @@
*/
#include "shadowedbordertexturematerial.h"
-
+#ifndef __ANDROID__
#include <QOpenGLContext>
-
+#endif
QSGMaterialType ShadowedBorderTextureMaterial::staticType;
ShadowedBorderTextureMaterial::ShadowedBorderTextureMaterial()
@@ -56,7 +56,9 @@
void ShadowedBorderTextureShader::initialize()
{
ShadowedBorderRectangleShader::initialize();
+#ifndef __ANDROID__
program()->setUniformValue("textureSource", 0);
+#endif
}
void ShadowedBorderTextureShader::updateState(const QSGMaterialShader::RenderState &state, QSGMaterial *newMaterial, QSGMaterial *oldMaterial)
diff -uNr kirigami2-5.99.0/src/scenegraph/shadowedrectanglematerial.cpp kirigami2-5.99.0.mod/src/scenegraph/shadowedrectanglematerial.cpp
--- kirigami2-5.99.0/src/scenegraph/shadowedrectanglematerial.cpp 2022-10-01 22:20:15.000000000 +0800
+++ kirigami2-5.99.0.mod/src/scenegraph/shadowedrectanglematerial.cpp 2022-11-12 15:44:07.888161028 +0800
@@ -5,9 +5,9 @@
*/
#include "shadowedrectanglematerial.h"
-
+#ifndef __ANDROID__
#include <QOpenGLContext>
-
+#endif
QSGMaterialType ShadowedRectangleMaterial::staticType;
ShadowedRectangleMaterial::ShadowedRectangleMaterial()
@@ -60,6 +60,7 @@
void ShadowedRectangleShader::initialize()
{
QSGMaterialShader::initialize();
+#ifndef __ANDROID
m_matrixLocation = program()->uniformLocation("matrix");
m_aspectLocation = program()->uniformLocation("aspect");
m_opacityLocation = program()->uniformLocation("opacity");
@@ -68,10 +69,12 @@
m_colorLocation = program()->uniformLocation("color");
m_shadowColorLocation = program()->uniformLocation("shadowColor");
m_offsetLocation = program()->uniformLocation("offset");
+#endif
}
void ShadowedRectangleShader::updateState(const QSGMaterialShader::RenderState &state, QSGMaterial *newMaterial, QSGMaterial *oldMaterial)
{
+#ifndef __ANDROID__
auto p = program();
if (state.isMatrixDirty()) {
@@ -91,6 +94,7 @@
p->setUniformValue(m_shadowColorLocation, material->shadowColor);
p->setUniformValue(m_offsetLocation, material->offset);
}
+#endif
}
#else
bool ShadowedRectangleShader::updateUniformData(RenderState &state, QSGMaterial *newMaterial, QSGMaterial *oldMaterial)
@@ -134,6 +138,7 @@
const auto shaderRoot = QStringLiteral(":/org/kde/kirigami/shaders/");
#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+#ifndef __ANDROID__
auto header = QOpenGLContext::currentContext()->isOpenGLES() ? QStringLiteral("header_es.glsl") : QStringLiteral("header_desktop.glsl");
setShaderSourceFiles(QOpenGLShader::Vertex, {shaderRoot + header, shaderRoot + QStringLiteral("shadowedrectangle.vert")});
@@ -144,7 +149,7 @@
shaderFile = shader + QStringLiteral("_lowpower.frag");
sdfFile = QStringLiteral("sdf_lowpower.glsl");
}
-
+#endif
setShaderSourceFiles(QOpenGLShader::Fragment, {shaderRoot + header, shaderRoot + sdfFile, shaderRoot + shaderFile});
#else
setShaderFileName(QSGMaterialShader::VertexStage, shaderRoot + QStringLiteral("shadowedrectangle.vert.qsb"));
diff -uNr kirigami2-5.99.0/src/scenegraph/shadowedrectanglematerial.h kirigami2-5.99.0.mod/src/scenegraph/shadowedrectanglematerial.h
--- kirigami2-5.99.0/src/scenegraph/shadowedrectanglematerial.h 2022-10-01 22:20:15.000000000 +0800
+++ kirigami2-5.99.0.mod/src/scenegraph/shadowedrectanglematerial.h 2022-11-12 15:44:59.748161008 +0800
@@ -9,7 +9,7 @@
#include <QColor>
#include <QSGMaterial>
#include <QSGMaterialShader>
-
+#include <QVector2D>
/**
* A material rendering a rectangle with a shadow.
*
diff -uNr kirigami2-5.99.0/src/scenegraph/shadowedtexturematerial.cpp kirigami2-5.99.0.mod/src/scenegraph/shadowedtexturematerial.cpp
--- kirigami2-5.99.0/src/scenegraph/shadowedtexturematerial.cpp 2022-10-01 22:20:15.000000000 +0800
+++ kirigami2-5.99.0.mod/src/scenegraph/shadowedtexturematerial.cpp 2022-11-12 15:47:57.478160941 +0800
@@ -5,9 +5,9 @@
*/
#include "shadowedtexturematerial.h"
-
+#ifndef __ANDROID__
#include <QOpenGLContext>
-
+#endif
QSGMaterialType ShadowedTextureMaterial::staticType;
ShadowedTextureMaterial::ShadowedTextureMaterial()
@@ -56,7 +56,9 @@
void ShadowedTextureShader::initialize()
{
ShadowedRectangleShader::initialize();
+#ifndef __ANDROID__
program()->setUniformValue("textureSource", 0);
+#endif
}
void ShadowedTextureShader::updateState(const QSGMaterialShader::RenderState &state, QSGMaterial *newMaterial, QSGMaterial *oldMaterial)
@@ -82,3 +84,4 @@
}
}
#endif
+