diff --git a/libraries/gpu/src/gpu/Texture_ktx.cpp b/libraries/gpu/src/gpu/Texture_ktx.cpp index 30e24276df..65028f7b8a 100644 --- a/libraries/gpu/src/gpu/Texture_ktx.cpp +++ b/libraries/gpu/src/gpu/Texture_ktx.cpp @@ -498,14 +498,16 @@ TexturePointer Texture::build(const ktx::KTXDescriptor& descriptor) { GPUKTXPayload gpuktxKeyValue; if (!GPUKTXPayload::findInKeyValues(descriptor.keyValues, gpuktxKeyValue)) { - qCWarning(gpulogging) << "Could not find GPUKTX key values."; +#if defined(Q_OS_ANDROID) // FIXME use sensible defaults based on the texture type and format gpuktxKeyValue._usageType = TextureUsageType::RESOURCE; gpuktxKeyValue._usage = Texture::Usage::Builder().withColor().withAlpha().build(); +#else + qCWarning(gpulogging) << "Could not find GPUKTX key values."; + return TexturePointer(); +#endif } - - auto texture = create(gpuktxKeyValue._usageType, type, texelFormat, diff --git a/libraries/ui/src/ui/OffscreenQmlSurface.cpp b/libraries/ui/src/ui/OffscreenQmlSurface.cpp index 9a1081eb9d..076ff84e64 100644 --- a/libraries/ui/src/ui/OffscreenQmlSurface.cpp +++ b/libraries/ui/src/ui/OffscreenQmlSurface.cpp @@ -1097,6 +1097,27 @@ bool OffscreenQmlSurface::eventFilter(QObject* originalDestination, QEvent* even } break; } +#if defined(Q_OS_ANDROID) + case QEvent::TouchBegin: + case QEvent::TouchUpdate: + case QEvent::TouchEnd: { + QTouchEvent *originalEvent = static_cast(event); + QTouchEvent *fakeEvent = new QTouchEvent(*originalEvent); + auto newTouchPoints = fakeEvent->touchPoints(); + for (size_t i = 0; i < newTouchPoints.size(); ++i) { + const auto &originalPoint = originalEvent->touchPoints()[i]; + auto &newPoint = newTouchPoints[i]; + newPoint.setPos(originalPoint.pos()); + } + fakeEvent->setTouchPoints(newTouchPoints); + if (QCoreApplication::sendEvent(_quickWindow, fakeEvent)) { + qInfo() << __FUNCTION__ << "sent fake touch event:" << fakeEvent->type() + << "_quickWindow handled it... accepted:" << fakeEvent->isAccepted(); + return false; //event->isAccepted(); + } + break; + } +#endif default: break; }