Bug 157116 - Pre-calculating formulae as they are entered
Summary: Pre-calculating formulae as they are entered
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
7.4.7.2 release
Hardware: All All
: low enhancement
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: needsDevAdvice
Depends on:
Blocks: Cell-Formula
  Show dependency treegraph
 
Reported: 2023-09-06 11:18 UTC by Colin
Modified: 2023-09-27 04:28 UTC (History)
5 users (show)

See Also:
Crash report or crash signature:


Attachments
Screen Image Demo (21.92 KB, image/png)
2023-09-06 11:18 UTC, Colin
Details
GSheers (57.21 KB, image/png)
2023-09-07 07:18 UTC, Heiko Tietze
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Colin 2023-09-06 11:18:21 UTC
Description:
Google Sheets has adopted a procedure whereby formulae being entered into cells are interpreted on the fly, with results presented to the user immediately enough of the formula has been entered to provide a result.
This is extremely useful not just for indicating the anticipated results but also for simple real time tasks like "what's the time?" - as can be demonstrated by the attached screen image.
Could it be included in LO as an enhancement?

Steps to Reproduce:
See attached image

Actual Results:
Enhancement Request

Expected Results:
Enhancement Request


Reproducible: Always


User Profile Reset: No

Additional Info:
Version: 7.4.7.2 (x64) / LibreOffice Community
Build ID: 723314e595e8007d3cf785c16538505a1c878ca5
CPU threads: 4; OS: Windows 10.0 Build 19045; UI render: Skia/Raster; VCL: win
Locale: sv-SE (en_GB); UI: en-GB
Calc: threaded
Comment 1 Colin 2023-09-06 11:18:59 UTC
Created attachment 189388 [details]
Screen Image Demo
Comment 2 m_a_riosv 2023-09-06 15:51:24 UTC
Doesn't the function assistant do it?
On the input bar 'fx'
Comment 3 Colin 2023-09-06 16:03:32 UTC
(In reply to m.a.riosv from comment #2)
> Doesn't the function assistant do it?
> On the input bar 'fx'

That requires the user to invoke the assistant, select the function and then start entering the elements of the formula.

I find the assistant useful if I'm struggling with the syntax or even searching for the likely function and need to complete it to ascertain if it's even the one I'm interested in. Also, it needs to be reinvoked to gauge the progression of any amendments.

The Google sheet is instantly interactive and also reactivates if the user just starts to modify an existing formula.

More user-centric is the best way to describe it.
Comment 4 ady 2023-09-06 16:59:09 UTC
While typing-in a function, we (users) already have a tooltip (on the input box bar) suggesting possible functions. After the opening parenthesis, the tooltip helps with the arguments. IIRC, these tooltips can be configured (ON/OFF).

Adding yet another tooltip could be a plus to some users, but unwanted for others, depending on the combination of tooltips and location of them (e.g. input bar; near the cell,...). OTOH, showing the (future) result while typing-in a function/formula would require to introduce (at least) the non-optional arguments, so in some cases the tooltips would not be presented simultaneously.

Beware: the location of the newly-suggested tooltip (in relation to the cell) is very relevant. Just think about editing a formula in the input box bar vs. editing a cell by pressing F2 (which shows the current content spread around or near the cell itself).

In any case, there should be an option to either display it or not.
Comment 5 V Stuart Foote 2023-09-06 17:14:11 UTC
before going too far down this rabbit hole would like dev input as to amount of effort (i.e. would incremental value results during formula input even be available).
Comment 6 Colin 2023-09-06 17:47:35 UTC
(In reply to ady from comment #4)
> While typing-in a function, we (users) already have a tooltip (on the input
> box bar)

Which is often a yard away from the cell I'm working with

> After the opening parenthesis, the
> tooltip helps with the arguments. IIRC, these tooltips can be configured
> (ON/OFF).

I need to find and evaluate that facility but if it's in the input box bar then it's still potentially a yard away
 
> Adding yet another tooltip could be a plus to some users, but unwanted for
> others, depending on the combination of tooltips and location of them (e.g.
> input bar; near the cell,...). 

The Google one as - can be seen from the screen image - is directly in the line of sight which is what makes it so user-centric. We always run into the scenario where we are editing or inputing a formula and it obscures adjacent cells - sometimes we want to click the obscured cell as an input reference but just have to live with the fact that we can't always have everything we desire.

> OTOH, showing the (future) result while
> typing-in a function/formula would require to introduce (at least) the
> non-optional arguments, so in some cases the tooltips would not be presented
> simultaneously.

As identified  - Google only presents results when it's possible to provide them
> 
> Beware: the location of the newly-suggested tooltip (in relation to the
> cell) is very relevant. Just think about editing a formula in the input box
> bar vs. editing a cell by pressing F2 (which shows the current content
> spread around or near the cell itself).

If the user isn't a "touch typist" they are usually fixated on the keyboard and their target cell - which is conveniently accessible by double clicking that cell. Most users are "touch mouse proficient". If the feture is "switchable" then perhaps the toggle could also define the user's location preference for the tip.

Additionally, there already exists a bug report where tips don't always layer on top of everything. That would also need consideration.
 
> In any case, there should be an option to either display it or not.

I agree wholeheartedly
Comment 7 Colin 2023-09-06 19:13:35 UTC
(In reply to ady from comment #4)
> While typing-in a function, we (users) already have a tooltip (on the input
> box bar) suggesting possible functions. After the opening parenthesis, the
> tooltip helps with the arguments. IIRC, these tooltips can be configured
> (ON/OFF).
> 
I can't seem to find this. I can find extended tool tips but that only seems to cover the mouse hover tips. Could you give me a clue where to look? Thanks
Comment 8 ady 2023-09-06 20:22:33 UTC
(In reply to Colin from comment #7)
> (In reply to ady from comment #4)
> > While typing-in a function, we (users) already have a tooltip (on the input
> > box bar) suggesting possible functions. After the opening parenthesis, the
> > tooltip helps with the arguments. IIRC, these tooltips can be configured
> > (ON/OFF).
> > 
> I can't seem to find this. I can find extended tool tips but that only seems
> to cover the mouse hover tips. Could you give me a clue where to look? Thanks

The answer has at least 3 points.

On a new Calc, (with AutoInput set to ON):

A.1. Click on the input box (formula bar) (or on the "=" symbol on the formula bar).
A.2. Start typing-in the function "=SUM". You should see a tooltip suggesting possible functions, located near the *input box*.
A.3. Add the opening parenthesis, "=SUM(". The tooltip suggests arguments.
A.4. Press [ESC] twice (as we don't need to go further here).

Now click on some cell (in order to focus on it) that is more centered on the screen; cell E10 for instance.

B.1. Press F2 (or double click on the same cell E10), or directly start by typing-in the "=" symbol, in order to enter into cell's edit mode (and to introduce a formula).
B.2. Start typing-in the function "=SUM". You should see a tooltip suggesting possible functions, located near the *cell*.
B.3. Add the opening parenthesis, "=SUM(". The tooltip suggests arguments.
B.4. Press [ESC] twice (as we don't need to go further here).

Now go to menu Tools > AutoInput to set it to OFF. Then repeat the steps above (A and B); the tooltip should not be displayed this time.

So, again, the precise location of newly-suggested tooltips (or any other artifact) is relevant, and whether it is displayed should be configurable. Let's not forget that we (can) have other artifacts near or around each cell (comments/notes; formula indicator and hints; tooltips; trace arrows…) and editing "in-cell" is already a problem for some users.

(In reply to V Stuart Foote from comment #5)
> before going too far down this rabbit hole would like dev input as to amount
> of effort (i.e. would incremental value results during formula input even be
> available).

I agree; let's wait for some very relevant feedback/comments.
Comment 9 Colin 2023-09-07 04:42:43 UTC
(In reply to ady from comment #8)
> (In reply to Colin from comment #7)

> > I can't seem to find this. I can find extended tool tips but that only seems
> > to cover the mouse hover tips. Could you give me a clue where to look? Thanks
> 
> The answer has at least 3 points.
> 
> On a new Calc, (with AutoInput set to ON):
> 
Neat - I guess you can teach old dogs new tricks. Do you do "touch typing" lessons as well? Thansk, Thakns - You know what I mean;)
Comment 10 Heiko Tietze 2023-09-07 07:18:10 UTC
Created attachment 189405 [details]
GSheers

From left to right: tip for available functions, tip for use of sum() function, and formula preview

While we have 1) and 2) (with a probably less appealing design), the request was here to implement 3). This preview just adds a closing bracket internally and returns the result if successful. We do exactly the same in the function wizard.

In order to show both information we have to separate the information into function help and formula result meaning it cannot remain a simple tooltip. Or can we maybe show a balloon tip in parallel to the classic tip? 

The use case is probably to understand whether some input like "=time(8;12;99" or "=now()+1" produces a meaningful result.
Comment 11 Colin 2023-09-07 07:46:02 UTC
(In reply to Heiko Tietze from comment #10)
> Created attachment 189405 [details]
> GSheers
> 

> The use case is probably to understand whether some input like
> "=time(8;12;99" or "=now()+1" produces a meaningful result.

And failure to produce a meaningful result would indicate to the user that they may be required to enter more parameters or that they could be misuderstanding the function. Seems like Win-Win to me.