8b48645284a0be057ee198a3baf4288ab92ef6d1

Author
outfoxxed <outfoxxed@outfoxxed.me>
Committer
outfoxxed <outfoxxed@outfoxxed.me>
Date

Message

fixup: create new render pass UPs for tabs every frame

Fixes #221

Diff

 1diff --git a/src/Hy3Layout.cpp b/src/Hy3Layout.cpp
 2index b10aced5a2ab54b526175698fa5b86ee95f7b8dd..3e030beef1e86c34d8369d023451443c1571e856 100644
 3--- a/src/Hy3Layout.cpp
 4+++ b/src/Hy3Layout.cpp
 5@@ -1580,7 +1580,7 @@ void Hy3Layout::renderHook(void*, SCallbackInfo&, std::any data) {
 6 			    && std::find(rendered_groups.begin(), rendered_groups.end(), &entry)
 7 			           == rendered_groups.end())
 8 			{
 9-				g_pHyprRenderer->m_renderPass.add(entry.pass);
10+				g_pHyprRenderer->m_renderPass.add(makeUnique<Hy3TabPassElement>(&entry));
11 				rendered_groups.push_back(&entry);
12 			}
13 		}
14@@ -1595,7 +1595,7 @@ void Hy3Layout::renderHook(void*, SCallbackInfo&, std::any data) {
15 			    && std::find(rendered_groups.begin(), rendered_groups.end(), &entry)
16 			           == rendered_groups.end())
17 			{
18-				g_pHyprRenderer->m_renderPass.add(entry.pass);
19+				g_pHyprRenderer->m_renderPass.add(makeUnique<Hy3TabPassElement>(&entry));
20 				entry.renderTabBar();
21 			}
22 		}
23diff --git a/src/TabGroup.hpp b/src/TabGroup.hpp
24index ec254e92419defc07c5a6ac39f9467dfdaa7705c..dafa06531bd4c92a6b89f1187b2c14b0d1345e24 100644
25--- a/src/TabGroup.hpp
26+++ b/src/TabGroup.hpp
27@@ -130,8 +130,6 @@ public:
28 	// render the scaled tab bar on the current monitor.
29 	void renderTabBar();
30 
31-	SP<Hy3TabPassElement> pass = makeShared<Hy3TabPassElement>(this);
32-
33 private:
34 	std::vector<PHLWINDOWREF> stencil_windows;
35 	Vector2D last_workspace_offset;