Undo System with Session-Based Object and Document Reversion

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing content generation and editing software programs face user frustration due to the limitation of undoing changes in a linear reverse order, which can lead to dissatisfaction as users cannot selectively undo or redo specific actions on documents or objects.

Innovation Solution

Implementing a system that supports both document-based and object-based undo operations by storing sessions in a last in first out (LIFO) manner, allowing users to selectively undo and redo actions on documents or specific objects within the content, using an undo record and a redo record with percolation of session information.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a linear reverse order undo system is used, then the system structure is simple, but the user flexibility and satisfaction deteriorate

Engineering Contradiction:
Improveuser flexibilityVSAvoidsystem structure
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent segments the undo history into individual session records, each representing a discrete user action or group of related actions. This segmentation allows the system to treat each session as an independent unit that can be individually managed, enabling selective undo operations while maintaining a structured organization of the undo history.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension to the traditional linear undo stack by adding session-based organization. Instead of a simple one-dimensional stack, the system creates a two-dimensional structure where sessions are organized chronologically but can also be accessed and manipulated as discrete units, allowing users to navigate and undo specific sessions rather than being forced to undo in strict reverse order.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Ease of operation

If all changes are undone in reverse order, then the undo record management is simple, but the user control over specific actions is lost

Engineering Contradiction:
Improveuser controlVSAvoidundo record management
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent implements dynamic session management where the undo record can be actively manipulated. Sessions can be percolated (moved) to different positions in the undo stack based on user selection, and the system dynamically adjusts the undo history as sessions are added, removed, or repositioned. This dynamic behavior enables flexible user control while the underlying data structure manages the complexity of these operations.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces session records as intermediary elements between user actions and the underlying undo stack. These session records act as mediators that group related actions, provide a layer of abstraction for user interaction, and enable selective manipulation of multiple actions as a single unit. The session structure serves as an intermediary that simplifies user control while managing the complexity of individual action tracking.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If selective undo operations are enabled, then user satisfaction improves, but the system complexity increases

Engineering Contradiction:
Improveundo operation typesVSAvoidsystem implementation
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal session-based undo framework that supports multiple types of undo operations through a single unified structure. The same session record system handles both document-level undo (affecting entire documents) and object-level undo (affecting specific elements), as well as selective undo of individual sessions. This multi-functional approach enables versatile undo capabilities while avoiding the need for separate specialized systems for each operation type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11113458B2Concurrently supporting both document-based and object-based undo operations
Publication Date: 2021.09.07 ADOBE INC
  • US11113458B2 patent drawing
  • US11113458B2 patent drawing
  • US11113458B2 patent drawing

AI summary

During operation of a program, various different editing actions can be performed on data (e.g., image or video data) in a document. The data includes multiple objects, each of which is a user-selectable element of the data, such as a line, a shape, or a filter applied to the data. A record of actions taken on objects in the data is maintained, and the actions can be undone. A document-based undo operation can be performed, which undoes the last action performed in the document. An object-based undo can also be performed, which undoes the last action performed on a selected one or more objects in the document. A document-based redo operation can be performed, which redoes the last action undone in the document. An object-based redo can also be performed, which redoes the last action undone on a selected one or more objects in the document.