Systems and methods for hosted applications
AssigneeSweetLabs, Inc.
InventorsAdrian Bourke, Pawel Miskiewicz, Benjamin P. Morris, Stefano Bertacchi, Corey Gwin
Life of this patent
Estimating the term…
Abstract
Systems and methods for locally managing a user's interaction with content derived from web pages within the user interface of an application executing within a runtime provided by an application platform on a computing device in accordance with embodiments of the invention are disclosed. In many embodiments, a runtime provided by an application platform enables the execution of a non-natively implemented hosted application in which executing instructions in a scripting language within a background page control the downloading and modification of web content to create user interface pages for the hosted application.
Claims30
A computing device configured to execute a hosted application, comprising:
- a processor and storage, where an operating system is installed on the computing device that configures the processor to create a computing environment;
- an application platform application stored in the storage of the computing device, where the application platform application comprises:
- a rendering engine process configured to:
- render pages within the computing environment created by the operating system by interpreting instructions written in a rendering language;
- and
- implement a virtual machine configured to execute instructions written in a scripting language;
- and
- an integration process that enables instructions executing within the virtual machine to modify the computing environment;
- at least one hosted application comprising a background page file including instructions in the scripting language:
- wherein the virtual machine is configured to parse the instructions in the scripting language contained within the background page file to configure the processor to:
- download at least one remotely hosted file containing instructions in the rendering language for rendering a web page;
- build a document object model (DOM) based on at least the instructions in the at least one modified file;
- and
- modify the DOM in accordance with a predetermined DOM modification rule to create a modified DOM;
- and
- wherein the rendering engine process is configured to render a user interface page based on the DOM generated by the execution of the background page.
A method of executing a hosted application on a computing device, comprising:
- executing at least one hosted application comprising a background page file including instructions in the scripting language on a computing device, where the computing device comprises a processor and a storage containing:
- the background page;
- an operating system that configures the processor to create a computing environment;
- and
- an application platform application that comprises:
- a rendering engine process configured to:
- render pages within the computing environment created by the operating system by interpreting instructions written in a rendering language;
- and
- implement a virtual machine configured to execute instructions written in a scripting language;
- and
- an integration process that enables instructions executing within the virtual machine to modify the computing environment;
- parsing instructions in the scripting language contained within a background page file using the rendering engine process;
- downloading at least one remotely hosted file containing instructions in the rendering language for rendering web page using the rendering engine process based on instructions written in the scripting language within the background page;
- building a document object model (DOM) based on at least the instructions in the at least one modified file using the rendering engine process;
- modifying the DOM in accordance with a predetermined DOM modification rule to create a modified DOM based on instructions written in the scripting language within the background page using the rendering engine process;
- and
- rendering a user interface page based on the modified DOM using the rendering engine process.
A computing device configured to execute a hosted application, comprising:
- a processor and storage, where an operating system is installed on the computing device that configures the processor to create a computing environment;
- an application platform application stored in the storage of the computing device, where the application platform application comprises:
- a rendering engine process configured to:
- render pages within the computing environment created by the operating system by interpreting instructions written in a rendering language;
- and
- implement a virtual machine configured to execute instructions written in a scripting language;
- and
- an integration process that enables instructions executing within the virtual machine to modify the computing environment;
- at least one hosted application comprising:
- a background page file including instructions in the scripting language, where a portion of the instructions in the scripting language include logic to conduct page flow control;
- and
- an application manifest configured to bootstrap the application into the application platform created by the application platform application;
- wherein the virtual machine is configured to parse the instructions in the scripting language contained within the background page file to configure the processor to:
- download at least one remotely hosted file containing instructions in the rendering language for rendering a web page, where the at least one downloaded file comprises instructions written in the rendering language, a Cascading Style Sheet (CSS), and a resource locator indicating the location of a piece of content;
- modify instructions written in the rendering language within the at least one downloaded file in accordance with a predetermined page modification rule, where at least one of the modified instructions includes an iFrame tag;
- modify the Cascading Style Sheet (CSS) within the at least one downloaded file in accordance with a predetermined page modification rule;
- remove the resource locator from the at least one downloaded file;
- build a document object model (DOM) based on at least the instructions in the at least one modified file;
- and
- modify the DOM in accordance with a predetermined DOM modification rule to create a modified DOM based on instructions written in the scripting language within the background page;
- and
- wherein the rendering engine process is configured to render a user interface page based on the DOM generated by the execution of the background page, where the rendering of the user interface page comprises calling an application programming interface in the integration layer.
Dependencies are inferred from the claim text.