Touch Support for Remoted Applications via Input Translation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing technologies face challenges in supporting touch input for remoted applications, particularly in handling touch input data across devices due to proprietary operating system memory access issues, leading to processing obstacles and compatibility problems.

Innovation Solution

The solution involves providing touch input data to a server executing the remoted application by using hooks to access private address spaces, simulating touch input events using a driver, and converting touch input into mouse events for legacy applications, allowing for local or remote processing based on latency and user preferences, and translating input types and sources to ensure compatibility.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If touch input data is passed from client device to server device for processing, then touch support for remoted applications is enabled, but processing obstacles occur due to inability to store touch input data in non-public memory areas of the operating system

Engineering Contradiction:
Improvetouch input supportVSAvoidprocessing reliability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces an intermediary component (hook or driver) that mediates between the touch input data and the application's access to it. This intermediary translates or adapts the touch input data format and storage location, allowing the application to access touch data without directly accessing the non-public memory areas of the operating system. The intermediary acts as a bridge that resolves the compatibility issue between proprietary memory access restrictions and the need for touch input processing.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If touch input data is stored in non-public memory area accessible only by operating system, then operating system can manage touch input, but applications cannot retrieve touch input data using operating system functions

Engineering Contradiction:
Improveoperating system touch input managementVSAvoidapplication touch data access
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The hook or driver serves as an intermediary that sits between the operating system's non-public memory area and the application. It intercepts operating system functions related to touch input and provides alternative access paths for applications. The intermediary translates application requests into operating system-compatible operations, enabling applications to retrieve touch input data without directly accessing restricted memory areas.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent employs copying by creating a duplicate or representation of the touch input data in a location that both the operating system and application can access. Instead of allowing direct access to the original touch input data in non-public memory, the system creates a copy in a shared or public memory area that applications can retrieve using standard operating system functions, while the original data remains in its secure location.

Inventive Principle:
Principle #26Copying

3Speed

If touch input is processed locally on client device, then latency is reduced, but server cannot process touch input for remoted application

Engineering Contradiction:
Improvetouch input response speedVSAvoidremote application processing
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent segments the touch input processing into multiple components: local preprocessing on the client device and remote processing on the server device. The client device performs initial processing of touch input data (such as formatting and basic validation) to reduce latency, while the server device performs application-specific processing. This segmentation allows both local speed and remote application processing to coexist by dividing the processing workload across different locations.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11494010B2Touch support for remoted applications
Publication Date: 2022.11.08 CITRIX SYSTEMS INC
  • US11494010B2 patent drawing
  • US11494010B2 patent drawing
  • US11494010B2 patent drawing

AI summary

Touch, multi-touch, gesture, flick and stylus pen input may be supported for remoted applications. For example, a touch capable client device may receive touch input for a remoted application executing on a server. In such an instance, the touch input may be transmitted to the server for processing. The server may modify the application display or the application functionality and provide an output to the client device. In some arrangements, the output may correspond to instructions for modifying a display of the application while in other examples, the output may correspond to an image of the changed application display. Additionally or alternatively, determining a functionality associated with touch input may be performed based on user definitions, user preferences, server definitions (e.g., operating system on the server), client definitions (e.g., operating system on the client) and the like and/or combinations thereof. Aspects may also include resolving latency and enhancing user experience.