Abstract:
A method can include receiving a static web application at a trusted server, validating assurance characteristics of the static web application, and upon successful validation of the static web application, providing access to the static web application via a URL that identifies the static web application at a trusted server location. The static web application, when executed on the browser running on the client device, can be granted at least one permission to utilize local resources of the client device during execution of the static web application by the browser. Upon receiving a change to an object of the static web application, the validating of the assurance characteristics of the static web application, as a whole, can be performed before the change to the object is made accessible via the URL.
Abstract:
A computer implemented method includes generating a first cryptographic hash based on at least one setting associated with an operating system at a first time, storing the first cryptographic hash as a first bit string, generating a second cryptographic hash as a second bit string, wherein the second cryptographic hash is based on the at least one setting associated with the operating system at a second time, determining that a setting associated with the operating system has changed and that the setting change was made outside of the operating system based on a comparison of the first and second bit strings, and if the setting change was made outside of the operating system, setting the setting to a default value.
Abstract:
According to one general aspect, a method may include executing, by a processor of a computing device, a web browser presentation environment. The method may also include presenting at least one web page within a context of the web browser presentation environment, wherein presenting within the web browser presentation environment includes maintaining a first presentation data structure that includes a web browser presentation data structure portion and a common presentation data structure portion. The method may further include receiving a request to move the presentation of the web page from the web browser presentation environment to an emulation-based presentation environment. The method may include moving the presentation of the web page from the web browser presentation environment to the emulation-based presentation environment, wherein moving includes maintaining a second presentation data structure that includes an emulation-based presentation data structure portion and the common data structure portion.
Abstract:
A method and system for providing cross system installation of applications, include providing for installation, via a server, a natively operating application coded only with web technologies, and providing for installation a single runtime environment that provides the natively operating application access to computer system-level services that are not available to web applications. The single runtime environment controls the installation and uninstallation of the natively operating application, and the natively operating application is configured to execute independent of a web browser.
Abstract:
Techniques are provided for determining a user of a computing device who is likely to be unsatisfied with a value of a setting of a program running on the computing device. First information is collected about the value of the setting from a first population of users who invoke a routine to automatically reset the value of the setting to a default value. Second information is collected about the value of the setting from a second population of users who do not invoke the routine. Based on a comparison of the first information and the second information, a determination is made that a user in the second population is likely to be unsatisfied with the value of the setting.
Abstract:
A computer-implemented method includes providing an online marketplace to developers of web applications that may be downloaded from the marketplace to a client computing device for execution by a browser executing on the client device and receiving a request from a party to the marketplace to list a proposed web application for sale in the marketplace. One or more processors of a computer system automatically determine the permissions requested by the proposed web application and automatically determine if the permissions match one or more predetermined permissions. If the permissions match one or more predetermined permissions, then the proposed application is flagged for a manual vetting process before listing the proposed application in the marketplace, and if they do not match, then the proposed application is listed in the marketplace without manual review of the application.
Abstract:
An extension schema validator may be executable within an extension process of an extension of a browser application, and may be configured to validate the extension with respect to an extension application program interface (API) that is provided in conjunction with the browser application for implementation of the extension. A browser schema validator may be executable within a browser process of the browser application, and may be configured to validate the extension with respect to the extension API. Successful validation of the extension by the extension schema validator prior to attempting validation of the extension by the browser schema validator may be required.
Abstract:
A digital marketplace stores an installable web application including a first packaged file including a manifest file and a web page. The digital marketplace receives a request for installation of the installable web application from a computing device. The digital marketplaces automatically determines a computing platform type of the computing device, based on the request, and automatically creates a version of an installation file for the installable web application based on the computing platform type. The version of the installation file includes a portion of the first packaged file. The version of the installation file is smaller than the first packaged file. The digital marketplace provides the version of the installation file to computing device.
Abstract:
A system and method include exposing, via an application programming interface, an advertising identifier to an online advertising network executing by at least one microprocessor of a computing device. The advertising identifier is associated with a user profile and is associated with a set of packaged web applications associated with the user profile. The system automatically restricts the set of packaged web applications from accessing the advertising identifier by sandboxing a process within each of the set of packaged web applications that utilizes the advertising identifier.
Abstract:
A content widget is created for an embedder that executes in a renderer process of a computer system. The content widget is configured to execute in a process that is separate from the renderer process and access a first data source that is isolated from the embedder. The content widget is configured to provide a representation of at least a portion of data from the first data source, and receive a selection of a first item corresponding to the representation. In response to receiving the selection, the content widget may retrieve the first item from the first data source, and in response to retrieving the first item, provide the first item to the embedder. The content widget may have one or more permissions that the embedder does not have, or the embedder may have one or more permissions that the content widget does not have.