Persistent Viewport Architecture for Document Collaboration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-user collaboration environments, existing technologies fail to maintain the correct position of a passive user's viewport when a virtual document is updated by another user, leading to disruption and confusion as the viewed content appears to jump or become inaccessible.
Innovation Solution
The persistent viewports architecture identifies an element-of-interest in the content and uses it to recalculate and maintain the viewport's position, employing a reference element such as a paragraph, header, or image to ensure the element-of-interest remains visible within the viewport, even after document updates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Stability of the object's composition
If the viewport position is maintained using fixed coordinates, then the initial viewport position is stable, but the viewport becomes misaligned when the document is updated by another user
Solution Approach 1:
The system pre-establishes a mapping between content elements and viewport positions. When the document is updated, this pre-established mapping allows the viewport to quickly reposition to the correct location without manual intervention or complex real-time calculations.
Solution Approach 2:
The system continuously monitors document updates and automatically adjusts viewport positions based on the updated content structure. This feedback mechanism ensures the viewport remains aligned with the intended content even after modifications by other users.
2Reliability
If the viewport automatically jumps to updated content, then content visibility is maintained, but user focus and context are disrupted
Solution Approach 1:
Instead of moving the entire viewport or forcing a global view change, the system makes localized adjustments only to the extent necessary to maintain visibility of the element-of-interest. This preserves the user's overall context and focus while ensuring critical content remains visible.
3Reliability
If the system tracks and recalculates viewport position based on content updates, then element-of-interest visibility is maintained, but system complexity increases
Solution Approach 1:
The system introduces content elements as intermediary references between the viewport and the document content. By tracking these intermediary elements rather than directly managing complex coordinate transformations, the system simplifies viewport position management while maintaining reliability.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A persistent viewports architecture that provides a persistent and correctly-positioned viewport to a user when a collaboration document is being updated. The architecture identifies and utilizes a user's element-of-interest in content of the document to determine and recalculate the correct position of the user viewport. The architecture tracks a topmost element of the content (or section of content) from the viewport and employs the topmost element as a reference element. The topmost element can be one or more of a paragraph, a header, string of text, and an image. When the underlying document is to be updated, the viewport performs a lookup of reference element, and after finding the reference element, adjusts the X and Y offsets of the viewport so that the element-of-interest is inside the viewport.