[PR #1043] [CLOSED] Fix RDP connection bar disappearing after fullscreen transition #3876

Closed
opened 2026-03-13 13:02:50 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/1Remote/1Remote/pull/1043
Author: @Copilot
Created: 11/28/2025
Status: Closed

Base: mainHead: copilot/fix-rdp-connection-bar-issue


📝 Commits (2)

  • 649e7b9 Initial plan
  • 5187479 Fix RDP connection bar not displaying after fullscreen transition

📊 Changes

1 file changed (+36 additions, -0 deletions)

View changed files

📝 Ui/View/Host/ProtocolHosts/AxMsRdpClient09Host.cs (+36 -0)

📄 Description

Fixes #1041 - RDP connection bar disappears in fullscreen mode and fails to reappear on some Windows systems.

The RDP ActiveX control's connection bar state can become unresponsive during fullscreen transitions. When PinConnectionBar=false (auto-hide mode), the bar may fail to respond to mouse hover at screen top.

Changes

  • Refresh PinConnectionBar property after fullscreen transition in OnGoToFullScreenRequested()
  • Temporarily pin the bar during transition, then unpin after 500ms if user preference is auto-hide
  • Extract delay constant CONNECTION_BAR_UNPIN_DELAY_MS with documentation
if (_rdpSettings.IsFullScreenWithConnectionBar == true)
{
    _rdpClient!.AdvancedSettings6.PinConnectionBar = true;
    if (_rdpSettings.IsPinTheConnectionBarByDefault != true)
    {
        _ = Task.Run(async () =>
        {
            await Task.Delay(CONNECTION_BAR_UNPIN_DELAY_MS);
            Execute.OnUIThread(() =>
            {
                if (_rdpClient?.FullScreen == true)
                    _rdpClient.AdvancedSettings6.PinConnectionBar = false;
            });
        });
    }
}

This builds on PR #1001 which addressed initialization order but didn't handle post-transition state refresh.

Original prompt

issue #1041中,再次有用户反馈,RDP 的connection bar 会在全屏后自动消失。


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/1Remote/1Remote/pull/1043 **Author:** [@Copilot](https://github.com/apps/copilot-swe-agent) **Created:** 11/28/2025 **Status:** ❌ Closed **Base:** `main` ← **Head:** `copilot/fix-rdp-connection-bar-issue` --- ### 📝 Commits (2) - [`649e7b9`](https://github.com/1Remote/1Remote/commit/649e7b998e26b1a50e65c06ea9213f6f7386b15b) Initial plan - [`5187479`](https://github.com/1Remote/1Remote/commit/5187479120759083c5eccb9b8b782d2aff1aac00) Fix RDP connection bar not displaying after fullscreen transition ### 📊 Changes **1 file changed** (+36 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `Ui/View/Host/ProtocolHosts/AxMsRdpClient09Host.cs` (+36 -0) </details> ### 📄 Description Fixes #1041 - RDP connection bar disappears in fullscreen mode and fails to reappear on some Windows systems. The RDP ActiveX control's connection bar state can become unresponsive during fullscreen transitions. When `PinConnectionBar=false` (auto-hide mode), the bar may fail to respond to mouse hover at screen top. ## Changes - Refresh `PinConnectionBar` property after fullscreen transition in `OnGoToFullScreenRequested()` - Temporarily pin the bar during transition, then unpin after 500ms if user preference is auto-hide - Extract delay constant `CONNECTION_BAR_UNPIN_DELAY_MS` with documentation ```csharp if (_rdpSettings.IsFullScreenWithConnectionBar == true) { _rdpClient!.AdvancedSettings6.PinConnectionBar = true; if (_rdpSettings.IsPinTheConnectionBarByDefault != true) { _ = Task.Run(async () => { await Task.Delay(CONNECTION_BAR_UNPIN_DELAY_MS); Execute.OnUIThread(() => { if (_rdpClient?.FullScreen == true) _rdpClient.AdvancedSettings6.PinConnectionBar = false; }); }); } } ``` This builds on PR #1001 which addressed initialization order but didn't handle post-transition state refresh. <!-- START COPILOT CODING AGENT SUFFIX --> <details> <summary>Original prompt</summary> > issue #1041中,再次有用户反馈,RDP 的connection bar 会在全屏后自动消失。 </details> <!-- START COPILOT CODING AGENT TIPS --> --- 💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more [Copilot coding agent tips](https://gh.io/copilot-coding-agent-tips) in the docs. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-13 13:02:50 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/1Remote#3876
No description provided.