aboutsummaryrefslogtreecommitdiff
path: root/include/cru/platform/gui/xcb/UiApplication.h
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-11-18 17:47:56 +0800
committerYuqian Yang <crupest@crupest.life>2025-11-18 18:11:19 +0800
commit73c55a65fc2d3200adab6a48ffc28c66bbf9159b (patch)
tree6df433746fd55ac4d786dea25fa0cddcc36a6349 /include/cru/platform/gui/xcb/UiApplication.h
parent95587a99ffb2680532879b0470d3cbb3bf9e736f (diff)
downloadcru-73c55a65fc2d3200adab6a48ffc28c66bbf9159b.tar.gz
cru-73c55a65fc2d3200adab6a48ffc28c66bbf9159b.tar.bz2
cru-73c55a65fc2d3200adab6a48ffc28c66bbf9159b.zip
Impl DeleteLater on XcbUiApplication.
Diffstat (limited to 'include/cru/platform/gui/xcb/UiApplication.h')
-rw-r--r--include/cru/platform/gui/xcb/UiApplication.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/cru/platform/gui/xcb/UiApplication.h b/include/cru/platform/gui/xcb/UiApplication.h
index 55138fd3..2659b163 100644
--- a/include/cru/platform/gui/xcb/UiApplication.h
+++ b/include/cru/platform/gui/xcb/UiApplication.h
@@ -72,6 +72,8 @@ class XcbUiApplication : public XcbResource, public virtual IUiApplication {
std::function<void()> action) override;
void CancelTimer(long long id) override;
+ void DeleteLater(Object* object) override;
+
std::vector<INativeWindow*> GetAllWindow() override;
INativeWindow* CreateWindow() override;
@@ -102,6 +104,7 @@ class XcbUiApplication : public XcbResource, public virtual IUiApplication {
cru::platform::unix::UnixEventLoop event_loop_;
std::vector<std::function<void()>> quit_handlers_;
+ DeleteLaterPool delete_later_pool_;
bool is_quit_on_all_window_closed_;
std::vector<XcbWindow*> windows_;