summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacki <jacki@thejackimonster.de>2024-02-15 01:58:34 +0100
committerJacki <jacki@thejackimonster.de>2024-02-15 01:58:34 +0100
commite8e0641ff448df07b8a6b3cb86e7a9fec2e2238b (patch)
tree0aa403aefd20cd62091a509e639cfc715e6c067d
parentf6f89370766f2e73cd470721a34e2ea6e39bc584 (diff)
Fix issues with non-libportal request
Signed-off-by: Jacki <jacki@thejackimonster.de>
-rw-r--r--src/request.c40
-rw-r--r--src/ui/new_contact.c32
2 files changed, 30 insertions, 42 deletions
diff --git a/src/request.c b/src/request.c
index ceb845b..d6a5ea7 100644
--- a/src/request.c
+++ b/src/request.c
@@ -46,24 +46,6 @@ _request_timeout_call(gpointer user_data)
return FALSE;
}
-static void
-_request_cancel()
-{}
-
-static void
-_request_cancel_timeout(gpointer user_data)
-{
- g_assert(user_data);
-
- MESSENGER_Request* request = (MESSENGER_Request*) user_data;
-
- if (request->timeout)
- g_source_remove(request->timeout);
-
- request_cleanup(request);
- request_drop(request);
-}
-
#endif
MESSENGER_Request*
@@ -85,14 +67,6 @@ request_new(MESSENGER_Application *application,
request->timeout = g_timeout_add(
0, G_SOURCE_FUNC(_request_timeout_call), request
);
-
- if (request->cancellable)
- g_cancellable_connect (
- request->cancellable,
- _request_cancel,
- request,
- _request_cancel_timeout
- );
#endif
application->requests = g_list_append(
@@ -252,6 +226,13 @@ request_cancel(MESSENGER_Request *request)
{
g_assert(request);
+#ifdef MESSENGER_APPLICATION_NO_PORTAL
+ if (request->timeout)
+ g_source_remove(request->timeout);
+
+ request->timeout = 0;
+#endif
+
if (!request->cancellable)
return;
@@ -264,6 +245,13 @@ request_cleanup(MESSENGER_Request *request)
{
g_assert(request);
+#ifdef MESSENGER_APPLICATION_NO_PORTAL
+ if (request->timeout)
+ g_source_remove(request->timeout);
+
+ request->timeout = 0;
+#endif
+
if (!request->cancellable)
return;
diff --git a/src/ui/new_contact.c b/src/ui/new_contact.c
index 9c10ca0..302f32c 100644
--- a/src/ui/new_contact.c
+++ b/src/ui/new_contact.c
@@ -433,22 +433,6 @@ ui_new_contact_dialog_init(MESSENGER_Application *app,
_setup_gst_pipeline(handle);
-#ifndef MESSENGER_APPLICATION_NO_PORTAL
- if (app->portal)
-#else
- if (FALSE)
-#endif
- {
- request_new_camera(
- app,
- XDP_CAMERA_FLAG_NONE,
- _request_camera_callback,
- handle
- );
- }
- else
- _init_camera_pipeline(app, handle, false);
-
handle->builder = gtk_builder_new_from_resource(
application_get_resource_path(app, "ui/new_contact.ui")
);
@@ -557,6 +541,22 @@ ui_new_contact_dialog_init(MESSENGER_Application *app,
G_CALLBACK(handle_dialog_destroy),
handle
);
+
+#ifndef MESSENGER_APPLICATION_NO_PORTAL
+ if (app->portal)
+#else
+ if (TRUE)
+#endif
+ {
+ request_new_camera(
+ app,
+ XDP_CAMERA_FLAG_NONE,
+ _request_camera_callback,
+ handle
+ );
+ }
+ else
+ _init_camera_pipeline(app, handle, false);
}
void