Hardware Accelerated Scrolling Stopping Position Adjustment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Mobile devices experience jerky or unpredictable scrolling when attempting to halt the animation of scrollable lists due to delays in processing and graphics rendering, leading to an undesirable user experience.

Innovation Solution

A method that determines a screen distance adjustment value based on the current scroll rate and device load, allowing for smooth scrolling by calculating a stopping position that accounts for the delay in graphics processing unit updates, ensuring the list stops smoothly at the intended location.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If the scrollable list is displayed as an animated scrolling list with hardware acceleration, then the scrolling speed and fluidity are improved, but the stopping position becomes inaccurate and jerky due to GPU processing delays

Engineering Contradiction:
Improvescrolling speedVSAvoidstopping position accuracy
Core Design Contradiction:
SpeedVSMeasurement precision

Solution Approach 1:

The system performs preliminary actions by detecting the halting gesture early and calculating the adjusted stopping position in advance, before the GPU completes its rendering. This allows the CPU to prepare the corrected position data ahead of time, compensating for the GPU processing delay and ensuring accurate stopping without sacrificing scrolling speed.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If the system waits for the GPU to complete rendering before updating the stopping position, then the position accuracy is improved, but the scrolling appears jerky and the user experience deteriorates

Engineering Contradiction:
Improvestopping position accuracyVSAvoidscrolling smoothness
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The system implements feedback by continuously monitoring the GPU rendering status and dynamically adjusting the stopping position based on the current scroll rate and processing delays. This closed-loop approach ensures that the scrolling remains smooth while maintaining accurate stopping positions, as the system adapts to the actual rendering performance in real-time.

Inventive Principle:
Principle #23Feedback

3Device complexity

If the system calculates the stopping position without considering the current scroll rate, then the calculation simplicity is improved, but the stopping position becomes inaccurate due to variable scroll speeds

Engineering Contradiction:
Improvecalculation complexityVSAvoidstopping position accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The system applies parameter changes by incorporating the current scroll rate as a dynamic variable in the stopping position calculation. Instead of using a fixed calculation, the system adjusts the stopping position based on the actual scroll rate at the time of halting, ensuring accuracy across varying speeds while maintaining relatively simple calculation logic.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8504940B1Smooth hardware accelerated scrolling
Publication Date: 2013.08.06 GOOGLE LLC
  • US8504940B1 patent drawing
  • US8504940B1 patent drawing
  • US8504940B1 patent drawing

AI summary

Disclosed herein are methods and systems for displaying animated objects smoothly on a mobile device. A scrollable list may be displayed on a touch sensitive display device, and a user may make a gesture on the device to cause the list to appear as an animated scrolling list. The user may then make a halting gesture to cause the list to stop. While the list is animated, a screen distance adjustment value is calculated to determine the time taken for a command to be executed by a graphics processing unit. The list may then stop at a location corresponding to the a current position of the list and taking into account the screen distance adjustment value.