Remove backend probing from XCUI panel canvas host

This commit is contained in:
2026-04-05 17:03:02 +08:00
parent 94482ab98c
commit 3968083da7
11 changed files with 15 additions and 101 deletions

View File

@@ -89,18 +89,6 @@ public:
return "ImGuiXCUIPanelCanvasHost";
}
XCUIPanelCanvasHostBackend GetBackend() const override {
return XCUIPanelCanvasHostBackend::ImGui;
}
XCUIPanelCanvasHostCapabilities GetCapabilities() const override {
XCUIPanelCanvasHostCapabilities capabilities = {};
capabilities.supportsPointerHitTesting = true;
capabilities.supportsHostedSurfaceImages = true;
capabilities.supportsPrimitiveOverlays = true;
return capabilities;
}
XCUIPanelCanvasSession BeginCanvas(const XCUIPanelCanvasRequest& request) override {
const char* childId =
request.childId != nullptr && request.childId[0] != '\0'

View File

@@ -132,18 +132,6 @@ public:
return "NativeXCUIPanelCanvasHost";
}
XCUIPanelCanvasHostBackend GetBackend() const override {
return XCUIPanelCanvasHostBackend::Native;
}
XCUIPanelCanvasHostCapabilities GetCapabilities() const override {
XCUIPanelCanvasHostCapabilities capabilities = {};
capabilities.supportsHostedSurfaceImages = true;
capabilities.supportsPrimitiveOverlays = true;
capabilities.supportsExternallyDrivenSession = true;
return capabilities;
}
void SetCanvasSession(const XCUIPanelCanvasSession& session) {
m_configuredSession = session;
m_hasConfiguredSession = true;

View File

@@ -14,14 +14,6 @@ public:
return "NullXCUIPanelCanvasHost";
}
XCUIPanelCanvasHostBackend GetBackend() const override {
return XCUIPanelCanvasHostBackend::Null;
}
XCUIPanelCanvasHostCapabilities GetCapabilities() const override {
return {};
}
XCUIPanelCanvasSession BeginCanvas(const XCUIPanelCanvasRequest& request) override {
m_canvasSession = BuildPassiveXCUIPanelCanvasSession(request);
return m_canvasSession;

View File

@@ -4,7 +4,6 @@
#include <XCEngine/UI/DrawData.h>
#include <cstdint>
#include <memory>
#include <string>
#include <string_view>
@@ -13,19 +12,6 @@ namespace XCEngine {
namespace Editor {
namespace XCUIBackend {
enum class XCUIPanelCanvasHostBackend : std::uint8_t {
Null = 0,
ImGui,
Native
};
struct XCUIPanelCanvasHostCapabilities {
bool supportsPointerHitTesting = false;
bool supportsHostedSurfaceImages = false;
bool supportsPrimitiveOverlays = false;
bool supportsExternallyDrivenSession = false;
};
struct XCUIPanelCanvasRequest {
const char* childId = nullptr;
float height = 0.0f;
@@ -98,8 +84,6 @@ public:
virtual ~IXCUIPanelCanvasHost() = default;
virtual const char* GetDebugName() const = 0;
virtual XCUIPanelCanvasHostBackend GetBackend() const = 0;
virtual XCUIPanelCanvasHostCapabilities GetCapabilities() const = 0;
virtual XCUIPanelCanvasSession BeginCanvas(const XCUIPanelCanvasRequest& request) = 0;
virtual void DrawFilledRect(
const ::XCEngine::UI::UIRect& rect,