summaryrefslogtreecommitdiff
path: root/src/window/xcb.h
diff options
context:
space:
mode:
authorClaudius "keldu" Holeksa <mail@keldu.de>2023-06-29 15:36:33 +0200
committerClaudius "keldu" Holeksa <mail@keldu.de>2023-06-29 15:36:33 +0200
commit140a8861a63dea5c36a3e9d6d19b5382bdd8ddce (patch)
tree5abe0b68c897ad3d8d7be674c37b4fd076ab3810 /src/window/xcb.h
parent7250a86b7eab2692d5c17d071436c84bac4574df (diff)
c++,window: Progress save. Reworking from old style to more public one
Diffstat (limited to 'src/window/xcb.h')
-rw-r--r--src/window/xcb.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/window/xcb.h b/src/window/xcb.h
index bbdf1ed..e2928b6 100644
--- a/src/window/xcb.h
+++ b/src/window/xcb.h
@@ -12,7 +12,7 @@ namespace gfx {
class window;
template<>
-class device<backend::xcb> final {
+class device<backend::linux_xcb> final {
private:
::Display *display_;
int screen_;
@@ -35,11 +35,13 @@ public:
void xcb_window_was_destroyed(xcb_window_t window_id);
void handle_events();
- own<window> create_window(const video_mode& vid_mod, std::string_view title_view);
+ window<backend::linux_xcb> create_window(const video_mode& vid_mod, std::string_view title_view);
void flush();
};
+error_or<device<backend::linux_xcb>> create_xcb_device();
+
class window {
private:
device *device_;
@@ -65,7 +67,7 @@ public:
void resize(uint64_t width, uint64_t height);
- conveyor<schema::WindowEvents> on_event();
+ conveyor<data<schema::WindowEvents>> on_event();
void resize_event(uint64_t x, uint64_t y, uint64_t width, uint64_t height);
void mouse_event(int16_t x, int16_t y, uint16_t state, bool pressed);