diff options
Diffstat (limited to 'src/protocols')
| -rw-r--r-- | src/protocols/ToplevelExport.cpp | 2 | ||||
| -rw-r--r-- | src/protocols/ToplevelExport.hpp | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/src/protocols/ToplevelExport.cpp b/src/protocols/ToplevelExport.cpp index 4d7f881a..bee1deb6 100644 --- a/src/protocols/ToplevelExport.cpp +++ b/src/protocols/ToplevelExport.cpp @@ -37,6 +37,8 @@ CToplevelExportProtocolManager::CToplevelExportProtocolManager() { m_liDisplayDestroy.notify = handleDisplayDestroy; wl_display_add_destroy_listener(g_pCompositor->m_sWLDisplay, &m_liDisplayDestroy); + g_pHookSystem->hookDynamic("preRender", [&](void* self, std::any data) { onMonitorRender(std::any_cast<CMonitor*>(data)); }); + Debug::log(LOG, "ToplevelExportManager started successfully!"); } diff --git a/src/protocols/ToplevelExport.hpp b/src/protocols/ToplevelExport.hpp index d3bbc362..e9042e66 100644 --- a/src/protocols/ToplevelExport.hpp +++ b/src/protocols/ToplevelExport.hpp @@ -50,8 +50,6 @@ class CToplevelExportProtocolManager { void removeClient(SToplevelClient* client, bool force = false); void removeFrame(SToplevelFrame* frame, bool force = false); void copyFrame(wl_client* client, wl_resource* resource, wl_resource* buffer, int32_t ignore_damage); - - void onMonitorRender(CMonitor* pMonitor); void displayDestroy(); void onWindowUnmap(CWindow* pWindow); @@ -67,4 +65,6 @@ class CToplevelExportProtocolManager { void shareFrame(SToplevelFrame* frame); bool copyFrameDmabuf(SToplevelFrame* frame); bool copyFrameShm(SToplevelFrame* frame, timespec* now); + + void onMonitorRender(CMonitor* pMonitor); };
\ No newline at end of file |
