Acceleration of rendering of web-based content
First Claim
1. A method comprising:
- determining, by a computer, a plurality of rendering layers that describe relations of elements to be displayed for a page of content, wherein successive rendering layers are displayed on top of preceding rendering layers;
determining a first rendering layer in the plurality of rendering layers that is appropriate for hardware compositing support instead of software rendering based on visual characteristics of the elements for the first rendering layer, the visual characteristics defined by style descriptions referred to by the page of content;
generating rendered content for the first rendering layer in the plurality of rendering layers using the hardware compositing support instead of the software rendering;
determining each subsequent rendering layer in the plurality of rendering layers that overlaps the first rendering layer;
generating rendered content for each of the subsequent rendering layers that overlap the first rendering layer using the hardware compositing support instead of the software rendering, wherein the rendered content of each of the subsequent layers generated using the hardware compositing support is composited on top of the rendered content for the first rendering layer as indicated by the plurality of rendering layers; and
for each subsequent rendering layer that does not overlap the first rendering layer, generating rendered content using the software rendering instead of the hardware compositing support.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for hardware accelerated presentation of web pages on mobile computing devices are presented. A plurality of web pages may be received by a computing device capable of processing and displaying web pages using layout engines, hardware accelerated graphics application programming interfaces (APIs). Upon receipt of the web pages, the web pages may be divided into a plurality of rendering layers, based upon stylesheets of the web pages. An algorithm walks through rendering layers so as to select a plurality of layers that may receive compositing layers so as to take advantage of hardware acceleration when rendered. The web pages may be subsequently presented on a display of the mobile computing devices using remaining rendering layers and compositing layers. In this manner, visual representation of web content remains intact even when content which may not have been originally designed for use with layout engine may be displayed.
44 Citations
20 Claims
-
1. A method comprising:
-
determining, by a computer, a plurality of rendering layers that describe relations of elements to be displayed for a page of content, wherein successive rendering layers are displayed on top of preceding rendering layers; determining a first rendering layer in the plurality of rendering layers that is appropriate for hardware compositing support instead of software rendering based on visual characteristics of the elements for the first rendering layer, the visual characteristics defined by style descriptions referred to by the page of content; generating rendered content for the first rendering layer in the plurality of rendering layers using the hardware compositing support instead of the software rendering; determining each subsequent rendering layer in the plurality of rendering layers that overlaps the first rendering layer; generating rendered content for each of the subsequent rendering layers that overlap the first rendering layer using the hardware compositing support instead of the software rendering, wherein the rendered content of each of the subsequent layers generated using the hardware compositing support is composited on top of the rendered content for the first rendering layer as indicated by the plurality of rendering layers; and for each subsequent rendering layer that does not overlap the first rendering layer, generating rendered content using the software rendering instead of the hardware compositing support. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory machine readable storage medium storing executable instructions which when executed by a processor cause the processor to perform operations comprising:
-
determining a plurality of rendering layers that describe relations of elements to be displayed for a page of content, wherein successive rendering layers are displayed on top of preceding rendering layers; determining a first rendering layer in the plurality of rendering layers that is appropriate for hardware compositing support instead of software rendering based on visual characteristics of the elements for the first rendering layer, the visual characteristics defined by style descriptions referred to by the page of content; generating rendered content for the first rendering layer in the plurality of rendering layers using the hardware compositing support instead of the software rendering; determining each subsequent rendering layer in the plurality of rendering layers that overlaps the first rendering layer; generating rendered content for each of the subsequent layers that overlap the first rendering layer using the hardware compositing support instead of the software rendering, wherein the rendered content of each of the subsequent layers generated using the hardware compositing support is composited on top of the rendered content for the first rendering layer as indicated by the plurality of rendering layers; and for each subsequent rendering layer that does not overlap the first rendering layer, generating rendered content using the software rendering instead of the hardware compositing support. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A data processing system comprising:
-
means for determining, by a hardware device, a plurality of rendering layers that describe relations of elements to be displayed for a page of content, wherein successive rendering layers are displayed on top of preceding rendering layers; means for determining a first rendering layer in the plurality of rendering layers that is appropriate for hardware compositing support instead of software rendering based on visual characteristics of the elements for the first rendering layer, the visual characteristics defined by style descriptions referred to by the page of content; means for generating rendered content for the first rendering layer in the plurality of rendering layers using the hardware compositing support instead of the software rendering; means for determining each subsequent rendering layer in the plurality of rendering layers that overlaps the first rendering layer; means for generating rendered content for each of the subsequent layers that overlaps the first rendering layer using the hardware compositing support instead of the software rendering, wherein the rendered content of each of the subsequent layers generated using the hardware compositing support is composited on top of the first rendering layer as indicated by the plurality of rendering layers; and for each subsequent rendering layer that does not overlap the first rendering layer, means for generating rendered content using the software rendering instead of the hardware compositing support. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification