Browse Prior Art Database

BROWSER-BASED IMAGE EDITING USING MODULE IN NATIVE CODE ENVIRONMENT

IP.com Disclosure Number: IPCOM000237182D
Publication Date: 2014-Jun-06

Publishing Venue

The IP.com Prior Art Database

Abstract

An image editor program runs within a web browser program on a client. A secure environment such as a provided by a sandbox is enabled within the browser on the client to allow secure execution of native code, and a native code module for rendering images directly to a display screen runs within the sandbox. The native code module communicates with a module of the system such as a JavaScript module using a messaging interface, such that the JavaScript module can retrieve image data and metadata from backend servers and provide the data to the native code module for rendering to a display screen. The native code module can also provide preview image data to the JavaScript module for display. Some features can use the native code module to automatically generate a filter interface for newly-created filters.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 12% of the total text.

Page 01 of 13

BROWSER-BASED IMAGE EDITING USING MODULE IN NATIVE CODE ENVIRONMENT

ABSTRACT

An image editor program runs within a web browser program on a client. A secure environment such as a provided by a sandbox is enabled within the browser on the client to allow secure execution of native code, and a native code module for rendering images directly to a display screen runs within the sandbox. The native code module communicates with a module of the system such as a JavaScript module using a messaging interface, such that the JavaScript module can retrieve image data and metadata from backend servers and provide the data to the native code module for rendering to a display screen. The native code module can also provide preview image data to the JavaScript module for display. Some features can use the native code module to automatically generate a filter interface for newly-created filters.

BACKGROUND

Various techniques have been developed to securely run program code in a computer system. One type of security measure is known as "sandboxing" in which particular code to be isolated is run in a secure environment on the computer system known as a "sandbox" or "cage," and other code is run outside the sandbox. To protect the system environment outside the sandbox, code running in the sandbox is typically restricted in its use of computer resources such as data, functions, libraries, memory locations, etc. by having only specified access permissions to such resources. The sandbox can provide advantages such as the ability to test code before distribution, to test unverified code from unknown or unverified sources, and to run code (such as untrusted code from a third party) securely without possibility of the untrusted code interfering or interacting in unforeseen ways with the system environment and other code.

DESCRIPTION

The present disclosure describes a sandboxing environment allowing running of native code and in which one or more software processing modules are run. In described examples, an application program such as a browser provides a native code sandbox environment in which a native code module is run.


Page 02 of 13

    A browser can implement an image editing program for allowing a user to edit images. The image editing program runs within the browser such that the browser displays images which the user can edit with edit operations presented in a displayed user interface (UI). For example, a edit operation can be the application of a filter, which visually changes one or more pixel values of the image, such as color values, luminance values, etc. Typically the user can perform an edit operation by selecting an editing control available in the image editing program to modify the image. For example, the user can select and use edit operations displayed within the UI of the editing program using such controls as sliders, input fields, or other controls, and/or the user can use tools to modify particular portions of the image. For exam...