diff options
author | dec05eba <dec05eba@protonmail.com> | 2024-07-19 22:08:04 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2024-07-19 22:08:04 +0200 |
commit | 637d306a243e83c797f4a818cb0342d9af564843 (patch) | |
tree | 723d6978da05606e1972baf1230d8e44a66392e1 /src/capture/portal.c | |
parent | 739fab83ba60087eb598a0fc8732c1bc7669b839 (diff) |
Stop recording when pipewire target window is closed or when pressing close in the desktop environments record button
Diffstat (limited to 'src/capture/portal.c')
-rw-r--r-- | src/capture/portal.c | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/src/capture/portal.c b/src/capture/portal.c index 5af5163..aa73cd0 100644 --- a/src/capture/portal.c +++ b/src/capture/portal.c @@ -15,9 +15,6 @@ typedef struct { gsr_capture_portal_params params; - bool should_stop; - bool stop_is_error; - unsigned int input_texture_id; unsigned int cursor_texture_id; @@ -328,16 +325,10 @@ static int gsr_capture_portal_capture(gsr_capture *cap, AVFrame *frame, gsr_colo } static bool gsr_capture_portal_should_stop(gsr_capture *cap, bool *err) { - gsr_capture_portal *cap_portal = cap->priv; - if(cap_portal->should_stop) { - if(err) - *err = cap_portal->stop_is_error; - return true; - } - + gsr_capture_portal *self = cap->priv; if(err) *err = false; - return false; + return gsr_pipewire_recording_stopped(&self->pipewire); } static void gsr_capture_portal_capture_end(gsr_capture *cap, AVFrame *frame) { |