Task #2747

Improve user feedback in case of long computing or re-computing of a result from an Editor

Added by Sebastien Jacquot 9 months ago. Updated 8 months ago.

Status:New Start date:01/29/2020
Priority:Normal Due date:
Assignee:- % Done:

0%

Category:UI Spent time: -
Target version:TXM 0.8.2

Description

When computing or re-computing a complex result from an Editor, the job is ran as a cancelable background task.
The task is visible in the Eclipse progress view and in the Eclipse status bar progression area at bottom right corner.
Some console logs also alert the user a computing has been started (and ended).
Some messages may appears in the TXM status bar (bottom left corner) but it has not been generalized at this time (should be done in 0.8.1 or 0.8.2).
The result and editor as flagged as "Dirty", an asterisk is shown in the tree node label and the editor tab title, but only in not-auto-computing mode.
A blocker and an alert have also been added in the Editor to avoid parallel computing (see #2682).

Current state summary:

  • if a user changes some parameters of an editor and launch a new compute, it does nothing until the current computing has ended (except showing the console alert).
  • the end of a computing is shown to the user by 3 steps:
    • the console generally display "Terminated"
    • the Eclipse status bar progression area at bottom right corner disappears
    • the Editor result area is refreshed (e.g. the Table is filled/update or the Chart is drawn/updated)
  • the user can lose some works in the opened editor that will be modified when the current computing will be terminated
    • table sorting, rows/columns merge, etc.
  • the export command may fail or export an inappropriate result

The feedback for the computing process itself seems insufficient, especially in case of complex result long computing.

Possible and mixable solutions

  • disable some areas of the Editor when computing
    • disable the toolbar parameter widgets/compute button
    • disable the result area/chart area
  • hide some areas of the Editor when computing
    • hide the result area so the user directly shows the result became inconsistent
  • transform some widgets
    • hide the result area and show a loading animated icon
    • transform the icons of the tree node label and editor tab title to loading animated icons
  • block all the UI when computing and run the process in an AdvancedProgressionMonitorDialog (blocking modal progress dialog)

NOTES:

  • TXMResult store is computing state
  • TXMResult protects itself from parallel computing
  • hiding the result area will also fix some bugs leading to columns auto-resizement that can be slow and for some result is done each column, one by one
  • as for the AdvancedProgressionMonitorDialog the hiding may start with a delay, e.g. after 1 second of computing, so not complex results not provoke the hiding

Related issues

related to Bug #2879: The restarting engines command breaks the annotations sav... New 07/23/2020

History

#1 Updated by Sebastien Jacquot 9 months ago

  • Description updated (diff)

#2 Updated by Sebastien Jacquot 9 months ago

  • Category set to UI

#3 Updated by Sebastien Jacquot 9 months ago

  • Description updated (diff)

#4 Updated by Sebastien Jacquot 9 months ago

  • Description updated (diff)

#5 Updated by Matthieu Decorde 8 months ago

  • Target version changed from TXM 0.8.1 to TXM 0.8.2

#6 Updated by Sebastien Jacquot 8 months ago

  • Description updated (diff)

Also available in: Atom PDF