Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WinUI3 apps using 1.6 SDK stop rendering in remote desktop #10009

Open
garrettpauls opened this issue Sep 23, 2024 · 4 comments
Open

WinUI3 apps using 1.6 SDK stop rendering in remote desktop #10009

garrettpauls opened this issue Sep 23, 2024 · 4 comments
Labels
bug Something isn't working Regression team-CompInput Issue for IXP (Composition, Input) team

Comments

@garrettpauls
Copy link

garrettpauls commented Sep 23, 2024

Describe the bug

We have a WinUI3 application that we recently updated to use WindowsAppSDK version 1.6.240829007. Prior to this update it ran over remote desktop fine, however after this update it will visually freeze if you switch away from the remote desktop window and back, however it still accepts mouse input during this time. Switching away from remote desktop and back again will restore the app's rendering functionality, and it will update as though all clicks had been interpreted and it just wasn't rendering for a while.

I've attached a small application which reproduces the behavior, as well as a video to demonstrate it. We've had multiple people run into this issue with the app after the update to 1.6.

WinUIRDPBug.zip

This affects our unpackaged application, and the demo application is also unpackaged. I do not know if this bug exists for packaged applications, however our application must remain unpackaged, so I didn't attempt to test the packaged app behavior.

Steps to reproduce the bug

  1. Compile the attached demo application as Release x64.
  2. Copy the compiled app to a separate computer via a remote desktop connection. The RDP settings can be anything, I've tried a variety of performance settings from the default lowest (Modem) to the default highest (LAN) and they all produce the behavior.
  3. Run the compiled app in the remote desktop session and click a few buttons to verify it is working (clicking the buttons and nav view items should add messages to the log text box).
  4. Switch focus on the main (non-remote) computer to an application other than the remote desktop connection, and interact with the other application.
  5. Switch focus back to the remote desktop connection and click on the demo app. Attempt to click on some buttons and menu items, and it will not appear to respond to the clicks. The first click may apply the hover or pressed style to whatever you clicked, and after that nothing will update.
  6. Switch away from the remote desktop session and back again, then click on the application. It will update as though it had been processing the mouse clicks and just wasn't rendering until now. The application will now continue to behave as expected (until you switch away from remote desktop again).

Expected behavior

At step 5 of the reproduction, the application should behave normally and continue rendering. Clicking buttons and menu items should show the usual WinUI animations, and the text box log should update as things are clicked.

Screenshots

This video shows the problem in action: WinUI3RemoteDesktopBug

WinUI3RemoteDesktopBug

NuGet package version

WinUI 3 - Windows App SDK 1.6.0: 1.6.240829007

Windows version

No response

Additional context

The host computer is Windows 11 (23H2) build 22631.4169, the remote computer is Windows Server 2019 Standard (1809) build 17763.6293.

Remote desktop connection information is:

[Client details]
Client version: 10.0.22621.4036 (x64)
Local OS: Windows 10 Pro x64 (10.0, Build 22631)

[Network details]
Transport protocol: TCP
Round-trip time: 170 ms
Available bandwidth: 9.98 Mbps
Frame rate: 0 FPS

[Remote computer details]
Remote session type: Remote desktop
Gateway name: Not in use
Gateway logon method: Not in use
Remote computer: [redacted]

I was also able to reproduce this with the host computer being Windows 11 (23H2) build 22631.4169 and the remote computer being Windows 11 (23H2) build 22631.4169. Remote desktop connection information for that session is:

[Client details]
Client version: 10.0.22621.4036 (x64)
Local OS: Windows 10 Pro x64 (10.0, Build 22631)

[Network details]
Transport protocol: TCP
Round-trip time: 170 ms
Available bandwidth: 31.20 Mbps
Frame rate: 2 FPS

[Remote computer details]
Remote session type: Remote desktop
Gateway name: Not in use
Gateway logon method: Not in use
Remote computer: [redacted]
@garrettpauls garrettpauls added the bug Something isn't working label Sep 23, 2024
@microsoft-github-policy-service microsoft-github-policy-service bot added the needs-triage Issue needs to be triaged by the area owners label Sep 23, 2024
@Balkoth
Copy link

Balkoth commented Sep 26, 2024

Seeing this too, as we have apps in production that can only be executed from a remote desktop session this is a critical bug for us.

@codendone codendone added team-CompInput Issue for IXP (Composition, Input) team Regression and removed needs-triage Issue needs to be triaged by the area owners labels Sep 26, 2024
@AdriaanLarcai
Copy link

AdriaanLarcai commented Oct 2, 2024

We are experiencing this as well, but it's more like the app stops responding to mouse input. Using navigation keys on the keyboard (tab and arrow keys), we are still able to navigate through our app. Pressing a key such as spacebar sometimes returns mouse input.
This must be a regression, since this was an issue in a previous version of the Windows App SDK.

@zalox
Copy link

zalox commented Oct 7, 2024

I'm experiencing the same issue. Initially I thought it was the Remote Desktop Manager I was using. Downstream report: https://forum.devolutions.net/topics/43042/freezing-issues-with-rdm-20243100

@krevio
Copy link

krevio commented Oct 8, 2024

Have a similar behavior even without RDP environment.

Simply hold down the Tab key for a while, at some point the window no longer responds to pointer inputs. But it seems to be random when this happens.

After pressing ALT or Shift, however, all previous clicks are processed.

NoPointerActionsAfterTabing.mp4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Regression team-CompInput Issue for IXP (Composition, Input) team
Projects
None yet
Development

No branches or pull requests

6 participants