23 if (resource ==
"vkSurface") {
24 if (window && window->surfaceType() == QSurface::VulkanSurface) {
25 auto *platformWindow =
static_cast<QOhosPlatformWindow *>(window->handle());
26 QOhosSurface *surface = platformWindow ? platformWindow->ownedSurfaceOrNull() :
nullptr;
28 qWarning(
"QOhosPlatformNativeInterface: No QOhosSurface available for Vulkan window");
31 QVulkanInstance *vulkanInstance = window->vulkanInstance();
32 if (!vulkanInstance) {
33 qWarning(
"QOhosPlatformNativeInterface: No Vulkan instance; was QWindow::setVulkanInstance() called?");
36 return surface->tryGetOrCreateVulkanWindowSurface(vulkanInstance);
55 if (functionName ==
"tagWindowOrWidgetAsSubWindowOf") {
56 return reinterpret_cast<QFunctionPointer>(&QOhosPlatformWindow::tagWindowOrWidgetAsSubWindowOf);
57 }
else if (functionName ==
"getWindowOrWidgetAsSubWindowOfTagValue") {
58 return reinterpret_cast<QFunctionPointer>(&QOhosPlatformWindow::getWindowOrWidgetAsSubWindowOfTagValue);
59 }
else if (functionName ==
"tagWindowOrWidgetAsMainWindow") {
60 return reinterpret_cast<QFunctionPointer>(&QOhosPlatformWindow::tagWindowOrWidgetAsMainWindow);
61 }
else if (functionName ==
"setInAppOnlyPasteboardShareOption") {
62 return reinterpret_cast<QFunctionPointer>(
64 }
else if (functionName ==
"setSurfaceConsumer") {
65 return reinterpret_cast<QFunctionPointer>(&QOhosPlatformWindow::setSurfaceConsumer);
68 return QPlatformNativeInterface::platformFunction(functionName);