US20160117289A1 - Modifying Native Document Comments In A Preview - Google Patents
Modifying Native Document Comments In A Preview Download PDFInfo
- Publication number
- US20160117289A1 US20160117289A1 US14/523,756 US201414523756A US2016117289A1 US 20160117289 A1 US20160117289 A1 US 20160117289A1 US 201414523756 A US201414523756 A US 201414523756A US 2016117289 A1 US2016117289 A1 US 2016117289A1
- Authority
- US
- United States
- Prior art keywords
- native
- document
- preview
- comment
- rendering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G06F17/212—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/106—Display of layout of documents; Previewing
-
- G06F17/241—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/169—Annotation, e.g. comment data or footnotes
Definitions
- This disclosure relates generally to previewing documents, and in particular to viewing and editing comments in a document from a document preview.
- these native documents may include word processing documents, spreadsheets, presentations, and source code, which are typically modified by dedicated, full-service applications on a client device.
- the preview may often omit important aspects of the document, such as comments or other supplemental data about the document that are typically not directly reflected in the text or other content of the document.
- the document preview system identifies the location in the rendered preview that corresponds to portions of the native document. To identify these locations, the document preview system inserts a rendering marker associated with each native object in the native document.
- a native object is an object in the native application representing a particular piece of renderable content, such as a character, word, sentence, or paragraph.
- each word is identified by the document preview system as a native object.
- the rendering marker is a unique marker that identifies the associated native object, and does not affect the display of the document when rendered.
- the rendering marker is a hypertext link associated with each native object. The rendering marker is added to the native document for each native object.
- the document preview system When the native document is rendered into a preview, the document preview system generates an identification of each rendering marker and a bounding area for the location at which the rendering marker appears in the preview.
- the bounding area indicates a page and pixel locations of the rendering marker.
- the rendering marker and bounding area are associated with the native objects in a mapping table. By identifying a bounding area for each rendering marker (and associated native object), the document preview system can identify a relationship between locations in the rendered preview and native objects in the native document.
- the document preview system accesses the native document and obtains comments in the native document along with the native objects associated with the comments.
- the document preview system identifies the bounding areas of the native objects associated with each comment and combines them to identify a bounding area of the comment.
- the document preview system provides the preview for display by the client device and provides the comments and associated comment bounding areas to correctly place the comments in the user interface display of the client device.
- the user's selection of content is provided to the document preview system.
- the selection of content is analyzed to determine bounding areas of the user's selection, and matched with the bounding areas in the mapping table to identify the native objects designated by the selection.
- the added comment is inserted in the native document designating the native objects indicated by the user selection.
- FIG. 1 shows an embodiment of an environment for presenting document previews using a task management with a content management system.
- FIG. 2 shows components of document preview system according to one embodiment.
- FIG. 3 shows an example native document shown in a display and an associated mapping table.
- FIG. 4 shows an example method for identifying the location of native objects in a preview and displaying and modifying comments for a native document.
- these native documents may include word processing documents, spreadsheets, presentations, and source code, which are typically created and modified by dedicated, full-service applications on a client device.
- These native documents may be stored as a local copy of the document on a client device 110 or may be processed at client device 110 and remotely stored at the document preview system 100 .
- the document preview system 100 provides a preview of the document to client devices 110 for display to a user.
- the preview is a display of the document and may be in another file format from the native document, such as a picture, image, Portable Document Format (pdf), or similar that may more readily be viewed by various client devices, but typically does not permit modification of the underlying native document.
- PDF Portable Document Format
- Client Device 110 may be any suitable computing device for viewing and modifying documents stored at document preview system 100 .
- Client devices 110 may also synchronize documents that are locally stored at client device 110 with document preview system 100 .
- documents are synchronized, changes or modifications to a document at client device 110 are transmitted to document preview system 100 and reflected in the document stored at document preview system 100 and vice versa.
- documents are not synchronized.
- features of document preview system 100 are performed at client device 110 to provide previews to other client devices 110 , without a centralized document preview system 100 . Examples of devices include desktop and laptop computers, hand-held mobile devices, tablet computers, and other computing devices. The operation of client device 110 in various embodiments is further described below.
- Client devices 110 also execute various applications and other executable programs. As shown in FIG. 1 , client device 110 A includes a content browser application and client device 110 B includes a native document application, though client devices 110 may include either or both of these applications, among other applications and features of client device 110 .
- a content browser accesses previews of a native document from document preview system 100 and displays the previews to the user.
- a typical content browser is a web browser that interprets a mark-up language to provide a display to the user, though various other types of browsers may be implemented as the content browser.
- the content browser may also receive instructions from the document preview system for displaying comments to a user within the preview of a document. The instructions may indicate content for the comment along with portions of the preview at which to display the comment.
- the content browser may display an interface for a user to insert and modify comments to a preview.
- the content browser receives a selection of a portion of the preview from the user, along with a comment.
- the selection of a portion of the preview and the comment are transmitted to the document preview system 100 for incorporation into the native document.
- Each client device 110 communicates with document preview system 100 through network 120 .
- Network 120 is any suitable network and may include local networks, corporate networks, global networks, and any combination of these.
- client devices 110 communicate via a wired or wireless communication network to a local network service provider, and communicate with document preview system 100 through the Internet.
- client devices 110 A and 110 B communicate directly with one another without network 120 as indicated in FIG. 1 by dashed lines.
- devices 110 may communicate via a wired or wireless connection, such as wirelessly via a Bluetooth connection or a wired connection via a Universal Serial Bus (USB).
- USB Universal Serial Bus
- Document preview system 100 stores documents and provides document previews to client devices 110 .
- Document preview system 100 provides a preview of a native document to permit an operator of client devices 110 to view the preview prior to accessing and modifying the native document.
- the document preview system 100 provides comments present in the native document at the location of the comments in the native document and permit users to modify and add comments to the native document from a preview interface.
- the document preview system 100 stores modifications and additions to the comments in the native document, such that these modifications are viewable and modifiable by a native document application that accesses the native document.
- FIG. 2 shows components of document preview system 100 according to one embodiment.
- Document preview system 100 includes various modules and data stores for providing previews to client devices 110 .
- Such modules include document mapping module 200 , document rendering module 210 , document preview module 220 , document manipulation interface 230 , and synchronization module 240 .
- Data stores included in this embodiment are native document store 250 , mapping table store 260 , and preview store 270 .
- document preview system 100 identifies native objects within the native document and identifies bounding areas for the preview of the native document that are associated with the native objects.
- a native object is an object in the native application representing a particular piece of renderable content, such as a character, word, sentence, or paragraph.
- Various embodiments may implement a different granularity for identifying native objects in the same type of document. For example, a word processing document may be treated as having native objects at any of these levels, including characters or words. Identification of the bounding areas for the native objects is further described below.
- Native document store 250 stores native documents.
- Mapping table store 260 maintains, for native documents in the native document store, a mapping table that associates native objects in the native document with a bounding area of the preview of a document.
- Preview store 270 stores generated previews of a native document.
- Document manipulation interface 230 is an interface for manipulating and parsing native documents in native document store 250 .
- the native documents are maintained in proprietary formats or otherwise difficult to directly manipulate.
- the document manipulation interface 230 provides an application programming interface for various modules to interact with the native documents 250 .
- Document manipulation interface 230 receives instructions to insert rendering markers, identify comments, and insert comments into a native document.
- the synchronization module 240 manages this synchronization.
- synchronization module 240 requests an update from document mapping module 200 to the previews of the document stored in preview store 270 , and disseminates the modified document to the client devices 110 synchronized to the native document.
- the modifications to the native document may be performed by a user modifying a comment via the document preview module 220 or may be received from a client device 110 that has made a change to the native document.
- Document mapping module 200 generates the mapping table for a native document. To generate the mapping table, the document mapping module analyzes the native document to identify native objects within the native document. The document mapping module applies a parser that interprets the formatting of the native document to identify the portions of a native document that are displayed to a user. For example, the parsing performed by document mapping module 200 may disregard font sizes, styles, and other formatting to identify the native objects, such as characters or words, within the document. In some embodiments the mapping module identifies certain formatting as a native object, for example a line or page break.
- the document mapping module 200 After identifying the native objects in a native document, the document mapping module 200 generates a rendering marker for each native object in the document.
- the rendering marker is a unique marker that identifies the associated native object and does not affect the display of the document when rendered.
- a rendering marker in one embodiment is a hyperlink with a unique code for the native object it is applied to, and in another embodiment the rendering marker may be a flag, header, or special instruction applicable to document rendering module 210 .
- the document mapping module inserts each rendering marker in the native document at the location of each native object.
- document mapping module 200 provides the native document to document rendering module 210 to be rendered into a preview.
- Document rendering module 210 generates previews of a native document by converting the native document into preview format, such as PDF document.
- the document rendering module 210 also generates various metadata about the rendered document. This metadata includes an identification of bounding areas for each of the rendering markers in the native document. The bounding areas identify, on the rendered preview, the location of each rendering marker, for example by page and pixel range.
- the generated preview may be stored in the preview store 270 and the resulting metadata and bounding areas with associated rendering markers provided to document mapping module 200 .
- Document mapping module 200 stores the bounding areas for each rendering marker in the mapping table for the native document.
- the preview is generated as a PDF document and includes identification of the bounding areas for the hyperlinks (rendering markers) as an output of the document mapping module 200 .
- FIG. 3 shows an example native document shown in a display 300 and an associated mapping table 310 .
- Native application display 300 shows the document as it would be displayed in the native document application executing on client device 110 .
- example mapping table 310 is generated.
- each word in the native document is treated as a native object.
- a rendering marker is inserted as a unique link associated with the individual native objects in the native application.
- document rendering module 210 generates the bounding areas for each rendering marker which are associated with the rendering marker and native object in the mapping table 310 .
- This mapping table 310 provides an association between a native object as stored in the native document and a bounding area that is shown actually to a user in the preview.
- the bounding areas account for formatting, page changes, and other effects of converting the native document to a preview that may not have been accounted for if the native document were viewed in a native application.
- document preview module 220 provides previews native documents to client devices 110 along with any comments associated with the native document.
- document preview module 220 retrieves a rendered preview from preview store 270 .
- Document preview module 220 accesses document manipulation interface 230 to retrieve any comments stored in the native document.
- the comments retrieved from document manipulation interface 230 include an identification of the native objects to which each comment applies. As an example, the comment may indicate that it applies to a particular group of words.
- Document preview module 220 determines the native objects associated with the comment and identifies the bounding areas associated with the comment by joining the bounding areas of the related native objects in the mapping table.
- the document preview module 220 provides the preview along with the bounding area of the comment to the requesting client device 110 for display to the user.
- the requesting client device 110 receives the preview and comment from document preview module 220 and provides the preview to the operator of client device 110 .
- Client device 110 also displays the comment at the location indicated by the bounding area for the content provided by document preview module 220 .
- Client device 110 may also provide the user with an interface to add a comment to the preview.
- the user selects a portion of the preview and adds a comment to the preview using the interface.
- client device 110 provides the comment and selection to document preview module 220 .
- Document preview module 220 identifies native objects corresponding to the comment by matching location information of the selection with native objects in the mapping table. The native objects that have matching bounding areas to the selection of comment area are selected as the native objects associated with the comment.
- document preview module 220 provides document manipulation interface 230 with an identification of the native objects and the comment, and document manipulation interface 230 inserts the comment in the native document.
- the native document is updated by the addition of the comment and the synchronization module 240 propagates the change to any synchronized client devices 110 .
- a user may modify or add a comment on a preview through a content browser, and the modification to the comment may appear in the native document application on another client device 110 .
- This permits quick and easy review and modification of comments through the content browser interface without requiring a user to load a native document application, while permitting users of native document applications to see comments made by a content browser directly in the native document application.
- FIG. 4 shows an example method for identifying the location of native objects in a preview and displaying and modifying comments for a native document. This method may be performed by various components of document preview system 100 as described above.
- document preview system 100 receives 400 a request to preview a native document from client device 110 .
- unique rendering markers are inserted 410 in the native document at each of the native objects.
- a preview of the native document is rendered 420 with the rendering markers, which generates a set of bounding areas associated with each rendering market.
- Document preview system 100 identifies 430 bounding areas for the native objects as the bounding areas for the rendering markers associated with the native objects.
- document preview system 100 determines 435 whether there are pre-existing comments to be rendered with the preview. When there are no comments, the preview of the native document is provided 460 to the requesting client device 110 .
- document preview system 100 determines 440 which native objects are associated with the comment and the associated bounding areas from those native objects. Next, the comment location for the comment is determined by joining the bounding areas of the native objects associated with the comment. The native objects and comment locations are determined 440 , 450 for each of the comments and the preview of the native document is provided 460 with the comments and associated comment locations.
- some of these steps may be performed prior to receipt of a request for a preview in order to reduce the processing performed between a request and display of a preview.
- These steps may be performed, for example, on a periodic basis (e.g., once per day), or in response to a modification of the native document. For example, the unique rendering markers are inserted, a preview generated, and bounding areas for comments may be identified prior to the request for the preview.
- Client device 110 may also provide a user's request to add a comment to the native document, which is received 470 by document preview system 100 .
- Document preview system 100 identifies 480 native objects corresponding to the request by identifying the bounding areas of the native objects that match the selected location in the preview in the request to add a comment. Using the identified native objects, document preview system 100 inserts 490 the comment in the native document at the native objects identified for the request.
- document rendering module 200 creates a copy of the native document when inserting the rendering markers and the document preview to determining bounding areas associated with the rendering markers.
- the original native document is not altered in identifying the bounding areas associated with the native objects.
- two previews may be generated, one preview that incorporates the rendering markers to generate the bounding areas for the native objects, and one preview that is based on the unmodified native document.
- the original native document is not modified by the identification of bounding areas.
- document preview system 100 removes the rendering objects from the native document prior to synchronizing the native document with client devices 110 or otherwise permitting users to retrieve the native document.
- Embodiments of the invention may also relate to an apparatus for performing the operations herein.
- This apparatus may be specially constructed for the required purposes, and/or it may comprise a general-purpose computing device selectively activated or reconfigured by a computer program stored in the computer.
- a computer program may be stored in a non-transitory, tangible computer readable storage medium, or any type of media suitable for storing electronic instructions, which may be coupled to a computer system bus.
- any computing systems referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.
- Embodiments of the invention may also relate to a product that is produced by a computing process described herein.
- a product may comprise information resulting from a computing process, where the information is stored on a non-transitory, tangible computer readable storage medium and may include any embodiment of a computer program product or other data combination described herein.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Document Processing Apparatus (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
- This disclosure relates generally to previewing documents, and in particular to viewing and editing comments in a document from a document preview.
- Users store documents online where they may be accessible by many different users and by different devices. When users browse to view these documents, it is typically difficult to review or comment on a document unless the user downloads and accesses the document using a native application on the user's device. As examples, these native documents may include word processing documents, spreadsheets, presentations, and source code, which are typically modified by dedicated, full-service applications on a client device. In addition, when systems provide previews to a user of a document, the preview may often omit important aspects of the document, such as comments or other supplemental data about the document that are typically not directly reflected in the text or other content of the document.
- A document preview system stores documents in their native format and provides previews of the native documents in a non-native form, such as in a web browser, to users accessing the document preview system. The document preview system permits users to view comments and other markups to the document at the correct location in the preview, and permits users to add and modify comments in the preview. These added and modified comments are inserted in the native document at the location highlighted by a user in the preview.
- To correctly display and insert comments to the document, the document preview system identifies the location in the rendered preview that corresponds to portions of the native document. To identify these locations, the document preview system inserts a rendering marker associated with each native object in the native document. A native object is an object in the native application representing a particular piece of renderable content, such as a character, word, sentence, or paragraph. In one embodiment, each word is identified by the document preview system as a native object. The rendering marker is a unique marker that identifies the associated native object, and does not affect the display of the document when rendered. In one embodiment, the rendering marker is a hypertext link associated with each native object. The rendering marker is added to the native document for each native object. When the native document is rendered into a preview, the document preview system generates an identification of each rendering marker and a bounding area for the location at which the rendering marker appears in the preview. The bounding area indicates a page and pixel locations of the rendering marker. The rendering marker and bounding area are associated with the native objects in a mapping table. By identifying a bounding area for each rendering marker (and associated native object), the document preview system can identify a relationship between locations in the rendered preview and native objects in the native document.
- When a client device requests a preview of a native document in a browser, the document preview system accesses the native document and obtains comments in the native document along with the native objects associated with the comments. The document preview system identifies the bounding areas of the native objects associated with each comment and combines them to identify a bounding area of the comment. The document preview system provides the preview for display by the client device and provides the comments and associated comment bounding areas to correctly place the comments in the user interface display of the client device. When a user interacts with the preview to add a comment, the user's selection of content is provided to the document preview system. The selection of content is analyzed to determine bounding areas of the user's selection, and matched with the bounding areas in the mapping table to identify the native objects designated by the selection. The added comment is inserted in the native document designating the native objects indicated by the user selection.
-
FIG. 1 shows an embodiment of an environment for presenting document previews using a task management with a content management system. -
FIG. 2 shows components of document preview system according to one embodiment. -
FIG. 3 shows an example native document shown in a display and an associated mapping table. -
FIG. 4 shows an example method for identifying the location of native objects in a preview and displaying and modifying comments for a native document. - The figures depict various embodiments of the present invention for purposes of illustration only. One skilled in the art will readily recognize from the following discussion that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles of the invention described herein.
-
FIG. 1 shows an embodiment of an environment for presenting document previews using a task management with a content management system.FIG. 1 includesclient devices document preview system 100, andnetwork 120. Two client devices 110 are shown only for purpose of illustration; in practice any number of client devices may be present in the environment. Similarly, other modules or components described and illustrated throughout may include single or multiple instances as appropriate to the needs of the implementer and without loss of generality.Document preview system 100 stores native documents and provides native documents and previews of the native documents to client devices 110. A native document is a document created using an application program and that uses particular formatting and rendering functionality of the application program for its display on client device 110. As examples, these native documents may include word processing documents, spreadsheets, presentations, and source code, which are typically created and modified by dedicated, full-service applications on a client device. These native documents may be stored as a local copy of the document on a client device 110 or may be processed at client device 110 and remotely stored at thedocument preview system 100. Thedocument preview system 100 provides a preview of the document to client devices 110 for display to a user. The preview is a display of the document and may be in another file format from the native document, such as a picture, image, Portable Document Format (pdf), or similar that may more readily be viewed by various client devices, but typically does not permit modification of the underlying native document. - Client Device 110 may be any suitable computing device for viewing and modifying documents stored at
document preview system 100. Client devices 110 may also synchronize documents that are locally stored at client device 110 withdocument preview system 100. When documents are synchronized, changes or modifications to a document at client device 110 are transmitted todocument preview system 100 and reflected in the document stored atdocument preview system 100 and vice versa. In some embodiments ofdocument preview system 100 and the document preview techniques disclosed herein, documents are not synchronized. In other embodiments, features ofdocument preview system 100 are performed at client device 110 to provide previews to other client devices 110, without a centralizeddocument preview system 100. Examples of devices include desktop and laptop computers, hand-held mobile devices, tablet computers, and other computing devices. The operation of client device 110 in various embodiments is further described below. - Client devices 110 also execute various applications and other executable programs. As shown in
FIG. 1 ,client device 110A includes a content browser application andclient device 110B includes a native document application, though client devices 110 may include either or both of these applications, among other applications and features of client device 110. A content browser accesses previews of a native document fromdocument preview system 100 and displays the previews to the user. A typical content browser is a web browser that interprets a mark-up language to provide a display to the user, though various other types of browsers may be implemented as the content browser. The content browser may also receive instructions from the document preview system for displaying comments to a user within the preview of a document. The instructions may indicate content for the comment along with portions of the preview at which to display the comment. In addition, the content browser may display an interface for a user to insert and modify comments to a preview. To add a comment, the content browser receives a selection of a portion of the preview from the user, along with a comment. The selection of a portion of the preview and the comment are transmitted to thedocument preview system 100 for incorporation into the native document. - The native document application creates and modifies native documents on client device 110. Such native document applications include productivity applications such as word processing applications, spreadsheet applications, presentation applications, as well as other applications according to the type of native document modified by client device 110, such as a development platform for modifying source code. When client device 110 is synchronized with
document preview system 100, modifications to the native document performed by the native document application are synchronized to documentpreview system 100. - Each client device 110 communicates with
document preview system 100 throughnetwork 120.Network 120 is any suitable network and may include local networks, corporate networks, global networks, and any combination of these. In typical configurations, client devices 110 communicate via a wired or wireless communication network to a local network service provider, and communicate withdocument preview system 100 through the Internet. In certain configurations,client devices network 120 as indicated inFIG. 1 by dashed lines. For example, devices 110 may communicate via a wired or wireless connection, such as wirelessly via a Bluetooth connection or a wired connection via a Universal Serial Bus (USB). -
Document preview system 100 stores documents and provides document previews to client devices 110.Document preview system 100 provides a preview of a native document to permit an operator of client devices 110 to view the preview prior to accessing and modifying the native document. In the preview of the native document, thedocument preview system 100 provides comments present in the native document at the location of the comments in the native document and permit users to modify and add comments to the native document from a preview interface. Thedocument preview system 100 stores modifications and additions to the comments in the native document, such that these modifications are viewable and modifiable by a native document application that accesses the native document. -
FIG. 2 shows components ofdocument preview system 100 according to one embodiment.Document preview system 100 includes various modules and data stores for providing previews to client devices 110. Such modules includedocument mapping module 200,document rendering module 210,document preview module 220,document manipulation interface 230, andsynchronization module 240. Data stores included in this embodiment arenative document store 250,mapping table store 260, andpreview store 270. To correctly display and receive comments to a native document,document preview system 100 identifies native objects within the native document and identifies bounding areas for the preview of the native document that are associated with the native objects. A native object is an object in the native application representing a particular piece of renderable content, such as a character, word, sentence, or paragraph. Various embodiments may implement a different granularity for identifying native objects in the same type of document. For example, a word processing document may be treated as having native objects at any of these levels, including characters or words. Identification of the bounding areas for the native objects is further described below. -
Native document store 250 stores native documents.Mapping table store 260 maintains, for native documents in the native document store, a mapping table that associates native objects in the native document with a bounding area of the preview of a document.Preview store 270 stores generated previews of a native document. -
Document manipulation interface 230 is an interface for manipulating and parsing native documents innative document store 250. In certain embodiments, the native documents are maintained in proprietary formats or otherwise difficult to directly manipulate. Thedocument manipulation interface 230 provides an application programming interface for various modules to interact with thenative documents 250.Document manipulation interface 230, for example, receives instructions to insert rendering markers, identify comments, and insert comments into a native document. - In embodiments where the native documents are synchronized with client devices 110, the
synchronization module 240 manages this synchronization. When modifications are made to a native document innative document store 250,synchronization module 240 requests an update fromdocument mapping module 200 to the previews of the document stored inpreview store 270, and disseminates the modified document to the client devices 110 synchronized to the native document. The modifications to the native document may be performed by a user modifying a comment via thedocument preview module 220 or may be received from a client device 110 that has made a change to the native document. -
Document mapping module 200 generates the mapping table for a native document. To generate the mapping table, the document mapping module analyzes the native document to identify native objects within the native document. The document mapping module applies a parser that interprets the formatting of the native document to identify the portions of a native document that are displayed to a user. For example, the parsing performed bydocument mapping module 200 may disregard font sizes, styles, and other formatting to identify the native objects, such as characters or words, within the document. In some embodiments the mapping module identifies certain formatting as a native object, for example a line or page break. - After identifying the native objects in a native document, the
document mapping module 200 generates a rendering marker for each native object in the document. The rendering marker is a unique marker that identifies the associated native object and does not affect the display of the document when rendered. For example, a rendering marker in one embodiment is a hyperlink with a unique code for the native object it is applied to, and in another embodiment the rendering marker may be a flag, header, or special instruction applicable to documentrendering module 210. The document mapping module inserts each rendering marker in the native document at the location of each native object. - Next,
document mapping module 200 provides the native document to documentrendering module 210 to be rendered into a preview.Document rendering module 210 generates previews of a native document by converting the native document into preview format, such as PDF document. When thedocument rendering module 210 performs the rendering, thedocument rendering module 210 also generates various metadata about the rendered document. This metadata includes an identification of bounding areas for each of the rendering markers in the native document. The bounding areas identify, on the rendered preview, the location of each rendering marker, for example by page and pixel range. The generated preview may be stored in thepreview store 270 and the resulting metadata and bounding areas with associated rendering markers provided to documentmapping module 200.Document mapping module 200 stores the bounding areas for each rendering marker in the mapping table for the native document. In one embodiment that uses hyperlinks as the rendering marker, the preview is generated as a PDF document and includes identification of the bounding areas for the hyperlinks (rendering markers) as an output of thedocument mapping module 200. -
FIG. 3 shows an example native document shown in adisplay 300 and an associated mapping table 310.Native application display 300 shows the document as it would be displayed in the native document application executing on client device 110. When the native document is mapped bydocument mapping module 200 anddocument rendering module 210, example mapping table 310 is generated. In this example, each word in the native document is treated as a native object. A rendering marker is inserted as a unique link associated with the individual native objects in the native application. When the preview is rendered,document rendering module 210 generates the bounding areas for each rendering marker which are associated with the rendering marker and native object in the mapping table 310. This mapping table 310 provides an association between a native object as stored in the native document and a bounding area that is shown actually to a user in the preview. In addition, since the bounding areas are generated by the rendering process, the bounding areas account for formatting, page changes, and other effects of converting the native document to a preview that may not have been accounted for if the native document were viewed in a native application. - Returning to
FIG. 2 ,document preview module 220 provides previews native documents to client devices 110 along with any comments associated with the native document. When a user requests a preview of a native document,document preview module 220 retrieves a rendered preview frompreview store 270.Document preview module 220 accessesdocument manipulation interface 230 to retrieve any comments stored in the native document. The comments retrieved fromdocument manipulation interface 230 include an identification of the native objects to which each comment applies. As an example, the comment may indicate that it applies to a particular group of words.Document preview module 220 determines the native objects associated with the comment and identifies the bounding areas associated with the comment by joining the bounding areas of the related native objects in the mapping table. Thedocument preview module 220 provides the preview along with the bounding area of the comment to the requesting client device 110 for display to the user. The requesting client device 110 receives the preview and comment fromdocument preview module 220 and provides the preview to the operator of client device 110. Client device 110 also displays the comment at the location indicated by the bounding area for the content provided bydocument preview module 220. - Client device 110 may also provide the user with an interface to add a comment to the preview. The user selects a portion of the preview and adds a comment to the preview using the interface. When the comment is received, client device 110 provides the comment and selection to document
preview module 220.Document preview module 220 identifies native objects corresponding to the comment by matching location information of the selection with native objects in the mapping table. The native objects that have matching bounding areas to the selection of comment area are selected as the native objects associated with the comment. To incorporate the comment,document preview module 220 providesdocument manipulation interface 230 with an identification of the native objects and the comment, anddocument manipulation interface 230 inserts the comment in the native document. The native document is updated by the addition of the comment and thesynchronization module 240 propagates the change to any synchronized client devices 110. In this way, a user may modify or add a comment on a preview through a content browser, and the modification to the comment may appear in the native document application on another client device 110. This permits quick and easy review and modification of comments through the content browser interface without requiring a user to load a native document application, while permitting users of native document applications to see comments made by a content browser directly in the native document application. -
FIG. 4 shows an example method for identifying the location of native objects in a preview and displaying and modifying comments for a native document. This method may be performed by various components ofdocument preview system 100 as described above. Initially,document preview system 100 receives 400 a request to preview a native document from client device 110. Next, unique rendering markers are inserted 410 in the native document at each of the native objects. Then, a preview of the native document is rendered 420 with the rendering markers, which generates a set of bounding areas associated with each rendering market.Document preview system 100 identifies 430 bounding areas for the native objects as the bounding areas for the rendering markers associated with the native objects. Prior to sending a preview for the user,document preview system 100 determines 435 whether there are pre-existing comments to be rendered with the preview. When there are no comments, the preview of the native document is provided 460 to the requesting client device 110. - When there are comments in the native document,
document preview system 100 determines 440 which native objects are associated with the comment and the associated bounding areas from those native objects. Next, the comment location for the comment is determined by joining the bounding areas of the native objects associated with the comment. The native objects and comment locations are determined 440, 450 for each of the comments and the preview of the native document is provided 460 with the comments and associated comment locations. - In other embodiments, some of these steps may be performed prior to receipt of a request for a preview in order to reduce the processing performed between a request and display of a preview. These steps may be performed, for example, on a periodic basis (e.g., once per day), or in response to a modification of the native document. For example, the unique rendering markers are inserted, a preview generated, and bounding areas for comments may be identified prior to the request for the preview.
- Client device 110 may also provide a user's request to add a comment to the native document, which is received 470 by
document preview system 100.Document preview system 100 identifies 480 native objects corresponding to the request by identifying the bounding areas of the native objects that match the selected location in the preview in the request to add a comment. Using the identified native objects,document preview system 100inserts 490 the comment in the native document at the native objects identified for the request. - In one embodiment,
document rendering module 200 creates a copy of the native document when inserting the rendering markers and the document preview to determining bounding areas associated with the rendering markers. In this embodiment, the original native document is not altered in identifying the bounding areas associated with the native objects. In this embodiment, two previews may be generated, one preview that incorporates the rendering markers to generate the bounding areas for the native objects, and one preview that is based on the unmodified native document. In this embodiment, the original native document is not modified by the identification of bounding areas. In another embodiment,document preview system 100 removes the rendering objects from the native document prior to synchronizing the native document with client devices 110 or otherwise permitting users to retrieve the native document. - The foregoing description of the embodiments of the invention has been presented for the purpose of illustration; it is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Persons skilled in the relevant art can appreciate that many modifications and variations are possible in light of the above disclosure.
- Some portions of this description describe the embodiments of the invention in terms of algorithms and symbolic representations of operations on information. These algorithmic descriptions and representations are commonly used by those skilled in the data processing arts to convey the substance of their work effectively to others skilled in the art. These operations, while described functionally, computationally, or logically, are understood to be implemented by computer programs or equivalent electrical circuits, microcode, or the like. Furthermore, it has also proven convenient at times, to refer to these arrangements of operations as modules, without loss of generality. The described operations and their associated modules may be embodied in software, firmware, hardware, or any combinations thereof
- Any of the steps, operations, or processes described herein may be performed or implemented with one or more hardware or software modules, alone or in combination with other devices. In one embodiment, a software module is implemented with a computer program product comprising a computer-readable medium containing computer program code, which can be executed by a computer processor for performing any or all of the steps, operations, or processes described.
- Embodiments of the invention may also relate to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, and/or it may comprise a general-purpose computing device selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a non-transitory, tangible computer readable storage medium, or any type of media suitable for storing electronic instructions, which may be coupled to a computer system bus. Furthermore, any computing systems referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.
- Embodiments of the invention may also relate to a product that is produced by a computing process described herein. Such a product may comprise information resulting from a computing process, where the information is stored on a non-transitory, tangible computer readable storage medium and may include any embodiment of a computer program product or other data combination described herein.
- Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the invention be limited not by this detailed description, but rather by any claims that issue on an application based hereon. Accordingly, the disclosure of the embodiments of the invention is intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims.
Claims (19)
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/523,756 US9535883B2 (en) | 2014-10-24 | 2014-10-24 | Modifying native document comments in a preview |
AU2015334603A AU2015334603B2 (en) | 2014-10-24 | 2015-08-31 | Modifying native document comments in a preview |
PCT/IB2015/056609 WO2016063147A1 (en) | 2014-10-24 | 2015-08-31 | Modifying native document comments in a preview |
JP2017522026A JP6527227B2 (en) | 2014-10-24 | 2015-08-31 | Modify native document comments in preview |
EP15760293.9A EP3210131A1 (en) | 2014-10-24 | 2015-08-31 | Modifying native document comments in a preview |
US15/389,331 US10198406B2 (en) | 2014-10-24 | 2016-12-22 | Modifying native document comments in a preview |
JP2019090039A JP6606304B2 (en) | 2014-10-24 | 2019-05-10 | Fixed native document comments in preview |
AU2019226143A AU2019226143B2 (en) | 2014-10-24 | 2019-09-03 | Modifying native document comments in a preview |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/523,756 US9535883B2 (en) | 2014-10-24 | 2014-10-24 | Modifying native document comments in a preview |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/389,331 Continuation US10198406B2 (en) | 2014-10-24 | 2016-12-22 | Modifying native document comments in a preview |
Publications (2)
Publication Number | Publication Date |
---|---|
US20160117289A1 true US20160117289A1 (en) | 2016-04-28 |
US9535883B2 US9535883B2 (en) | 2017-01-03 |
Family
ID=54065423
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/523,756 Active US9535883B2 (en) | 2014-10-24 | 2014-10-24 | Modifying native document comments in a preview |
US15/389,331 Active US10198406B2 (en) | 2014-10-24 | 2016-12-22 | Modifying native document comments in a preview |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/389,331 Active US10198406B2 (en) | 2014-10-24 | 2016-12-22 | Modifying native document comments in a preview |
Country Status (5)
Country | Link |
---|---|
US (2) | US9535883B2 (en) |
EP (1) | EP3210131A1 (en) |
JP (2) | JP6527227B2 (en) |
AU (2) | AU2015334603B2 (en) |
WO (1) | WO2016063147A1 (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190179876A1 (en) * | 2017-12-12 | 2019-06-13 | Google Llc | Managing comments on binary files preview view in a cloud-based environment |
US10339211B1 (en) * | 2016-05-31 | 2019-07-02 | Google Llc | Systems and methods for synchronizing comments to an electronic document across platforms |
US20190332231A1 (en) * | 2018-04-27 | 2019-10-31 | Dropbox, Inc. | Dynamic preview in a file browser interface |
US20200412682A1 (en) * | 2019-06-25 | 2020-12-31 | International Business Machines Corporation | Feedback enabled network curation of relevant content thread |
US10956652B2 (en) * | 2015-04-27 | 2021-03-23 | Microsoft Technology Licensing, Llc | Support for non-native file types in web application environment |
US11151086B2 (en) | 2018-04-27 | 2021-10-19 | Dropbox, Inc. | Comment previews displayed in context within content item |
US11249950B2 (en) | 2018-04-27 | 2022-02-15 | Dropbox, Inc. | Aggregated details displayed within file browser interface |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10437588B1 (en) * | 2018-05-11 | 2019-10-08 | Sap Se | Smart system for auto-signing, managing and, making recommendations for source code comments |
Family Cites Families (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6266683B1 (en) * | 1997-07-24 | 2001-07-24 | The Chase Manhattan Bank | Computerized document management system |
JP3622503B2 (en) * | 1998-05-29 | 2005-02-23 | 株式会社日立製作所 | Feature character string extraction method and apparatus, similar document search method and apparatus using the same, storage medium storing feature character string extraction program, and storage medium storing similar document search program |
JP3696745B2 (en) * | 1999-02-09 | 2005-09-21 | 株式会社日立製作所 | Document search method, document search system, and computer-readable recording medium storing document search program |
US6551357B1 (en) | 1999-02-12 | 2003-04-22 | International Business Machines Corporation | Method, system, and program for storing and retrieving markings for display to an electronic media file |
US20060031746A1 (en) * | 1999-11-11 | 2006-02-09 | Toepfer John R | Publishing architecture system and method |
US6898411B2 (en) * | 2000-02-10 | 2005-05-24 | Educational Testing Service | Method and system for online teaching using web pages |
US7191394B1 (en) * | 2000-06-21 | 2007-03-13 | Microsoft Corporation | Authoring arbitrary XML documents using DHTML and XSLT |
JP4342753B2 (en) * | 2001-08-10 | 2009-10-14 | 株式会社リコー | Document search apparatus, document search method, program, and computer-readable storage medium |
US20030145310A1 (en) * | 2001-10-31 | 2003-07-31 | Metacyber. Net. | Computer memory structure for storing original source information and associated interpretative information |
JP3857663B2 (en) * | 2002-04-30 | 2006-12-13 | 株式会社東芝 | Structured document editing apparatus, structured document editing method and program |
WO2003094040A1 (en) | 2002-05-03 | 2003-11-13 | Thomson Licensing S.A. | Ebook hyperlink editor |
US20040139400A1 (en) * | 2002-10-23 | 2004-07-15 | Allam Scott Gerald | Method and apparatus for displaying and viewing information |
US7278168B1 (en) | 2002-11-27 | 2007-10-02 | Adobe Systems Incorporated | Dynamic enabling of functionality in electronic document readers |
JP3828499B2 (en) * | 2003-03-10 | 2006-10-04 | 株式会社東芝 | Document editing apparatus, document editing method, and document editing program |
JP2005018390A (en) * | 2003-06-26 | 2005-01-20 | Hitachi Ltd | Description language converting method and execution system, and processing program |
US7502812B2 (en) * | 2003-08-21 | 2009-03-10 | Microsoft Corporation | Electronic ink processing |
CA2470118C (en) * | 2003-08-21 | 2012-01-03 | Microsoft Corporation | Electronic ink processing |
CN100559364C (en) * | 2003-08-21 | 2009-11-11 | 微软公司 | Be used for method that first data structure and second data structure are coordinated mutually |
US7616333B2 (en) * | 2003-08-21 | 2009-11-10 | Microsoft Corporation | Electronic ink processing and application programming interfaces |
US20060031755A1 (en) * | 2004-06-24 | 2006-02-09 | Avaya Technology Corp. | Sharing inking during multi-modal communication |
US7284192B2 (en) * | 2004-06-24 | 2007-10-16 | Avaya Technology Corp. | Architecture for ink annotations on web documents |
US8418051B1 (en) * | 2004-08-06 | 2013-04-09 | Adobe Systems Incorporated | Reviewing and editing word processing documents |
US7561755B2 (en) * | 2004-09-22 | 2009-07-14 | Google Inc. | Image distortion for content security |
US20060106822A1 (en) * | 2004-11-17 | 2006-05-18 | Chao-Chun Lee | Web-based editing system of compound documents and method thereof |
US20110219003A1 (en) * | 2005-10-20 | 2011-09-08 | Jiandong Bi | Determination of passages and formation of indexes based on paragraphs |
JP2007316873A (en) * | 2006-05-24 | 2007-12-06 | Canon Inc | Content server and layout system |
US7917848B2 (en) * | 2006-06-14 | 2011-03-29 | Family Learn LLC | Online publishing tools |
US8868499B2 (en) * | 2007-08-15 | 2014-10-21 | Salesforce.Com, Inc. | Method and system for pushing data to subscribers in an on-demand service |
US8266524B2 (en) * | 2008-02-25 | 2012-09-11 | Microsoft Corporation | Editing a document using a transitory editing surface |
US20090254529A1 (en) * | 2008-04-04 | 2009-10-08 | Lev Goldentouch | Systems, methods and computer program products for content management |
US8032832B2 (en) * | 2008-04-21 | 2011-10-04 | Microsoft Corporation | Non-linear presentation canvas |
US9176943B2 (en) | 2008-05-12 | 2015-11-03 | Adobe Systems Incorporated | Comment presentation in electronic documents |
AU2009201514A1 (en) * | 2008-07-11 | 2010-01-28 | Icyte Pty Ltd | Annotation system and method |
US8352857B2 (en) * | 2008-10-27 | 2013-01-08 | Xerox Corporation | Methods and apparatuses for intra-document reference identification and resolution |
US20100268694A1 (en) * | 2009-04-17 | 2010-10-21 | Laurent Denoue | System and method for sharing web applications |
US20100331041A1 (en) * | 2009-06-26 | 2010-12-30 | Fuji Xerox Co., Ltd. | System and method for language-independent manipulations of digital copies of documents through a camera phone |
US20110173188A1 (en) * | 2010-01-13 | 2011-07-14 | Oto Technologies, Llc | System and method for mobile document preview |
WO2011130235A1 (en) * | 2010-04-12 | 2011-10-20 | Google Inc. | Rich browser-based word processor |
EP2583204A4 (en) * | 2010-06-15 | 2014-03-12 | Thomson Reuters Scient Inc | System and method for citation processing, presentation and transport for validating references |
US20130031455A1 (en) * | 2011-07-28 | 2013-01-31 | Peter Griffiths | System for Linking to Documents with Associated Annotations |
US20130031453A1 (en) * | 2011-07-28 | 2013-01-31 | Peter Griffiths | System for Annotating Documents Served by a Document System without Functional Dependence on the Document System |
US20130031454A1 (en) * | 2011-07-28 | 2013-01-31 | Peter Griffiths | System for Programmatically Accessing Document Annotations |
JP6059488B2 (en) * | 2012-09-28 | 2017-01-11 | 理想科学工業株式会社 | Print control device |
US9946691B2 (en) | 2013-01-30 | 2018-04-17 | Microsoft Technology Licensing, Llc | Modifying a document with separately addressable content blocks |
US10445063B2 (en) * | 2013-09-17 | 2019-10-15 | Adobe Inc. | Method and apparatus for classifying and comparing similar documents using base templates |
US20150206447A1 (en) * | 2014-01-23 | 2015-07-23 | Zyante, Inc. | System and method for authoring content for web viewable textbook data object |
-
2014
- 2014-10-24 US US14/523,756 patent/US9535883B2/en active Active
-
2015
- 2015-08-31 WO PCT/IB2015/056609 patent/WO2016063147A1/en active Application Filing
- 2015-08-31 AU AU2015334603A patent/AU2015334603B2/en active Active
- 2015-08-31 JP JP2017522026A patent/JP6527227B2/en active Active
- 2015-08-31 EP EP15760293.9A patent/EP3210131A1/en not_active Withdrawn
-
2016
- 2016-12-22 US US15/389,331 patent/US10198406B2/en active Active
-
2019
- 2019-05-10 JP JP2019090039A patent/JP6606304B2/en active Active
- 2019-09-03 AU AU2019226143A patent/AU2019226143B2/en active Active
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10956652B2 (en) * | 2015-04-27 | 2021-03-23 | Microsoft Technology Licensing, Llc | Support for non-native file types in web application environment |
US10339211B1 (en) * | 2016-05-31 | 2019-07-02 | Google Llc | Systems and methods for synchronizing comments to an electronic document across platforms |
US10867125B2 (en) | 2016-05-31 | 2020-12-15 | Google Llc | Systems and methods for synchronizing comments to an electronic document across platforms |
US20190179876A1 (en) * | 2017-12-12 | 2019-06-13 | Google Llc | Managing comments on binary files preview view in a cloud-based environment |
US11295060B2 (en) * | 2017-12-12 | 2022-04-05 | Google Llc | Managing comments on binary files preview view in a cloud-based environment |
US20220335206A1 (en) * | 2017-12-12 | 2022-10-20 | Google Llc | Managing comments on binary files preview view in a cloud-based environment |
US20190332231A1 (en) * | 2018-04-27 | 2019-10-31 | Dropbox, Inc. | Dynamic preview in a file browser interface |
US11112948B2 (en) * | 2018-04-27 | 2021-09-07 | Dropbox, Inc. | Dynamic preview in a file browser interface |
US11151086B2 (en) | 2018-04-27 | 2021-10-19 | Dropbox, Inc. | Comment previews displayed in context within content item |
US11249950B2 (en) | 2018-04-27 | 2022-02-15 | Dropbox, Inc. | Aggregated details displayed within file browser interface |
US11860823B2 (en) | 2018-04-27 | 2024-01-02 | Dropbox, Inc. | Aggregated details displayed within file browser interface |
US20200412682A1 (en) * | 2019-06-25 | 2020-12-31 | International Business Machines Corporation | Feedback enabled network curation of relevant content thread |
Also Published As
Publication number | Publication date |
---|---|
JP2017538193A (en) | 2017-12-21 |
US20170103045A1 (en) | 2017-04-13 |
JP2019169169A (en) | 2019-10-03 |
JP6606304B2 (en) | 2019-11-13 |
WO2016063147A1 (en) | 2016-04-28 |
US10198406B2 (en) | 2019-02-05 |
US9535883B2 (en) | 2017-01-03 |
AU2019226143B2 (en) | 2019-10-03 |
AU2015334603B2 (en) | 2019-08-01 |
AU2019226143A1 (en) | 2019-09-26 |
AU2015334603A1 (en) | 2017-06-15 |
JP6527227B2 (en) | 2019-06-05 |
EP3210131A1 (en) | 2017-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2019226143B2 (en) | Modifying native document comments in a preview | |
US10572573B2 (en) | Modifying native documents with formulas in a preview | |
US10140263B2 (en) | System and method for generating task-embedded documents | |
US20090313579A1 (en) | Systems and methods involving favicons | |
US20120047423A1 (en) | Virtual html anchor | |
US20140281877A1 (en) | Website Excerpt Validation and Management System | |
EP2831775A1 (en) | Information processing terminal and method, and information management apparatus and method | |
WO2023155712A1 (en) | Page generation method and apparatus, page display method and apparatus, and electronic device and storage medium | |
US11321524B1 (en) | Systems and methods for testing content developed for access via a network | |
JP2008146585A (en) | Annotation management program, annotation management device, annotation edition program, and annotation edition device | |
US10063738B2 (en) | Digital content access using a machine-readable link | |
US11995129B2 (en) | System and method for annotating website content | |
TWI489370B (en) | System and method for rendering widget | |
US10261979B2 (en) | Method and apparatus for rendering a screen-representation of an electronic document | |
CN106484380B (en) | Method and device for generating product document | |
JP5477785B2 (en) | Formula display control apparatus, computer program, and program storage medium | |
CA3041224A1 (en) | System and method for on-the-fly conversion of non-accessible online documents to accessible documents | |
CN114912052A (en) | Webpage processing method and device | |
JP2010160771A (en) | Display system for web page browsing | |
NZ715377A (en) | Systems, methods, and interfaces for display of inline content and block level content on an access device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: DROPBOX, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:PAN, MATTEUS;GREZE, JEAN-DENIS;HORN, DANIEL;AND OTHERS;SIGNING DATES FROM 20150701 TO 20160617;REEL/FRAME:038978/0635 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT, NE Free format text: SECURITY INTEREST;ASSIGNOR:DROPBOX, INC.;REEL/FRAME:042254/0001 Effective date: 20170403 Owner name: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT, NEW YORK Free format text: SECURITY INTEREST;ASSIGNOR:DROPBOX, INC.;REEL/FRAME:042254/0001 Effective date: 20170403 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
AS | Assignment |
Owner name: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT, NEW YORK Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:DROPBOX, INC.;REEL/FRAME:055670/0219 Effective date: 20210305 |