This disclosure relates to a method, system, and computer program product for accessing remote desktop applications. In one implementation, a computer-implement method is provided. According to the method, a split view of a window of an application running on a host device is determined at the host device, wherein the split view comprises a plurality of sub-windows, and each of the sub-windows provides a view of a portion of the window. Information about the sub-windows is sent to a client device in communication with the host device. Frame buffer data of at least one of the sub-windows is transmitted to the client device in response to receiving a selection of the at least one sub-window from the client device.
Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A computer-implemented method, comprising: determining, at a host device, positions of sub-windows of a full window of an application running on the host device and physically displayed at the host device in a first user interface, wherein each of the sub-windows is an independent functional area of the full window displayed in the first user interface; sending information about the sub-windows to a client device that is remotely accessing the application running on the host device, wherein the information comprises the positions of the sub-windows in the full window; generating, at the client device, a list of text identifiers describing the sub-windows displayed in the first user interface; displaying, at the client device in a second user interface, the list of text identifiers; receiving, at the client device, a user-input choice of a text identifier from the list of text identifiers, wherein the text identifier corresponds to a selected sub-window from the full window; sending the user-input choice to the host device as a request for the host device to transmit remote frame buffer data of the selected sub-window; transmitting, by the host device, the frame buffer data of the selected sub-window to the client device in response to receiving the request; and in response to receiving the frame buffer data, displaying the selected sub-window in the second user interface at the client device while simultaneously displaying the full window in the first user interface at the host device.
This invention relates to remote access systems where a client device accesses an application running on a host device. The problem addressed is the inefficient display of remote application windows, particularly when only a portion of the full window is needed. The solution involves a method for selectively transmitting and displaying sub-windows of a full application window between a host and a client device. At the host device, the positions of sub-windows within the full window are determined, where each sub-window represents an independent functional area. This positional information is sent to the client device, which generates a list of text identifiers describing each sub-window. The client device displays this list and receives a user selection of a text identifier corresponding to a specific sub-window. The client then sends this selection to the host, which transmits only the frame buffer data of the selected sub-window. The client device displays the selected sub-window while the full window remains visible at the host. This approach reduces bandwidth usage and improves efficiency by transmitting only the necessary sub-window data rather than the entire window. The method ensures that the host and client maintain synchronized views of the application while optimizing resource usage.
2. The method according to claim 1 , further comprising: transforming an event data associated with the selected sub-window to corresponding event data associated with the full window in response to receiving the event data from the client device.
This invention relates to event data processing in computing systems, specifically addressing the challenge of handling event data generated within a sub-window of a graphical user interface (GUI) and transforming it to correspond to a full window context. The method involves receiving event data from a client device, where the event data is associated with a selected sub-window within a larger window. The key innovation is the transformation of this sub-window event data into event data that corresponds to the full window. This transformation ensures that events occurring within a sub-window are accurately interpreted and processed as if they originated from the full window, maintaining consistency in event handling across different window contexts. The method may also include selecting the sub-window from multiple available sub-windows within the full window, enabling dynamic adaptation to user interactions or system configurations. The transformation process accounts for spatial and contextual differences between the sub-window and the full window, ensuring seamless integration of event data. This approach is particularly useful in applications where sub-windows are used for focused tasks, such as editing or data entry, while the full window provides a broader context for the overall application or workflow. The invention improves user experience by ensuring that event data remains coherent and actionable regardless of the window context in which it is generated.
3. The method according to claim 1 , further comprising identifying window handles for the sub-windows.
A system and method for managing graphical user interfaces (GUIs) in computing environments addresses the challenge of efficiently organizing and controlling multiple sub-windows within a primary window. The invention provides techniques for dynamically identifying and managing window handles associated with sub-windows, enabling improved user interaction and system performance. The method involves detecting the presence of sub-windows within a primary window and analyzing their structural relationships to determine their hierarchical organization. By identifying window handles for each sub-window, the system can track and manipulate these elements independently, allowing for better resource allocation and user experience. This approach enhances the ability to resize, reposition, or minimize sub-windows without disrupting the primary window's functionality. The invention is particularly useful in applications requiring complex GUI layouts, such as integrated development environments, multimedia editors, or multi-tasking operating systems. The method ensures that sub-windows are properly managed, reducing system overhead and improving responsiveness. The identification of window handles enables precise control over sub-windows, facilitating seamless user interactions and efficient system operations.
4. The method according to claim 3 , wherein the information about the sub-windows is obtained from metadata of the window handles.
A system and method for managing graphical user interface (GUI) elements, particularly sub-windows within a larger window, addresses the challenge of efficiently tracking and controlling multiple sub-windows in a computing environment. The invention involves obtaining information about sub-windows from metadata associated with window handles, which are unique identifiers for windows in an operating system. This metadata includes details such as window dimensions, position, visibility status, and parent-child relationships between windows. By extracting this information, the system can dynamically adjust the layout, behavior, or visibility of sub-windows based on user interactions or application requirements. The method ensures that sub-windows are properly managed, reducing the risk of overlapping, misalignment, or improper rendering. This approach is particularly useful in applications requiring complex window management, such as multi-document interfaces, virtual desktops, or collaborative software environments. The invention improves user experience by maintaining organized and functional window arrangements while minimizing computational overhead. The solution leverages existing window handle metadata, eliminating the need for additional data structures or complex tracking mechanisms. This streamlined approach enhances performance and reliability in GUI management systems.
5. The method according to claim 2 , wherein the event data associated with the selected sub-window comprises a position of an object in the selected sub-window.
This invention relates to event data processing in a video analysis system, specifically for tracking objects within a video frame. The problem addressed is the need to efficiently extract and analyze event data from specific regions of a video frame to determine the position of objects within those regions. Traditional methods may lack precision or require excessive computational resources when processing large frames or multiple regions. The method involves selecting a sub-window within a video frame, where the sub-window is a defined region of interest. Event data associated with this sub-window is then processed to determine the position of an object within that region. The event data may include spatial information, such as coordinates or pixel values, that indicate the object's location. By focusing on the sub-window rather than the entire frame, the method reduces computational overhead and improves accuracy in object tracking. The system may further include preprocessing steps to enhance the event data, such as filtering or normalization, to improve the reliability of position detection. The method is particularly useful in applications like surveillance, autonomous navigation, or real-time object monitoring, where precise and efficient object tracking is critical. The approach ensures that only relevant data within the sub-window is analyzed, optimizing performance and resource usage.
6. The method according to claim 5 , wherein the transforming the event data associated with the selected sub-window to the corresponding event data associated with the full window comprises: mapping the position of the object in the selected sub-window to a position in the full window based on a position of the selected sub-window within the full window.
This invention relates to event data processing in computer vision or sensor-based systems, specifically addressing the challenge of transforming event data from a sub-window to a full window representation. Event data, such as those generated by neuromorphic sensors or event-based cameras, capture dynamic changes in a scene as asynchronous events. When analyzing only a portion (sub-window) of the full sensor field of view, the event data must be accurately mapped to the full window to maintain spatial and temporal consistency. The method involves selecting a sub-window within a full window of event data, where the sub-window represents a smaller region of interest. The event data within this sub-window is then transformed to correspond to the full window by mapping the object positions in the sub-window to their equivalent positions in the full window. This mapping is based on the spatial relationship between the sub-window and the full window, ensuring that the transformed event data retains its original spatial accuracy relative to the full field of view. The transformation preserves the integrity of the event data, allowing for accurate analysis or further processing in the full window context. This approach is particularly useful in applications requiring dynamic region-of-interest analysis, such as object tracking or scene monitoring, where only a subset of the sensor data is initially processed.
7. The method according to claim 1 , wherein the determining the positions of the sub-windows in the full window is responsive to a request for switching window sharing mode from full-window mode to sub-window mode from the client device.
This invention relates to window management in a computing environment, specifically for switching between full-window and sub-window sharing modes in a collaborative or remote desktop application. The problem addressed is the need for efficient and user-controlled transition between displaying a single shared window and multiple smaller sub-windows within a shared workspace, ensuring seamless collaboration without disrupting the user experience. The method involves determining the positions of multiple sub-windows within a full window in response to a request from a client device to switch from full-window mode to sub-window mode. In full-window mode, a single window is shared, while in sub-window mode, the shared window is divided into smaller sub-windows, each displaying different content or applications. The positions of these sub-windows are dynamically adjusted based on the request, allowing users to view multiple applications or documents simultaneously in a shared environment. The method ensures that the transition is smooth and responsive, maintaining the integrity of the shared workspace while providing flexibility in how content is displayed. This approach is particularly useful in collaborative applications where multiple users need to view different parts of a workspace simultaneously.
8. A computer-implemented system, comprising a computer processor coupled to a computer-readable memory unit, the memory unit comprising instructions that when executed by the computer processor implements a method comprising: determining, at a host device, positions of sub-windows of a full window of an application running on the host device and physically displayed at the host device in a first user interface, wherein each of the sub-windows is an independent functional area of the full window displayed in the first user interface; sending information about the sub-windows to a client device that is remotely accessing the application running on the host device, wherein the information comprises the positions of the sub-windows in the full window; generating, at the client device, a list of text identifiers describing the sub-windows displayed in the first user interface; displaying, at the client device in a second user interface, the list of text identifiers; receiving, at the client device, a user-input choice of a text identifier from the list of text identifiers, wherein the text identifier corresponds to a selected sub-window from the full window; sending the user-input choice to the host device as a request for the host device to transmit remote frame buffer data of the selected sub-window; transmitting, by the host device, the frame buffer data of the selected sub-window to the client device in response to receiving the request; and in response to receiving the frame buffer data, displaying the selected sub-window in the second user interface at the client device while simultaneously displaying the full window in the first user interface at the host device.
This invention relates to remote access systems for applications, specifically improving the efficiency of displaying and interacting with sub-windows of a full window in a remote desktop or application streaming scenario. The problem addressed is the inefficiency of transmitting and rendering the entire full window when a user only needs to interact with a specific sub-window, which consumes unnecessary bandwidth and processing resources. The system includes a host device running an application with a full window divided into multiple sub-windows, each representing an independent functional area. The host device determines the positions of these sub-windows and sends this positional information to a remotely connected client device. The client device generates a list of text identifiers describing each sub-window and displays this list in its user interface. A user selects a text identifier corresponding to a desired sub-window, and the client device sends this selection back to the host device. The host device then transmits only the frame buffer data of the selected sub-window to the client device, which renders it in its user interface. This allows the client device to display only the relevant sub-window while the full window continues to be displayed at the host device, optimizing bandwidth and processing by avoiding the transmission of unnecessary visual data.
9. The system according to claim 8 , the method further comprising: transforming an event data associated with the selected sub-window to corresponding event data associated with the full window in response to receiving the event data from the client device.
The invention relates to a system for processing event data in a graphical user interface (GUI) environment, particularly for handling events within a sub-window that is part of a larger full window. The problem addressed is the need to accurately map and transform event data generated within a sub-window to its corresponding position or context within the full window, ensuring seamless interaction and functionality across nested or overlapping window structures. The system includes a client device that generates event data, such as mouse clicks, touch inputs, or keyboard interactions, within a sub-window displayed on a screen. The sub-window is a portion of a larger full window, and the event data is initially associated with the sub-window's coordinate system or context. The system processes this event data by transforming it to correspond to the full window's coordinate system or context, allowing the event to be interpreted correctly within the broader GUI environment. This transformation ensures that actions taken within the sub-window are properly translated to the full window, maintaining consistency and functionality. The transformation step involves adjusting the event data's parameters, such as coordinates, timestamps, or other metadata, to reflect its position or relevance within the full window. This may include recalculating spatial relationships, updating event handlers, or modifying data structures to reflect the event's new context. The transformed event data is then used to trigger appropriate responses or actions within the full window, such as updating displayed content, executing commands, or interacting with other GUI elements. This approach enables efficient and accurate event handling in complex GUI environments where multiple windows or sub-wi
10. The system according to claim 8 , further comprising identifying window handles for the sub-windows.
A system for managing graphical user interfaces (GUIs) with multiple sub-windows addresses the challenge of efficiently tracking and controlling individual sub-windows within a larger application window. The system includes a display interface that renders a primary window containing multiple sub-windows, each representing distinct functional components or data views. A window management module dynamically generates and positions these sub-windows based on user interactions or application logic. The system further includes a window handle identification module that detects and assigns unique identifiers, such as window handles, to each sub-window. These handles enable precise targeting of sub-windows for operations like resizing, repositioning, or data retrieval. The system may also include a user input module to capture commands for manipulating sub-windows and a data processing module to update content within the sub-windows in response to user actions or system events. The window handle identification ensures that each sub-window remains independently addressable, improving usability and functionality in complex GUI environments. This approach is particularly useful in applications requiring multi-pane layouts, such as integrated development environments (IDEs), dashboards, or collaborative editing tools.
11. The system according to claim 10 , wherein the information about the sub-windows is obtained from metadata of the window handles.
A system retrieves and processes information about sub-windows within a graphical user interface (GUI) environment. The system identifies and manages sub-windows, which are smaller, nested windows within a parent window, to enhance user interaction and system efficiency. The information about these sub-windows is extracted from metadata associated with window handles, which are unique identifiers for each window in the operating system. This metadata includes details such as window dimensions, position, visibility, and hierarchical relationships between parent and child windows. By analyzing this metadata, the system can dynamically adjust window layouts, optimize rendering performance, and improve user experience by ensuring proper window management. The system may also use this information to handle window events, such as resizing, minimizing, or maximizing, in a coordinated manner. This approach ensures that sub-windows are properly tracked and managed, reducing conflicts and improving the overall functionality of the GUI environment. The system is particularly useful in applications requiring complex window management, such as integrated development environments (IDEs), multimedia editors, or virtual desktop environments.
12. The system according to claim 9 , wherein the event data associated with the selected sub-window comprises a position of an object in the selected sub-window.
This invention relates to a system for analyzing event data within a selected sub-window of a larger window, particularly focusing on tracking the position of an object within that sub-window. The system is designed to process and interpret event data, which includes spatial information about objects detected within a defined area. The sub-window is a smaller, user-defined or automatically determined region within a larger monitoring or display area, allowing for focused analysis of specific regions of interest. The system captures and processes event data associated with this sub-window, including the precise position of an object detected within it. This enables applications such as object tracking, motion detection, or spatial analysis in fields like surveillance, robotics, or augmented reality. By isolating the sub-window, the system can reduce computational overhead and improve accuracy in tracking objects within a confined area. The invention builds on a broader system that generates and manages event data, ensuring that the position data within the sub-window is accurately recorded and utilized for further processing or decision-making. This approach enhances the efficiency and precision of object localization in dynamic environments.
13. The system according to claim 12 , wherein the transforming the event data associated with the selected sub-window to corresponding event data associated with the full window comprises: mapping the position of the object in the selected sub-window to a position in the full window based on a position of the selected sub-window within the full window.
This invention relates to a system for processing event data within a full window by analyzing selected sub-windows. The system addresses the challenge of efficiently handling event data in large windows by focusing on smaller sub-windows, then transforming the results to apply to the full window. The system includes a processor that selects a sub-window within a full window and processes event data associated with that sub-window. The processor then transforms the event data from the sub-window to correspond to the full window by mapping the position of an object in the sub-window to a position in the full window. This mapping is based on the relative position of the sub-window within the full window. The transformation ensures that the processed event data accurately reflects the spatial relationships within the full window, allowing for precise analysis or visualization of events across the entire window. The system may also include a display for visualizing the transformed event data, enabling users to interpret the results in the context of the full window. This approach improves computational efficiency by reducing the processing load while maintaining accuracy in event data representation.
14. The system according to claim 8 , wherein the determining the positions of the sub-windows in the full window is responsive to receiving a request for switching window sharing mode from full-window mode to sub-window mode from the client device.
A system for managing window sharing in a collaborative computing environment addresses the challenge of efficiently transitioning between full-window and sub-window display modes during shared sessions. The system includes a server that processes requests from client devices to switch between these modes. When a request is received to transition from full-window mode to sub-window mode, the server determines the positions of multiple sub-windows within the full window. These sub-windows are smaller, distinct display areas that allow multiple participants to view different portions of the shared content simultaneously. The system dynamically adjusts the layout of these sub-windows based on the request, ensuring that the shared content is divided and displayed in a structured manner. This functionality enhances collaboration by enabling participants to focus on specific areas of interest while maintaining an organized view of the overall shared content. The system may also include features for managing user permissions, synchronizing content updates, and optimizing network bandwidth usage during the sharing process. The solution improves usability in collaborative applications such as remote meetings, educational sessions, and teamwork platforms.
15. A computer program product comprising a non-transient machine-readable medium having machine-executable instructions embodied therewith, the instructions, when executed on an electronic device, causing the electronic device to: determine, at a host device, positions of sub-windows of a full window of an application running on the host device and physically displayed at the host device in a first user interface, wherein each of the sub-windows is an independent functional area of the full window displayed in the first user interface; send information about the sub-windows to a client device, wherein the client device that is remotely accessing the application running on the host device, wherein the information comprises the positions of the sub-windows in the full window; generate, at the client device, a list of text identifiers describing the sub-windows displayed in the first user interface; display, at the client device in a second user interface, the list of text identifiers; receive, at the client device, a user-input choice of a text identifier from the list of text identifiers, wherein the text identifier corresponds to a selected sub-window from the full window; send the user-input choice to the host device as a request for the host device to transmit remote frame buffer data of the selected sub-window; transmit, by the host device, the frame buffer data of the selected sub-window to the client device in response to receiving the request; in response to receiving the frame buffer data, display the selected sub-window in the second user interface at the client device while simultaneously displaying the full window in the first user interface at the host device; generate, at the client device, an event data associated with the selected sub-window, the event data comprising a position of an object in the selected sub-window at the client device; receive, at the host device, the event data from the client device; and transform, at the host device, the event data from the client device to a corresponding event data associated with the full window, wherein the transforming comprises: mapping the position of the object in the sub-window at the client device to a position of a corresponding object in the full window based on a position of the selected sub-window in the full window.
This invention relates to remote access systems for applications, specifically improving user interaction with sub-windows of a full window displayed on a host device while being remotely accessed by a client device. The problem addressed is the inefficiency of traditional remote access methods, which often require transmitting and displaying the entire full window, even when a user only needs to interact with a specific sub-window. This can lead to unnecessary bandwidth usage and reduced performance. The system involves a host device running an application with a full window containing multiple sub-windows, each functioning as an independent area within the full window. The host device determines the positions of these sub-windows and sends this positional information to the client device. The client device generates a list of text identifiers describing each sub-window and displays this list in its user interface. A user selects a text identifier, which corresponds to a specific sub-window, and the client device requests frame buffer data for only that sub-window from the host device. The host device transmits the requested data, and the client device displays the selected sub-window while the full window remains displayed on the host device. Additionally, the client device generates event data for user interactions within the selected sub-window, such as the position of an object (e.g., a cursor). This event data is sent to the host device, which transforms it to correspond to the full window by mapping the sub-window's object position to the full window's coordinate system based on the sub-window's position. This ensures accurate interaction with the full window while only transmitting and displaying the relevant sub-window data. The approach optimizes bandwidth a
16. The computer program product according to claim 15 , wherein the instructions further cause the electronic device to identify window handles for the sub-windows.
This invention relates to computer program products for managing graphical user interfaces (GUIs) in electronic devices. The problem addressed is the need to efficiently organize and control multiple sub-windows within a primary window, particularly in applications where dynamic window management is required, such as in software development environments, multimedia applications, or virtual desktop systems. The invention provides a computer program product that includes instructions for an electronic device to generate a primary window and one or more sub-windows within it. The sub-windows are dynamically positioned and sized relative to the primary window, allowing for flexible and adaptive layouts. The program also includes instructions to detect user interactions with the sub-windows, such as resizing, moving, or closing, and to adjust the layout of the sub-windows in response. Additionally, the program identifies window handles for the sub-windows, which are graphical elements used to manipulate the sub-windows, such as title bars, borders, or control buttons. This allows users to interact with and manage the sub-windows more intuitively. The invention ensures that the sub-windows remain properly aligned and functional within the primary window, even when the primary window is resized or moved. The dynamic positioning and sizing of sub-windows, combined with the identification of window handles, enhances usability and efficiency in applications requiring complex window management.
17. The computer program product according to claim 16 , wherein the information about the sub-windows is obtained from metadata of the window handles.
A system and method for managing graphical user interface (GUI) elements in a computing environment involves tracking and controlling sub-windows within a primary window. The technology addresses the challenge of efficiently managing multiple sub-windows, which can clutter the display and reduce usability. The system obtains information about sub-windows from metadata associated with window handles, which are unique identifiers for each window in the operating system. This metadata includes details such as window dimensions, position, visibility status, and parent-child relationships between windows. By analyzing this metadata, the system can dynamically adjust the layout, visibility, or behavior of sub-windows to optimize the user experience. The method may also involve grouping sub-windows based on their metadata, allowing for batch operations such as resizing, moving, or minimizing multiple sub-windows simultaneously. The system ensures that sub-windows remain functional and accessible while minimizing visual clutter and improving navigation within the primary window. This approach enhances productivity by streamlining window management tasks and reducing the cognitive load on users.
18. The computer program product according to claim 15 , wherein the information further comprises pixel-based sizes of the sub-windows.
A system and method for managing graphical user interfaces (GUIs) in computing environments, particularly for optimizing the display of multiple sub-windows within a primary window. The invention addresses the challenge of efficiently organizing and displaying multiple sub-windows in a way that maximizes usability and visual clarity. The system dynamically adjusts the layout of sub-windows based on their content and user interactions, ensuring that important information remains accessible while minimizing clutter. The invention includes a computer program product that processes metadata associated with each sub-window, such as pixel-based sizes, to determine optimal positioning and dimensions. This metadata allows the system to scale and arrange sub-windows intelligently, adapting to different screen resolutions and user preferences. The program product may also incorporate user-defined rules or machine learning algorithms to refine the layout over time, improving efficiency and user experience. By dynamically adjusting sub-window sizes and positions, the invention enhances productivity in multi-tasking environments, such as software development, data analysis, or multimedia editing, where multiple applications or documents must be viewed simultaneously. The system ensures that sub-windows are neither too large nor too small, maintaining readability and functionality.
19. The computer program product according to claim 15 , further comprising executing the application according to the transformed event data.
A system and method for processing event data in a computing environment involves transforming event data from a first format to a second format and executing an application based on the transformed event data. The transformation process includes analyzing the event data to identify relevant information, converting the data into a standardized format, and ensuring compatibility with the target application. The system may also include a data processing module that prepares the event data for transformation, a transformation engine that performs the conversion, and an execution module that runs the application using the transformed data. This approach addresses the challenge of integrating event data from diverse sources into a unified system, enabling seamless application execution. The method ensures that event data, regardless of its original format, is accurately interpreted and utilized by the application, improving system interoperability and efficiency. The transformation process may involve parsing, filtering, and reformatting the data to meet the requirements of the target application, ensuring reliable and consistent performance. The system is particularly useful in environments where multiple data sources generate events in different formats, requiring a standardized approach to processing and execution.
20. The computer program product according to claim 15 , wherein the application is accessible to the client device via a remote desktop application sharing system.
A system and method for remote application access involves a server hosting an application that is accessible to a client device through a remote desktop application sharing system. The server executes the application and provides a user interface for interaction, while the client device receives and displays the user interface via the remote desktop system. The system ensures that the application is executed on the server, with all processing and data handling occurring there, while the client device only renders the user interface. This approach allows users to access applications remotely without requiring local installation, reducing computational load on client devices and enabling access from various devices. The remote desktop system facilitates secure and efficient transmission of the user interface between the server and client, ensuring real-time interaction. The invention addresses the need for centralized application management, reduced client-side resource consumption, and seamless remote access to software applications.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
March 7, 2018
February 8, 2022
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.