@@ -36,6 +36,7 @@
|
|||||||
ninja
|
ninja
|
||||||
(pkgs.llvmPackages_20.clang-tools.override { enableLibcxx = true; })
|
(pkgs.llvmPackages_20.clang-tools.override { enableLibcxx = true; })
|
||||||
lldb
|
lldb
|
||||||
|
valgrind
|
||||||
|
|
||||||
lua
|
lua
|
||||||
|
|
||||||
|
|||||||
@@ -266,6 +266,13 @@ void LunarWM_destroy(LunarWM *wm)
|
|||||||
LunarWM_wayland_cleanup(wm);
|
LunarWM_wayland_cleanup(wm);
|
||||||
cleanup_lua_cfg(wm);
|
cleanup_lua_cfg(wm);
|
||||||
|
|
||||||
|
for (size_t i = 0; i < ARRAY_SZ(wm->wm.workspaces); ++i) {
|
||||||
|
if (wm->wm.workspaces[i].v_windows) {
|
||||||
|
vector_free(wm->wm.workspaces[i].v_windows);
|
||||||
|
wm->wm.workspaces[i].v_windows = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
memset(wm, 0, sizeof(*wm));
|
memset(wm, 0, sizeof(*wm));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -425,10 +432,10 @@ void LunarWM_run(LunarWM *wm)
|
|||||||
wlr_log(WLR_ERROR, "Failed to end OpenXR frame");
|
wlr_log(WLR_ERROR, "Failed to end OpenXR frame");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
EndDrawing();
|
|
||||||
} else {
|
} else {
|
||||||
wm->renderer.camera.fovy = 75;
|
wm->renderer.camera.fovy = 75;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EndDrawing();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1654,20 +1654,6 @@ static void handle_output_frame(struct wl_listener *listener, void *data)
|
|||||||
// wm->renderer.main_rt = LoadRenderTexture(width, height);
|
// wm->renderer.main_rt = LoadRenderTexture(width, height);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
if (!wlr_render_pass_submit(pass)) {
|
|
||||||
wlr_output_state_finish(&state);
|
|
||||||
wlr_output_schedule_frame(wlr_output);
|
|
||||||
wlr_log(WLR_ERROR, "Failed to submit render pass for output %s",
|
|
||||||
wlr_output->name);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!wlr_output_commit_state(wlr_output, &state)) {
|
|
||||||
wlr_output_state_finish(&state);
|
|
||||||
wlr_output_schedule_frame(wlr_output);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
wm->renderer.tmp_rt.id = drawFboId;
|
wm->renderer.tmp_rt.id = drawFboId;
|
||||||
wm->renderer.tmp_rt.texture = (Texture) {
|
wm->renderer.tmp_rt.texture = (Texture) {
|
||||||
.id = drawFboId,
|
.id = drawFboId,
|
||||||
@@ -1742,6 +1728,20 @@ static void handle_output_frame(struct wl_listener *listener, void *data)
|
|||||||
wm->renderer.camera.target, wm->cman->cfg.space.radius);
|
wm->renderer.camera.target, wm->cman->cfg.space.radius);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!wlr_render_pass_submit(pass)) {
|
||||||
|
wlr_output_state_finish(&state);
|
||||||
|
wlr_output_schedule_frame(wlr_output);
|
||||||
|
wlr_log(WLR_ERROR, "Failed to submit render pass for output %s",
|
||||||
|
wlr_output->name);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!wlr_output_commit_state(wlr_output, &state)) {
|
||||||
|
wlr_output_state_finish(&state);
|
||||||
|
wlr_output_schedule_frame(wlr_output);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
wlr_output_state_finish(&state);
|
wlr_output_state_finish(&state);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user