Refine editor frame services seam

This commit is contained in:
2026-04-29 14:31:55 +08:00
parent 212d4016e0
commit 749417989a
16 changed files with 77 additions and 112 deletions

View File

@@ -4,7 +4,6 @@
#include "Scene/EditorSceneRuntime.h"
#include "Panels/EditorPanelIds.h"
#include "Viewport/EditorViewportRuntimeServices.h"
#include "WorkspaceEventSync.h"
#include <XCEditor/Foundation/UIEditorRuntimeTrace.h>
#include <sstream>
#include <utility>
@@ -226,14 +225,6 @@ void EditorContext::SyncSessionFromCommandFocusService() {
ResolveEditorActionRoute(m_session.activePanelId));
}
::XCEngine::UI::Editor::System::SystemInteractionService* EditorContext::GetSystemInteractionHost() {
return m_systemInteractionHost;
}
const ::XCEngine::UI::Editor::System::SystemInteractionService* EditorContext::GetSystemInteractionHost() const {
return m_systemInteractionHost;
}
UIEditorWorkspaceController EditorContext::BuildWorkspaceController() const {
return UIEditorWorkspaceController(
m_shellAsset.panelRegistry,
@@ -321,7 +312,7 @@ std::string EditorContext::DescribeWorkspaceState(
std::vector<WorkspaceTraceEntry> EditorContext::SyncWorkspacePanelFrameEvents(
const std::vector<EditorWorkspacePanelFrameEvent>& panelEvents) {
return SyncWorkspaceEvents(*this, panelEvents);
return SyncWorkspacePanelEvents(panelEvents);
}
void EditorContext::SyncSceneViewportRenderRequest(
@@ -440,5 +431,21 @@ void EditorContext::AppendConsoleEntry(
}
}
std::vector<WorkspaceTraceEntry> EditorContext::SyncWorkspacePanelEvents(
const std::vector<EditorWorkspacePanelFrameEvent>& panelEvents) {
std::vector<WorkspaceTraceEntry> entries = {};
SyncSessionFromSelectionService();
for (const EditorWorkspacePanelFrameEvent& event : panelEvents) {
SetStatus(event.status, event.message);
entries.push_back(WorkspaceTraceEntry{
.channel = event.traceChannel,
.message = event.message,
});
}
return entries;
}
} // namespace XCEngine::UI::Editor::App