Bug 488358 - Connecting to a system with a higher resolution screen compared the client sends an image that is too large
Summary: Connecting to a system with a higher resolution screen compared the client se...
Status: RESOLVED DOWNSTREAM
Alias: None
Product: KRdp
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Unassigned bugs mailing-list
URL:
Keywords: usability
Depends on:
Blocks:
 
Reported: 2024-06-11 15:08 UTC by Nate Graham
Modified: 2024-06-12 13:04 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Cropped screen (2.46 MB, image/jpeg)
2024-06-12 13:03 UTC, Nate Graham
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nate Graham 2024-06-11 15:08:40 UTC
I am unsure if this is a client issue. Reporting anyway, just in case it's not.

Setup is:
- Server: Linux Laptop with 4K screen @ 225% scale running git master everything and a KRDP server
- Client: Windows 10 PC with a 1080p screen running the Remote Desktop Connection app

When I connect to the server using this client, it opens in full screen mode and shows 1/4 of the server's screen. See attached screenshot. This is not usable as there is no way to access the remaining 3/4 of the screen area!

I can mostly fix this by entering windowed mode, whereupon the window gets scrollbars so I can access the other parts of the screen. If I change the zoom/scale in the client to 50%, I can fix the remainder of the issue and see everything at once.

Is there anything we can do on the serve side for this, or is the client solely responsible for handling mismatched resolutions between the client and server and/or scaling the display? Apologies if this is obvious, but I'm not familiar with the typical cultural conventions of RDP client software.
Comment 1 Arjen Hiemstra 2024-06-11 15:18:11 UTC
Akseli did some work on server side downscaling so you'd be able to tell it to always scale down to 100% scale or something similar. That's still in progress though and was mostly started from a performance point of view. That said, adapting to different resolutions is ultimately the client's responsibility, since we're exposing a running session and won't want to mess with the server's actual display settings, so we can't really match the client aspect ratio should it be different from the server's. KRDC actually has a "scale" option specifically for that.
Comment 2 Akseli Lahtinen 2024-06-12 07:06:26 UTC
I think you forgot to add the screenshot :D

But yeah I worked on some of the downscaling stuff, which would always scale the video stream (and quality) down to the client size. 

However in my testing it was always kind of unusable since it would sometimes make the items in the video really small, but I have 3440x1440 screen that was being scaled down to 1920x1080 so that might be why.

IIRC this is how it goes in windows world:
- Client tells the server what their screen resolution is
- Server changes the actual display resolution to match the client resolution
- Any downscaling happens after this

Anyhow, we don't have anything like this yet. Your best bet currently is to set the client to scale the server video stream. 
So yeah, *client* needs to make sure the video stream is visible.
Comment 3 Nate Graham 2024-06-12 13:03:40 UTC
Created attachment 170417 [details]
Cropped screen

I did forget to add the screenshot, sorry!
Comment 4 Nate Graham 2024-06-12 13:04:48 UTC
Ok, I can accept that this was the client behaving stupidly. It was an MS Windows app, after all. :)