aboutsummaryrefslogtreecommitdiff
path: root/src/WindowActionRouter.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/WindowActionRouter.hpp')
-rw-r--r--src/WindowActionRouter.hpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/WindowActionRouter.hpp b/src/WindowActionRouter.hpp
index 9a5059b..384c76c 100644
--- a/src/WindowActionRouter.hpp
+++ b/src/WindowActionRouter.hpp
@@ -3,15 +3,25 @@
#include <QWidget>
#include <QtCore>
#include <cstdint>
+#include <functional>
#include "widgets/BrowserWindow.hpp"
+#include "widgets/WebViewStack.hpp"
+
+#define WITH_WEBVIEW_WINDOW(WEBVIEW_ID, IDENT, BLOCK) \
+ for (auto &win_match : window_map) { \
+ auto *IDENT = win_match.second; \
+ if (IDENT->mediator()->has_webview(WEBVIEW_ID)) { \
+ BLOCK; \
+ } \
+ }
class WindowActionRouter : public QWidget {
Q_OBJECT
public:
- static WindowActionRouter *instance() {
- static auto *router = new WindowActionRouter;
+ static WindowActionRouter &instance() {
+ static WindowActionRouter router;
return router;
}