mangoapp: let gamescope decide when to send updates

pull/487/head
FlightlessMango 2 years ago
parent f7dffb03a1
commit 498687c33d

@ -28,7 +28,6 @@ static ImVec2 window_size;
static uint32_t vendorID;
static std::string deviceName;
static notify_thread notifier;
struct mangoapp_ctrl_msg_v1 mangoapp_ctrl;
int msgid;
bool mangoapp_paused = false;
std::mutex mangoapp_m;
@ -36,8 +35,6 @@ std::condition_variable mangoapp_cv;
static uint8_t raw_msg[1024] = {0};
void msg_read_thread(){
mangoapp_ctrl.hdr.version = 1;
mangoapp_ctrl.hdr.msg_type = 2;
int key = ftok("mangoapp", 65);
msgid = msgget(key, 0666 | IPC_CREAT);
const struct mangoapp_msg_header *hdr = (const struct mangoapp_msg_header*) raw_msg;
@ -156,7 +153,8 @@ int main(int, char**)
// Rendering
ImGui::Render();
int display_w, display_h;
static int display_w, display_h;
glfwSetWindowSize(window, window_size.x + 45.f, window_size.y + 10.f);
glfwGetFramebufferSize(window, &display_w, &display_h);
glEnable(GL_DEPTH_TEST);
glEnable(GL_BLEND);

@ -4,7 +4,6 @@
#include <mutex>
#include <condition_variable>
extern struct mangoapp_ctrl_msg_v1 mangoapp_ctrl;
extern int ctrl_msgid;
extern int msgid;
extern bool mangoapp_paused;
@ -21,11 +20,4 @@ struct mangoapp_msg_v1 {
uint32_t pid;
uint64_t frametime_ns;
// WARNING: Always ADD fields, never remove or repurpose fields
} __attribute__((packed));
struct mangoapp_ctrl_msg_v1 {
struct mangoapp_msg_header hdr;
uint8_t ready_for_updates;
// WARNING: Always ADD fields, never remove or re-purpose fields
} __attribute__((packed));

@ -807,8 +807,6 @@ parse_overlay_config(struct overlay_params *params,
if(params->autostart_log && !logger->is_active())
std::thread(autostart_log, params->autostart_log).detach();
#ifdef MANGOAPP
mangoapp_ctrl.ready_for_updates = int(!params->no_display);
msgsnd(msgid, &mangoapp_ctrl, sizeof(mangoapp_ctrl), IPC_NOWAIT);
{
std::lock_guard<std::mutex> lk(mangoapp_m);
params->no_display = params->no_display;

Loading…
Cancel
Save