From d00ad919d7daf610d56bb551f85d9a36286d9551 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Fri, 25 Aug 2023 10:45:04 +0200 Subject: Add monitor events, limit fps to monitor the window is in, reduce latency (glFinish, fps limit) --- depends/mgl | 2 +- include/mglpp/window/Event.hpp | 25 ++++++++++++++++++++++++- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/depends/mgl b/depends/mgl index ef4a993..30d9f53 160000 --- a/depends/mgl +++ b/depends/mgl @@ -1 +1 @@ -Subproject commit ef4a993d20ceb791ac62dd219ee7d63524e04a3e +Subproject commit 30d9f5392fb07105e792963d74786024adc79dd5 diff --git a/include/mglpp/window/Event.hpp b/include/mglpp/window/Event.hpp index f3e9535..bcd1e91 100644 --- a/include/mglpp/window/Event.hpp +++ b/include/mglpp/window/Event.hpp @@ -46,6 +46,23 @@ namespace mgl { int y; /* relative to the top of the window */ }; + struct MonitorGenericEvent { + const char *name; /* This name may only be valid until the next time |mgl_window_poll_event| is called */ + int id; + int x; + int y; + int width; + int height; + int refresh_rate; /* 0 if unknown */ + }; + + using MonitorConnectedEvent = MonitorGenericEvent; + using MonitorPropertyChangedEvent = MonitorGenericEvent; + + struct MonitorDisconnectedEvent { + int id; + }; + enum Type : int { Unknown, Closed, /* Window closed */ @@ -58,7 +75,10 @@ namespace mgl { MouseButtonPressed, MouseButtonReleased, MouseWheelScrolled, - MouseMoved + MouseMoved, + MonitorConnected, + MonitorDisconnected, + MonitorPropertyChanged, }; Type type; @@ -70,6 +90,9 @@ namespace mgl { MouseButtonEvent mouse_button; MouseWheelScrollEvent mouse_wheel_scroll; MouseMoveEvent mouse_move; + MonitorConnectedEvent monitor_connected; + MonitorDisconnectedEvent monitor_disconnected; + MonitorPropertyChangedEvent monitor_property_changed; }; }; } -- cgit v1.2.3