Precomputed Focus Map for GUI Navigation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Modern graphical user interfaces (GUIs) experience perceivable delays in response times due to processing bandwidth constraints, particularly when using just-in-time focus algorithms that iterate through complex UI trees for directional navigation, resulting in stuttering and lag.
Innovation Solution
A computing device with a precomputed focus map that stores target identifiers for focusable GUI elements based on predetermined navigation directions, allowing for efficient focus navigation without the need for real-time bounding rectangle calculations, thereby reducing processing load.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If just-in-time focus algorithms are used to iterate through complex UI trees for directional navigation, then navigation accuracy is maintained, but response time delays and stuttering occur due to processing bandwidth constraints
Solution Approach 1:
The patent precomputes focus maps during UI construction or loading phases, storing the results in a data structure that enables O(1) lookup during navigation. This preliminary computation phase separates the heavy processing from the real-time navigation phase, allowing accurate navigation without real-time computation delays.
Solution Approach 2:
The patent divides the navigation system into two distinct components: a precomputation phase that builds focus maps offline, and a runtime phase that performs simple lookups. This segmentation allows the complex algorithmic work to be done when processing bandwidth is available, while navigation responds immediately using precomputed data.
2Speed
If precomputed focus maps are stored for each focusable GUI element indicating target identifiers for navigation directions, then navigation speed and responsiveness are enhanced, but device complexity increases
Solution Approach 1:
The patent creates a simplified copy of the UI hierarchy in the form of a focus map data structure. Rather than working with the full complexity of the actual UI tree during navigation, the system uses this precomputed copy that contains only the necessary navigation information (target identifiers for each direction), dramatically simplifying runtime operations.
Solution Approach 2:
The complex data structure construction is performed in advance during UI loading or construction phases. Once built, the focus map provides constant-time navigation lookups. The complexity is paid for once during setup, enabling fast navigation thereafter without continuously burdening the system with complex data structure management.
3Reliability
If real-time bounding rectangle calculations are performed during navigation, then dynamic UI changes are handled accurately, but processing load increases causing lag under limited processor bandwidth
Solution Approach 1:
The patent precomputes focus information including handling of dynamic UI elements during the offline phase. When the UI changes dynamically, the system can update or recompute focus maps without performing heavy calculations during user interaction, maintaining both accuracy and low processing load during navigation.
Solution Approach 2:
The patent extracts the computationally intensive bounding rectangle calculations and focus determination logic from the real-time navigation path and moves them to the precomputation phase. During actual navigation, the system only performs simple table lookups, eliminating processing load during user interaction while maintaining accurate handling of dynamic UI elements.
Data Source
AI summary
A computing device comprising a computer program executed on a processor of the computing device, including: a rendering module configured to read stored instructions to display a graphical user interface, the stored instructions including code for a plurality of focusable GUI elements, each focusable GUI element having an associated identifier, a focus map module configured to store a precomputed focus map including a focus map entry for each focusable GUI element indicating, for that focusable GUI element, for a plurality of predetermined navigation directions, a target identifier of a target focusable GUI element for that navigation direction, a user input module configured to receive a user input of a predetermined navigation direction, a focus module configured to query the precomputed focus map with an identifier of a currently focused GUI element and the predetermined navigation direction to retrieve and move focus to the target focusable GUI element.


