GNOME Bugzilla – Bug 628006
Default resolution for RDP connections is poor
Last modified: 2013-10-28 19:12:14 UTC
First, congrats! I really like the RDP feature integrated into vinagre and I'm surely going to use it a lot. My current 'issue' though is that, either I get it sized at 640x480 (rather 'low res' nowadays or I can choose fullscreen, which is also not exactly what I'm looking for. I think the best 'way' would be to 'detect' how big the are is we can fit (like for ssh for example: it's just all being used) and then fit rdp session in it, or alternatively, offer the option in rdp connection dialog to specify a resolution to use (which is probably rather simple to implement by looking at the code, as you use rdesktop in the background for the connection.
Dual monitors, vinagre 2.31.4 More information: clicking "View -> Fullscreen" having not ticked the "fullscreen" box when connecting results in a 640x480 display in the top-left of the screen, with the rest of the screen flat white. Connecting with the "fullscreen" box ticked leads to a huge window (the size of both monitors) on the right monitor only, that doesn't occupy the top 24px of the screen (leaving space for a non-existent gnome panel). In short, there is no usable way to get more than 640x480.
vinagre for RDP is totally unusable without the possibility to change resolution. For now I ended up using xfreerdp -g AAAxYYY manually. Can't wait for this to be fixed
*** Bug 673050 has been marked as a duplicate of this bug. ***
(In reply to comment #2) I have exactly the same experience, vinagre is unusable as RDP client because default resolution is only 640x480 :(
Hi David, what are the developer's views on this? Do you feel that a) this is not a problem b) vinagre should support user-customization of the RDP size c) vinagre should attempt to guess or negotiate a variable size. Having an idea of your opinions on the issue would help drive-by-patchers… Thanks
(In reply to comment #5) > Hi David, what are the developer's views on this? Do you feel that a) this is > not a problem b) vinagre should support user-customization of the RDP size c) > vinagre should attempt to guess or negotiate a variable size. I think that option C is preferable, but I would accept a patch for option B.
2.5 years after the initial bug report and the situation (with vinagre 3.6.2) is still the same. RDP is essentially unusable because Vinagre uses a fixed resolution of only 640x480. A relatively simple fix that would provide a reasonable user experience would be to have Vinagre simple check the current dimensions of the canvas in its main window when the user clicks 'connect' and pass those dimensions on to the underlying rdesktop command through the -g command line option. With this in place the user can control the resolution of an RDP session by simply resizing the main Vinagre window to their taste prior to establishing the connection to the remote server. This still wouldn't be an entirely ideal situation but it would be vastly preferable to the current behaviour.
FYI, I posted a bounty for this one. http://www.freedomsponsors.org/core/offer/189/default-resolution-for-rdp-connections-is-poor
It looks like plugins/rdp/vinagre-rdp-tab.c really just builds a command line for the rdesktop command... the only supported screen size option if fullscreen (-f) so the 640x480 default comes not from vinagre but from rdesktop itself. The rdesktop tool allows itself to be embedded in another X window (-X windowid) so it appears seamlessly integrated.
Created attachment 243503 [details] [review] allow to customize desktop size for RDP protocol Hi, attached patch adds spin buttons for specifying of width and height of remote desktop to vinagre together with corresponding properties of VinagreConnection. It passes the width and height to rdesktop through "-g" option. I used 800x600 as default size. Regards Marek
Created attachment 243504 [details] screenshot of the size setting
AWESOME work Marek!
Review of attachment 243503 [details] [review]: ::: plugins/rdp/vinagre-rdp-connection.c @@ +87,3 @@ + vinagre_cache_prefs_set_integer ("rdp-connection", "width", width); + + g_object_set (conn, "width", width, NULL); Rather than calling g_object set (twice), use the property setters that you added. ::: plugins/rdp/vinagre-rdp-plugin.c @@ +135,3 @@ + spin_button = gtk_spin_button_new_with_range (1, MAX_SIZE, 1); + /* Translators: This is the tooltip for the width field in a RDP connection */ + gtk_widget_set_tooltip_text (spin_button, _("Set width of the remote desktop.")); No trailing full stop (period) on tooltips. @@ +151,3 @@ + spin_button = gtk_spin_button_new_with_range (1, MAX_SIZE, 1); + /* Translators: This is the tooltip for the height field in a RDP connection */ + gtk_widget_set_tooltip_text (spin_button, _("Set height of the remote desktop.")); No trailing full stop. ::: vinagre/vinagre-connection.c @@ +44,3 @@ gboolean fullscreen; + gint width; + gint height; These are always greater than zero (at least in the RDP case) so should be guint. @@ +384,3 @@ + g_param_spec_int ("width", + "width", + "width of screen", Looks like tabs and spaces are being mixed here. @@ +385,3 @@ + "width", + "width of screen", + 1, There should be a "#define MIN_SIZE 1" at the top of this file, which should be used here. @@ +392,3 @@ + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_NAME | + G_PARAM_STATIC_BLURB)); Replace all the G_PARAM_STATIC_ with G_PARAM_STATIC_STRINGS. @@ +398,3 @@ + g_param_spec_int ("height", + "height", + "height of screen", Tabs and spaces mixed here. @@ +399,3 @@ + "height", + "height of screen", + 1, MIN_SIZE comment, as above. @@ +406,3 @@ + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_NAME | + G_PARAM_STATIC_BLURB)); G_PARAM_STATIC_STRINGS comment, as above.
Created attachment 244192 [details] [review] allow to customize desktop size for RDP protocol This is modified version of the previous patch fixing all the issues from the previous comment.
Review of attachment 244192 [details] [review]: Looks good, please push to master
Comment on attachment 244192 [details] [review] allow to customize desktop size for RDP protocol Thank you for the review. I've committed the patch to the master. Marek
Created attachment 258335 [details] [review] Use size of tab as desktop size for RDP protocol This patch reverts the change made by Marek and uses the size of the tab instead of a configured size. What do you think about this solution?