Window Display Synchronization in Terminal Server Sessions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Managing window display priorities in remote desktop applications can lead to user confusion, as local and remote applications compete for foreground display, complicating seamless interaction between local and remote computing systems.
Innovation Solution
A method for synchronizing window display information between two computing systems engaged in a terminal server session, where both systems identify and share their window display priorities and states, allowing the client system to formulate a combined ordering for presenting windows and transmit it back to the server system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If remote desktop applications allow both local and remote applications to open windows independently, then application functionality and versatility are improved, but window management complexity and user confusion increase
Solution Approach 1:
The patent introduces a window manager as an intermediary component that mediates between local and remote applications. The window manager receives window creation requests from both local and remote applications, assigns z-order values, and manages the display stack. This intermediary layer abstracts the complexity of coordinating multiple applications across different systems, allowing both to function independently while maintaining organized window presentation through centralized control.
2Ease of operation
If the OS displays windows based on simple first-come-first-served ordering, then ease of operation is improved, but seamless interaction between local and remote applications deteriorates
Solution Approach 1:
The patent extends the traditional single-dimension window stacking model by introducing a multi-dimensional ordering system. Instead of only considering the order windows were opened, the system now considers multiple dimensions including which system (local or remote) created the window, the application type, and user preferences. This dimensional expansion allows the window manager to seamlessly integrate windows from both local and remote applications while maintaining intuitive display behavior.
3Adaptability or versatility
If remote applications open windows independently on the client system, then application autonomy is improved, but display coordination and user experience deteriorate
Solution Approach 1:
The patent implements a feedback mechanism where the window manager continuously monitors window creation, activation, and closure events from both local and remote applications. When a remote application creates or activates a window, the window manager receives feedback about this event, recalculates the z-order based on current system state, and updates the display arrangement. This feedback loop ensures that autonomous applications automatically maintain proper display coordination without requiring changes to their internal logic.
Data Source
AI summary
Embodiments of the invention, are directed to synchronizing the presentation of windows between two computing systems. A client computing system participates in a terminal server session with a server computing system. Both computing systems identifying their own windows display information (e.g., client-side for local windows and server-side for remote windows respectively). The server computing system transmits its windows display information to the client computing system. The client computing system accesses the windows display information of the server computing system. The client computing system formulates combined ordering applicable to the presentation of both local and remote windows at the client computing system. The combined ordering is based on both the client side and the server-side windows display information. The client computing system presents windows in accordance with the formulated combined ordering. Additionally or alternatively, the client computing system transmits the formulated combined ordering to the server computing system.


