diff options
author | Frediano Ziglio <fziglio@redhat.com> | 2020-03-03 11:04:05 +0000 |
---|---|---|
committer | Frediano Ziglio <freddy77@gmail.com> | 2020-05-01 06:58:09 +0100 |
commit | 6e14b6bc99a3285d1fdc89c077972f0cab9bfceb (patch) | |
tree | 365eddf1a057e86268a85a339c459deb1ae88751 /server/dcc.cpp | |
parent | 69fbef6fff925fa86671db7878121af39c2476fc (diff) |
Reimplement video-codes update with no GObject signals
This is in preparation to remove GObjects, as signals require them.
Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
Diffstat (limited to 'server/dcc.cpp')
-rw-r--r-- | server/dcc.cpp | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/server/dcc.cpp b/server/dcc.cpp index a825cf2d..d9ac0047 100644 --- a/server/dcc.cpp +++ b/server/dcc.cpp @@ -38,7 +38,6 @@ enum PROP_ZLIB_GLZ_STATE }; -static void on_display_video_codecs_update(GObject *gobject, GParamSpec *pspec, gpointer user_data); static bool dcc_config_socket(RedChannelClient *rcc); static void dcc_on_disconnect(RedChannelClient *rcc); @@ -102,9 +101,6 @@ display_channel_client_constructed(GObject *object) dcc_init_stream_agents(self); image_encoders_init(&self->priv->encoders, &DCC_TO_DC(self)->priv->encoder_shared_data); - - g_signal_connect(DCC_TO_DC(self), "notify::video-codecs", - G_CALLBACK(on_display_video_codecs_update), self); } static void @@ -112,7 +108,6 @@ display_channel_client_finalize(GObject *object) { DisplayChannelClient *self = DISPLAY_CHANNEL_CLIENT(object); - g_signal_handlers_disconnect_by_func(DCC_TO_DC(self), (void*) on_display_video_codecs_update, self); g_clear_pointer(&self->priv->preferred_video_codecs, g_array_unref); g_clear_pointer(&self->priv->client_preferred_video_codecs, g_array_unref); g_free(self->priv); @@ -1136,10 +1131,8 @@ static void dcc_update_preferred_video_codecs(DisplayChannelClient *dcc) g_free(codecs_str); } -static void on_display_video_codecs_update(GObject *gobject, GParamSpec *pspec, gpointer user_data) +void dcc_video_codecs_update(DisplayChannelClient *dcc) { - DisplayChannelClient *dcc = DISPLAY_CHANNEL_CLIENT(user_data); - /* Only worry about video-codecs update if client has sent * SPICE_MSGC_DISPLAY_PREFERRED_VIDEO_CODEC_TYPE */ if (dcc->priv->client_preferred_video_codecs == NULL) { |