aboutsummaryrefslogtreecommitdiff
path: root/src/platform
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-09-22 14:58:02 +0800
committerYuqian Yang <crupest@crupest.life>2025-09-22 20:23:27 +0800
commit70e9404912e0047f14861abc8d4e3982c23685fd (patch)
treeed2d7bb13a5973687b8a2c640810b7583773bba0 /src/platform
parent444e628d22db67742181ae14ae2ed0a9c2b6cd67 (diff)
downloadcru-70e9404912e0047f14861abc8d4e3982c23685fd.tar.gz
cru-70e9404912e0047f14861abc8d4e3982c23685fd.tar.bz2
cru-70e9404912e0047f14861abc8d4e3982c23685fd.zip
Impl RequestFocus of xcb window.
Diffstat (limited to 'src/platform')
-rw-r--r--src/platform/gui/xcb/Window.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/platform/gui/xcb/Window.cpp b/src/platform/gui/xcb/Window.cpp
index 9f2448d1..3e5c7f7b 100644
--- a/src/platform/gui/xcb/Window.cpp
+++ b/src/platform/gui/xcb/Window.cpp
@@ -231,6 +231,13 @@ void XcbWindow::SetWindowRect(const Rect &rect) {
SetClientRect(real_rect);
}
+bool XcbWindow::RequestFocus() {
+ if (!xcb_window_) return false;
+ xcb_set_input_focus(application_->GetXcbConnection(), XCB_NONE, *xcb_window_,
+ XCB_CURRENT_TIME);
+ return true;
+}
+
std::unique_ptr<graphics::IPainter> XcbWindow::BeginPaint() {
assert(cairo_surface_);