IP Library › Granted Patent US 10,664,404
Granted Patent B2
US 10,664,404 · App. 15/066,428 · Granted May 26, 2020

User interface state transitions

Inventors: Jianzhong Li (Shanghai, CN); Yonggao Pan (Shanghai, CN); Jing Zhao (Shanghai, CN); Shangtong Zhang (Shanghai, CN); Ke Lu (Shanghai, CN); Liangyi Zhang (Shanghai, CN)
Assignee: SAP SE
G06F12/0871G06F9/451G06F2212/604
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,664,404
App. No.
15/066,428
Granted
May 26, 2020
Kind
B2
Abstract

Methods and apparatus, including computer program products, are provided for monitoring user interface state transitions. In one aspect, there is provided a method. The method may include monitoring a plurality of operations performed at a user interface; recording, at a cache, the plurality of operations, each of the recorded plurality of operations having a predefined format including a value and a target; moving, in response to a first request to move to a prior state at the user interface, back in the cache to determine the prior state at the user interface; and moving, in response to a second request to move to a subsequent state at the user interface, forward in the cache to determine the subsequent state at the user interface. Related apparatus, systems, methods, and articles are also described.

Claims (33)

1. A method comprising:

monitoring, by a user interface controller, a plurality of user interface operations performed at a user interface, wherein the user interface controller comprises a plurality of event listeners, wherein each event listener of the plurality of event listeners is associated with a user interface element of the user interface, and wherein the monitoring comprises producing, by the plurality of event listeners and in response to state changes at each associated user interface element, the plurality of user interface operations;

recording, at a cache, the plurality of user interface operations, each of the recorded plurality of user interface operations having a predefined format including a value and a target;

receiving, at a user interface controller and from a remote server, an indication of a type of compression algorithm for compressing the plurality of user interface operations stored in the cache;

compressing, in response to the received indication, a first user interface operation of the plurality of user interface operations stored in the cache and a second, subsequent user interface operation of the plurality of user interface operations stored in the cache by deleting the first user interface operation when the first user interface operation does not affect a final value of a corresponding target;

moving, in response to a first request triggered by a first selection at the user interface to move to a prior display state at the user interface, back in the cache to determine a prior state for presentation at the user interface, wherein the prior state for presentation at the user interface comprises one of the plurality of user interface operations stored in the cache, and wherein the moving back in the cache to determine the prior state for presentation at the user interface occurs after the compressing; and

moving, in response to a second request triggered by a second selection at the user interface to move to a subsequent display state at the user interface, forward in the cache to determine a subsequent state for presentation at the user interface, wherein the subsequent state for presentation at the user interface comprises one of the plurality of user interface operations stored in the cache, and wherein the moving forward in the cache to determine the subsequent state for presentation at the user interface occurs after the compressing.

2. The method of claim 1 , wherein the user interface controller monitors the plurality of user interface operations being performed.

3. The method of claim 1 further comprising:

providing, by an event listener, the monitored plurality of user interface operations to the cache.

4. The method of claim 1 , wherein the cache comprises an array where the plurality of user interface operations are stored.

5. The method of claim 1 , wherein the target represents a user interface element, the value being entered into the user interface element.

6. A system comprising:

at least one processor; and

at least one memory including program code which when executed by the at least one processor causes operations comprising:

monitoring, by a user interface controller, a plurality of user interface operations performed at a user interface, wherein the user interface controller comprises a plurality of event listeners, wherein each event listener of the plurality of event listeners is associated with a user interface element of the user interface, and wherein the monitoring comprises producing, by the plurality of event listeners and in response to state changes at each associated user interface element, the plurality of user interface operations;

recording, at a cache, the plurality of user interface operations, each of the recorded plurality of user interface operations having a predefined format including a value and a target;

receiving, at a user interface controller and from a remote server, an indication of a type of compression algorithm for compressing the plurality of user interface operations stored in the cache;

compressing, in response to the received indication, a first user interface operation of the plurality of user interface operations stored in the cache and a second, subsequent user interface operation of the plurality of user interface operations stored in the cache by deleting the first user interface operation when the first user interface operation does not affect a final value of a corresponding target;

moving, in response to a first request triggered by a first selection at the user interface to move to a prior display state at the user interface, back in the cache to determine a prior state for presentation at the user interface, wherein the prior state for presentation at the user interface comprises one of the plurality of user interface operations stored in the cache, and wherein the moving back in the cache to determine the prior state for presentation at the user interface occurs after the compressing; and

moving, in response to a second request triggered by a second selection at the user interface to move to a subsequent display state at the user interface, forward in the cache to determine a subsequent state for presentation at the user interface, wherein the subsequent state for presentation at the user interface comprises one of the plurality of user interface operations stored in the cache, and wherein the moving forward in the cache to determine the subsequent state for presentation at the user interface occurs after the compressing.

7. The system of claim 6 , wherein the user interface controller monitors the plurality of user interface operations being performed.

8. The system of claim 6 further comprising:

providing, by an event listener, the monitored plurality of user interface operations to the cache.

9. The system of claim 6 , wherein the cache comprises an array where the plurality of user interface operations are stored.

10. The system of claim 6 , wherein the target represents a user interface element, the value being entered into the user interface element.

11. A non-transitory computer-readable medium including program code which, when executed by at least one processor, causes operations comprising:

monitoring, at a user interface controller, a plurality of user interface operations performed at a user interface, wherein the user interface controller comprises a plurality of event listeners, wherein each event listener of the plurality of event listeners is associated with a user interface element of the user interface, and wherein the monitoring comprises producing, by the plurality of event listeners and in response to state changes at each associated user interface element, the plurality of user interface operations;

recording, at a cache, the plurality of user interface operations, each of the recorded plurality of user interface operations having a predefined format including a value and a target;

receiving, at a user interface controller and from a remote server, an indication of a type of compression algorithm for compressing the plurality of user interface operations stored in the cache;

compressing, in response to the received indication, a first user interface operation of the plurality of user interface operations stored in the cache and a second, subsequent user interface operation of the plurality of user interface operations stored in the cache by deleting the first user interface operation when the first user interface operation does not affect a final value of a corresponding target;

moving, in response to a first request triggered by a first selection at the user interface to move to a prior display state at the user interface, back in the cache to determine a prior state for presentation at the user interface, wherein the prior state for presentation at the user interface comprises one of the plurality of user interface operations stored in the cache, and wherein the moving back in the cache to determine the prior state for presentation at the user interface occurs after the compressing; and

moving, in response to a second request triggered by a second selection at the user interface to move to a subsequent display state at the user interface, forward in the cache to determine a subsequent state for presentation at the user interface, wherein the subsequent state for presentation at the user interface comprises one of the plurality of user interface operations stored in the cache, and wherein the moving forward in the cache to determine the subsequent state for presentation at the user interface occurs after the compressing.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 14, 2016
From: LI, JIANZHONG; PAN, YONGGAO; ZHAO, JING; ZHANG, SHANGTONG; LU, KE; ZHANG, LIANGYI
To: SAP SE
Reel/Frame 037965/0935 →
Continuity (2)
Provisional Application 62291396 · Feb 4, 2016
Related Publication 20170228238A1 · Aug 10, 2017