--- a/ui/common/context.c Sun Dec 07 11:51:01 2025 +0100 +++ b/ui/common/context.c Sun Dec 07 11:59:21 2025 +0100 @@ -97,6 +97,12 @@ } void uic_context_attach_document(UiContext *ctx, void *document) { + if(ctx->single_document_mode) { + if(ctx->document) { + uic_context_detach_document(ctx, ctx->document); + } + } + cxListAdd(ctx->documents, document); ctx->document = document; @@ -485,6 +491,14 @@ // public API +void* ui_context_get_document(UiContext *ctx) { + return ctx->document; +} + +void ui_context_single_attachment_mode(UiContext *ctx, UiBool enable) { + ctx->single_document_mode = enable; +} + void ui_attach_document(UiContext *ctx, void *document) { uic_context_attach_document(ctx, document); }