Out-of-Process UI Effects for Private User Input Feedback

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer input systems struggle to balance user privacy and efficiency, particularly in extended reality systems, as applications often have unrestricted access to user input data, compromising privacy and requiring significant processing resources.

Innovation Solution

Implementing a user input and rendering system that filters user input data and provides out-of-process effects, allowing trusted operating system vendors to manage user interactions without revealing preliminary user inputs to third-party applications, using customizable hover effects and shader processes to render feedback.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If applications have unrestricted access to user input data, then application functionality and responsiveness are improved, but user privacy is compromised

Engineering Contradiction:
Improveapplication responsivenessVSAvoiduser privacy
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The patent introduces an intermediary layer (the system process acting as a mediator) that sits between the user input system and the application. This intermediary receives user inputs, determines whether they correspond to UI elements, and selectively provides information to the application while maintaining privacy. The intermediary enables the application to respond to valid interactions without exposing the application to raw user input data, thus resolving the contradiction between responsiveness and privacy.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If a system process filters and manages user inputs centrally, then user privacy is protected, but processing overhead and system complexity increase

Engineering Contradiction:
Improveuser privacyVSAvoidsystem architecture
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent segments the input processing function into two distinct parts: the system process that handles filtering and privacy protection, and the application process that handles UI rendering and interaction logic. This segmentation allows the system to maintain centralized privacy protection while distributing the processing load, reducing the burden on any single component and managing overall system complexity.

Inventive Principle:
Principle #1Segmentation

3Ease of operation

If custom visual effects are rendered for each user interaction, then user feedback quality is improved, but processing resources and energy consumption increase

Engineering Contradiction:
Improveuser feedback qualityVSAvoidprocessing energy
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

The patent implements partial action by only rendering custom visual effects when user inputs actually correspond to UI elements. The system process performs hit testing to determine relevance, and effects are only generated for valid interactions. This avoids the excessive action of rendering effects for all inputs, thereby maintaining high-quality user feedback while reducing unnecessary processing and energy consumption.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20250377756A1Out-of-process custom effects for electronic devices
Publication Date: 2025.12.11 APPLE INC
  • US20250377756A1 patent drawing
  • US20250377756A1 patent drawing
  • US20250377756A1 patent drawing

AI summary

Out-of-process hit-testing can provide privacy in computer user input systems. In an aspect, an application specifies an effect definition for a preliminary interaction with a UI element of the application, the effect definition including customization parameters to generate the effect. When a user engages in a preliminary interaction with the UI element, the effect is generated and rendered according to the customization parameters, without providing a location of the user input to the application.