UI Layout Negotiation via Asynchronous Rendering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing user interface (UI) systems in electronic devices often stall during layout negotiation between rendering engines and applications, leading to delayed rendering and compromised user experience, especially when multiple applications interact.
Innovation Solution
A method and system where UI client engines negotiate layout parameters independently, allowing the UI rendering engine to continue rendering without stalling, by transmitting negotiated layout parameters as a component tree structure for display, enabling seamless interaction among multiple applications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If the rendering engine waits for layout negotiation to complete before rendering the UI, then the layout can be determined accurately, but the rendering process stalls and user experience deteriorates
Solution Approach 1:
The patent segments the layout negotiation process from the rendering process by introducing a separate layout manager that handles negotiation independently. The rendering engine can proceed with rendering while the layout manager continues to negotiate layout parameters with applications, eliminating the stall condition while maintaining layout accuracy through asynchronous coordination.
Solution Approach 2:
The layout manager performs preliminary layout negotiation actions before rendering is needed. By pre-negotiating and determining layout parameters in advance, the system ensures that when rendering occurs, the layout is already determined, allowing the rendering engine to proceed without stalling while still achieving accurate layout.
2Adaptability or versatility
If multiple applications negotiate layout parameters simultaneously, then the UI can accommodate all applications, but the negotiation process causes rendering delays
Solution Approach 1:
The patent segments the negotiation process by introducing a dedicated layout manager that handles layout parameter negotiation independently from the rendering engine. Multiple applications can negotiate their layout requirements simultaneously with the layout manager without blocking the rendering engine, thus maintaining multi-application adaptability while reducing the time loss associated with sequential negotiation.
Solution Approach 2:
The layout manager acts as an intermediary between multiple applications and the rendering engine. It collects layout requirements from all applications, resolves conflicts and determines final layout parameters, and then communicates with the rendering engine. This intermediary role allows simultaneous multi-application negotiation without causing rendering delays, as the rendering engine only needs to receive the final negotiated layout.
Data Source
AI summary
A method of determining a layout of a user interface (UI) that composites elements from a plurality of applications, each of the plurality of applications having a respective UI client engine, the method comprising: receiving, from one of a plurality of UI client engines, a request to change layout parameters; negotiating, between the plurality of UI client engines, changes to the layout parameters to determine negotiated layout parameters; and transmitting the negotiated layout parameters to a UI rendering engine, as a component tree structure, for rendering to a display. A UI system, electronic device and computer program product are also provided.


