aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/defines.hpp1
-rw-r--r--src/desktop/Subsurface.cpp8
-rw-r--r--src/desktop/Subsurface.hpp4
-rw-r--r--src/devices/IKeyboard.hpp1
-rw-r--r--src/devices/IPointer.hpp1
-rw-r--r--src/devices/ITouch.hpp1
-rw-r--r--src/devices/Tablet.hpp1
-rw-r--r--src/helpers/WLListener.cpp62
-rw-r--r--src/helpers/WLListener.hpp39
-rw-r--r--src/managers/SeatManager.hpp1
-rw-r--r--src/managers/input/InputMethodPopup.hpp1
-rw-r--r--src/managers/input/TextInput.hpp1
-rw-r--r--src/protocols/FocusGrab.hpp3
-rw-r--r--src/protocols/PresentationTime.hpp2
-rw-r--r--src/render/Renderbuffer.hpp1
-rw-r--r--src/xwayland/XSurface.hpp1
-rw-r--r--src/xwayland/XWM.hpp1
17 files changed, 1 insertions, 128 deletions
diff --git a/src/defines.hpp b/src/defines.hpp
index 0b2c0e0c..41ee4502 100644
--- a/src/defines.hpp
+++ b/src/defines.hpp
@@ -1,6 +1,5 @@
#include "includes.hpp"
#include "debug/Log.hpp"
-#include "helpers/WLListener.hpp"
#include "helpers/Color.hpp"
#include "macros.hpp"
#include "desktop/DesktopTypes.hpp"
diff --git a/src/desktop/Subsurface.cpp b/src/desktop/Subsurface.cpp
index 64dd7cf5..893411bd 100644
--- a/src/desktop/Subsurface.cpp
+++ b/src/desktop/Subsurface.cpp
@@ -30,13 +30,7 @@ CSubsurface::CSubsurface(SP<CWLSubsurfaceResource> pSubsurface, CPopup* pOwner)
}
CSubsurface::~CSubsurface() {
- hyprListener_newSubsurface.removeCallback();
-
- if (!m_pSubsurface)
- return;
-
- hyprListener_commitSubsurface.removeCallback();
- hyprListener_destroySubsurface.removeCallback();
+ ;
}
void CSubsurface::initSignals() {
diff --git a/src/desktop/Subsurface.hpp b/src/desktop/Subsurface.hpp
index 101f4f19..7829c489 100644
--- a/src/desktop/Subsurface.hpp
+++ b/src/desktop/Subsurface.hpp
@@ -35,10 +35,6 @@ class CSubsurface {
void recheckDamageForSubsurfaces();
private:
- DYNLISTENER(destroySubsurface);
- DYNLISTENER(commitSubsurface);
- DYNLISTENER(newSubsurface);
-
struct {
CHyprSignalListener destroySubsurface;
CHyprSignalListener commitSubsurface;
diff --git a/src/devices/IKeyboard.hpp b/src/devices/IKeyboard.hpp
index ad8eaf7e..759b2f58 100644
--- a/src/devices/IKeyboard.hpp
+++ b/src/devices/IKeyboard.hpp
@@ -1,7 +1,6 @@
#pragma once
#include "IHID.hpp"
-#include "../helpers/WLListener.hpp"
#include "../macros.hpp"
#include "../helpers/math/Math.hpp"
diff --git a/src/devices/IPointer.hpp b/src/devices/IPointer.hpp
index 760ec8dc..f38ef55a 100644
--- a/src/devices/IPointer.hpp
+++ b/src/devices/IPointer.hpp
@@ -1,7 +1,6 @@
#pragma once
#include "IHID.hpp"
-#include "../helpers/WLListener.hpp"
#include "../macros.hpp"
#include "../helpers/math/Math.hpp"
diff --git a/src/devices/ITouch.hpp b/src/devices/ITouch.hpp
index cb8a6e90..bf969b2f 100644
--- a/src/devices/ITouch.hpp
+++ b/src/devices/ITouch.hpp
@@ -1,7 +1,6 @@
#pragma once
#include "IHID.hpp"
-#include "../helpers/WLListener.hpp"
#include "../macros.hpp"
#include "../helpers/math/Math.hpp"
diff --git a/src/devices/Tablet.hpp b/src/devices/Tablet.hpp
index 0efbe796..01901721 100644
--- a/src/devices/Tablet.hpp
+++ b/src/devices/Tablet.hpp
@@ -1,7 +1,6 @@
#pragma once
#include "IHID.hpp"
-#include "../helpers/WLListener.hpp"
#include "../macros.hpp"
#include "../helpers/math/Math.hpp"
#include "../helpers/math/Math.hpp"
diff --git a/src/helpers/WLListener.cpp b/src/helpers/WLListener.cpp
deleted file mode 100644
index 2ea5c0b6..00000000
--- a/src/helpers/WLListener.cpp
+++ /dev/null
@@ -1,62 +0,0 @@
-#include "WLListener.hpp"
-#include "MiscFunctions.hpp"
-#include <string>
-#include "../debug/Log.hpp"
-#include "Watchdog.hpp"
-
-void handleWrapped(wl_listener* listener, void* data) {
- CHyprWLListener::SWrapper* pWrap = wl_container_of(listener, pWrap, m_sListener);
-
- if (g_pWatchdog)
- g_pWatchdog->startWatching();
-
- try {
- pWrap->m_pSelf->emit(data);
- } catch (std::exception& e) { Debug::log(ERR, "Listener {} threw or timed out and was killed by Watchdog!!! This is bad. what(): {}", (uintptr_t)listener, e.what()); }
-
- if (g_pWatchdog)
- g_pWatchdog->endWatching();
-}
-
-CHyprWLListener::CHyprWLListener(wl_signal* pSignal, std::function<void(void*, void*)> const& callback, void* pOwner) {
- initCallback(pSignal, callback, pOwner);
-}
-
-CHyprWLListener::CHyprWLListener() {
- m_swWrapper.m_pSelf = this;
- m_swWrapper.m_sListener.notify = &handleWrapped;
- wl_list_init(&m_swWrapper.m_sListener.link);
-}
-
-CHyprWLListener::~CHyprWLListener() {
- removeCallback();
-}
-
-void CHyprWLListener::removeCallback() {
- if (isConnected()) {
- Debug::log(LOG, "Callback {:x} -> {:x}, {} removed.", (uintptr_t)&m_pCallback, (uintptr_t)&m_pOwner, m_szAuthor);
- wl_list_remove(&m_swWrapper.m_sListener.link);
- wl_list_init(&m_swWrapper.m_sListener.link);
- }
-}
-
-bool CHyprWLListener::isConnected() {
- return !wl_list_empty(&m_swWrapper.m_sListener.link);
-}
-
-void CHyprWLListener::initCallback(wl_signal* pSignal, std::function<void(void*, void*)> const& callback, void* pOwner, std::string author) {
- if (isConnected()) {
- Debug::log(ERR, "Tried to connect a listener twice?!");
- return;
- }
-
- m_pOwner = pOwner;
- m_pCallback = callback;
- m_szAuthor = author;
-
- addWLSignal(pSignal, &m_swWrapper.m_sListener, pOwner, m_szAuthor);
-}
-
-void CHyprWLListener::emit(void* data) {
- m_pCallback(m_pOwner, data);
-}
diff --git a/src/helpers/WLListener.hpp b/src/helpers/WLListener.hpp
deleted file mode 100644
index 621458e6..00000000
--- a/src/helpers/WLListener.hpp
+++ /dev/null
@@ -1,39 +0,0 @@
-#pragma once
-
-#include <string>
-#include <functional>
-#include <wayland-server.h>
-
-class CHyprWLListener {
- public:
- CHyprWLListener(wl_signal*, std::function<void(void*, void*)> const&, void* owner);
- CHyprWLListener();
- ~CHyprWLListener();
-
- CHyprWLListener(const CHyprWLListener&) = delete;
- CHyprWLListener(CHyprWLListener&&) = delete;
- CHyprWLListener& operator=(const CHyprWLListener&) = delete;
- CHyprWLListener& operator=(CHyprWLListener&&) = delete;
-
- void initCallback(wl_signal*, std::function<void(void*, void*)> const&, void* owner, std::string author = "");
-
- void removeCallback();
-
- bool isConnected();
-
- struct SWrapper {
- wl_listener m_sListener;
- CHyprWLListener* m_pSelf;
- };
-
- void emit(void*);
-
- private:
- SWrapper m_swWrapper;
-
- void* m_pOwner = nullptr;
-
- std::function<void(void*, void*)> m_pCallback = nullptr;
-
- std::string m_szAuthor = "";
-}; \ No newline at end of file
diff --git a/src/managers/SeatManager.hpp b/src/managers/SeatManager.hpp
index 43ebe8b5..5cc7eee0 100644
--- a/src/managers/SeatManager.hpp
+++ b/src/managers/SeatManager.hpp
@@ -2,7 +2,6 @@
#include <cstdint>
#include <wayland-server-protocol.h>
-#include "../helpers/WLListener.hpp"
#include "../macros.hpp"
#include "../helpers/signal/Signal.hpp"
#include "../helpers/math/Math.hpp"
diff --git a/src/managers/input/InputMethodPopup.hpp b/src/managers/input/InputMethodPopup.hpp
index f8e4b962..53c11cff 100644
--- a/src/managers/input/InputMethodPopup.hpp
+++ b/src/managers/input/InputMethodPopup.hpp
@@ -1,6 +1,5 @@
#pragma once
-#include "../../helpers/WLListener.hpp"
#include "../../desktop/WLSurface.hpp"
#include "../../macros.hpp"
#include "../../helpers/math/Math.hpp"
diff --git a/src/managers/input/TextInput.hpp b/src/managers/input/TextInput.hpp
index f920adc7..3cf07006 100644
--- a/src/managers/input/TextInput.hpp
+++ b/src/managers/input/TextInput.hpp
@@ -1,6 +1,5 @@
#pragma once
-#include "../../helpers/WLListener.hpp"
#include "../../macros.hpp"
#include "../../helpers/math/Math.hpp"
#include "../../helpers/signal/Signal.hpp"
diff --git a/src/protocols/FocusGrab.hpp b/src/protocols/FocusGrab.hpp
index a2d545c5..6fe8780f 100644
--- a/src/protocols/FocusGrab.hpp
+++ b/src/protocols/FocusGrab.hpp
@@ -53,9 +53,6 @@ class CFocusGrab {
bool m_bGrabActive = false;
- DYNLISTENER(pointerGrabStarted);
- DYNLISTENER(keyboardGrabStarted);
- DYNLISTENER(touchGrabStarted);
friend class CFocusGrabSurfaceState;
};
diff --git a/src/protocols/PresentationTime.hpp b/src/protocols/PresentationTime.hpp
index 06c71c9a..421bb838 100644
--- a/src/protocols/PresentationTime.hpp
+++ b/src/protocols/PresentationTime.hpp
@@ -27,8 +27,6 @@ class CQueuedPresentationData {
WP<CMonitor> pMonitor;
WP<CWLSurfaceResource> surface;
- DYNLISTENER(destroySurface);
-
friend class CPresentationFeedback;
friend class CPresentationProtocol;
};
diff --git a/src/render/Renderbuffer.hpp b/src/render/Renderbuffer.hpp
index e6bfa909..ff06bd5a 100644
--- a/src/render/Renderbuffer.hpp
+++ b/src/render/Renderbuffer.hpp
@@ -2,7 +2,6 @@
#include "../helpers/signal/Signal.hpp"
#include "../helpers/memory/Memory.hpp"
-#include "../helpers/WLListener.hpp"
#include "Framebuffer.hpp"
#include <aquamarine/buffer/Buffer.hpp>
diff --git a/src/xwayland/XSurface.hpp b/src/xwayland/XSurface.hpp
index 61eee984..7584354e 100644
--- a/src/xwayland/XSurface.hpp
+++ b/src/xwayland/XSurface.hpp
@@ -1,6 +1,5 @@
#pragma once
-#include "../helpers/WLListener.hpp"
#include "../helpers/signal/Signal.hpp"
#include "../helpers/memory/Memory.hpp"
#include "../helpers/math/Math.hpp"
diff --git a/src/xwayland/XWM.hpp b/src/xwayland/XWM.hpp
index ba00dd8d..37c61416 100644
--- a/src/xwayland/XWM.hpp
+++ b/src/xwayland/XWM.hpp
@@ -2,7 +2,6 @@
#include "../macros.hpp"
#include "XDataSource.hpp"
-#include "../helpers/WLListener.hpp"
#include "../helpers/memory/Memory.hpp"
#include "../helpers/signal/Signal.hpp"