From 94024dd5f1af11655d089e7c0daa30dd544aa495 Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Sun, 19 Oct 2025 12:06:25 +0200 Subject: [PATCH] moved the definition of pushScreen to hyper.h, so that hook_in_subscreen it works with older compilers --- graph.cpp | 1 - hyper.h | 4 ++++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/graph.cpp b/graph.cpp index 9d51dba4..11a4b968 100644 --- a/graph.cpp +++ b/graph.cpp @@ -1862,7 +1862,6 @@ EX void normalscreen() { EX vector< function > screens = { normalscreen }; #if HDR -template void pushScreen(const T& x) { screens.push_back(x); } inline void popScreen() { if(isize(screens)>1) screens.pop_back(); } inline void popScreenAll() { while(isize(screens)>1) popScreen(); } typedef void (*cfunction)(); diff --git a/hyper.h b/hyper.h index 7dace8f9..49b63295 100644 --- a/hyper.h +++ b/hyper.h @@ -787,6 +787,10 @@ template V callhandlers(V zero, const hookset& void popScreen(); +extern vector< function > screens; + +template void pushScreen(const T& x) { screens.push_back(x); } + template void hook_in_subscreen(hookset& m, int prio, U&& hook) { int v = m.add(prio, static_cast(hook)); pushScreen([&m, v] {