Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FreeRDP/Remmina.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Richard G <skunk@iSKUNK.ORG>2022-10-10 02:18:50 +0300
committerDaniel Richard G <skunk@iSKUNK.ORG>2022-10-10 02:18:50 +0300
commit37292caf38d1c6340034e7227ebc86ce024232fb (patch)
tree8cbce073e2c2f356cfbae5e97e46a5012bda718c /plugins
parent1b7acbc5ac468776ac31bae2615fedb14d09b112 (diff)
RDP: Add option to disable output suppression
Diffstat (limited to 'plugins')
-rw-r--r--plugins/rdp/rdp_event.c22
-rw-r--r--plugins/rdp/rdp_plugin.c1
2 files changed, 17 insertions, 6 deletions
diff --git a/plugins/rdp/rdp_event.c b/plugins/rdp/rdp_event.c
index 3d6fcc9ca..5add6b654 100644
--- a/plugins/rdp/rdp_event.c
+++ b/plugins/rdp/rdp_event.c
@@ -53,10 +53,15 @@ gboolean remmina_rdp_event_on_map(RemminaProtocolWidget *gp)
if (rfi == NULL)
return false;
- gdi = ((rdpContext *)rfi)->gdi;
+ RemminaFile *remminafile = remmina_plugin_service->protocol_plugin_get_file(gp);
+ int do_suppress = !remmina_plugin_service->file_get_int(remminafile, "no-suppress", FALSE);
+
+ if (do_suppress) {
+ gdi = ((rdpContext *)rfi)->gdi;
- REMMINA_PLUGIN_DEBUG("Map event received, disabling TS_SUPPRESS_OUTPUT_PDU ");
- gdi_send_suppress_output(gdi, FALSE);
+ REMMINA_PLUGIN_DEBUG("Map event received, disabling TS_SUPPRESS_OUTPUT_PDU ");
+ gdi_send_suppress_output(gdi, FALSE);
+ }
return FALSE;
}
@@ -78,10 +83,15 @@ gboolean remmina_rdp_event_on_unmap(RemminaProtocolWidget *gp)
return FALSE;
}
- gdi = ((rdpContext *)rfi)->gdi;
+ RemminaFile *remminafile = remmina_plugin_service->protocol_plugin_get_file(gp);
+ int do_suppress = !remmina_plugin_service->file_get_int(remminafile, "no-suppress", FALSE);
+
+ if (do_suppress) {
+ gdi = ((rdpContext *)rfi)->gdi;
- REMMINA_PLUGIN_DEBUG("Unmap event received, enabling TS_SUPPRESS_OUTPUT_PDU ");
- gdi_send_suppress_output(gdi, TRUE);
+ REMMINA_PLUGIN_DEBUG("Unmap event received, enabling TS_SUPPRESS_OUTPUT_PDU ");
+ gdi_send_suppress_output(gdi, TRUE);
+ }
return FALSE;
}
diff --git a/plugins/rdp/rdp_plugin.c b/plugins/rdp/rdp_plugin.c
index b7c6b8360..9e5d5ec47 100644
--- a/plugins/rdp/rdp_plugin.c
+++ b/plugins/rdp/rdp_plugin.c
@@ -2878,6 +2878,7 @@ static const RemminaProtocolSetting remmina_rdp_advanced_settings[] =
#if FREERDP_CHECK_VERSION(2, 3, 1)
{ REMMINA_PROTOCOL_SETTING_TYPE_CHECK, "websockets", N_("Enable Gateway websockets support"), TRUE, NULL, NULL },
#endif
+ { REMMINA_PROTOCOL_SETTING_TYPE_CHECK, "no-suppress", N_("Update framebuffer even when not visible"), TRUE, NULL },
{ REMMINA_PROTOCOL_SETTING_TYPE_END, NULL, NULL, FALSE, NULL, NULL }
};