# US 11,907,646 B1 · HTML element based rendering supporting interactive objects

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,907,646 B1
- Document ID: US11907646B1
- Status: Granted
- Kind: B1
- Application number: 18/165,522
- Filed: 2023-02-07
- Granted: 2024-02-20
- Earliest claimed: 2023-02-07
- Assignees: Adobe Inc.
- Applicants: Adobe Inc.
- Inventors: Tarun Garg; Kerri Shotts; Aditya Vikram
- Web page: https://patentgrep.com/patent/US11907646B1

## CPC

- G06F 40/143: Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
- G06F 9/451: Execution arrangements for user interfaces
- G06F 16/986: {Document structures and storage, e.g. HTML extensions}
- G06F 40/154: Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method includes receiving a user event associated with content of an add-on for a web application displayed on a first user interface. The add-on is a non-native application executed using a hypertext markup language (HTML) element. The method further includes passing the user event to a document object model of the web application using a blank native element. The blank native element links the add-on to the document object model. The method further includes processing the user event using an HTML element renderer. The method further includes displaying updated content associated with the add-on based on the processed user event.

## Claims

### Claim 1

A method comprising:
receiving a user event associated with content of an add-on for a web application displayed on a first user interface, wherein the add-on is a non-native application executed using a hypertext markup language (HTML) element;
passing the user event to a document object model of the web application using a blank native element, wherein the blank native element links the add-on to the document object model;
processing the user event using an HTML element renderer; and
displaying updated content associated with the add-on based on the processed user event.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
receiving a selection of the add-on to be added to a digital canvas of the web application.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
passing a transform from the document object model to the HTML element, wherein the transform represents a stylistic modification to the HTML element responsive to the user event.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
displaying the add-on of the web application on a second user interface using a second HTML element, wherein the second HTML element executes the non-native application displayed on the second user interface; and
synchronizing the add-on of the web application on the second user interface using the document object model.

### Claim 5 (depends on 4)

The method of claim 4, wherein synchronizing the add-on of the web application on the second user interface using the document object model further comprises:
passing a transform from the document object model to the second HTML element, wherein the transform represents a stylistic modification to the second HTML element responsive to the user event.

### Claim 6 (depends on 4)

The method of claim 4, wherein synchronizing the add-on of the web application on the second user interface using the document object model further comprises:
passing a state of the HTML element displayed on the first user interface to the second HTML element displayed on the second user interface using the document object model.

### Claim 7 (depends on 4)

The method of claim 4, wherein synchronizing the add-on of the web application on the second user interface using the document object model further comprises:
displaying the updated content associated with the add-on based on the processed user event on the second user interface.

### Claim 8 (depends on 4)

The method of claim 4, wherein the first user interface executes on a first client device and the second user interface executes on a second client device, and wherein the synchronization of the add-on of the web application on the second user interface comprises matching the add-on displayed on the first user interface executed on the first client device and the add-on displayed on the second user interface executed on the second client device.

### Claim 9 (depends on 1)

The method of claim 1, wherein the user event is an interaction with the HTML element.

### Claim 10 (depends on 9)

The method of claim 9, wherein the interaction is at least one of: a mouse click, a mouse hover, a mouse compression, a mouse decompression, a haptic interaction, or a key press.

### Claim 11 (depends on 1)

The method of claim 1, wherein each HTML element of one or more HTML elements executes a non-native application isolated from a native application.

### Claim 12 (depends on 11)

The method of claim 11, wherein isolation from the native application includes execution of a non-native application script and storage of one or more objects of the non-native application in a data object.

### Claim 13

A non-transitory computer-readable medium storing executable instructions that, when executed by a processor, cause the processor to:
receive a user event associated with content of an add-on for a web application displayed on a first user interface, wherein the add-on is a non-native application executed using a hypertext markup language (HTML) element;
pass the user event to a document object model of the web application using a blank native element, wherein the blank native element links the add-on to the document object model;
process the user event using an HTML element renderer; and
display updated content associated with the add-on based on the processed user event.

### Claim 14 (depends on 13)

The non-transitory computer-readable medium of claim 13, storing instructions that further cause the processor to:
receive a selection of the add-on to be added to a digital canvas of the web application.

### Claim 15 (depends on 13)

The non-transitory computer-readable medium of claim 13, storing instructions that further cause the processor to:
pass a transform from the document object model to the HTML element, wherein the transform represents a stylistic modification to the HTML element responsive to the user event.

### Claim 16 (depends on 13)

The non-transitory computer-readable medium of claim 13, storing instructions that further cause the processor to:
display the add-on of the web application on a second user interface using a second HTML element, wherein the second HTML element executes the non-native application displayed on the second user interface; and
synchronize the add-on of the web application on the second user interface using the document object model.

### Claim 17

A system comprising:
a memory component; and
a processing device coupled to the memory component, the processing device to perform operations comprising:
receiving a request to execute a user selected add-on to be added to a digital canvas displayed on a user interface of a web application, wherein the add-on is executed using an HTML element;
allocating a data object in a document object model for the add-on; and
allocating a blank native element in the user interface to pass one or more user events to the data object.

### Claim 18 (depends on 17)

The system of claim 17, wherein the processing device is further configured to perform operations comprising:
receiving a user event associated with content of the add-on.

### Claim 19 (depends on 17)

The system of claim 17, wherein the processing device is further configured to perform operations comprising:
mapping a position of the add-on on the user interface displaying the digital canvas to the digital canvas by passing coordinates of the position of the add-on obtained by the blank native element to the data object in the document object model.

### Claim 20 (depends on 17)

The system of claim 17, wherein the data object maintains one or more attributes of the HTML element.
