Bug 129674 - Add "Goto sheet" dialog to Calc
Summary: Add "Goto sheet" dialog to Calc
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
unspecified
Hardware: All All
: medium enhancement
Assignee: Laurent BP
URL:
Whiteboard: target:7.4.0
Keywords: difficultyInteresting, easyHack, skillCpp, topicUI
Depends on:
Blocks: Calc-UX
  Show dependency treegraph
 
Reported: 2019-12-28 20:43 UTC by Roman Kuznetsov
Modified: 2022-09-22 13:57 UTC (History)
5 users (show)

See Also:
Crash report or crash signature:
Regression By:


Attachments
Mockup (17.74 KB, image/png)
2019-12-28 20:43 UTC, Roman Kuznetsov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Roman Kuznetsov 2019-12-28 20:43:09 UTC
Description:
Add "Goto to sheet" dialog to Calc like "Goto to page" in Writer.

If we have many sheets in spreadsheet and/or sheets have very long names then would be useful to have "Goto to sheet" dialog and shortcut Ctrl+G for it.
The dialog should have find field and list of sheet names.
Find field should have a focus by default.
You'll can select any sheet using a mouse or a keyboard.

A mockup is in attach.

Steps to Reproduce:
-

Actual Results:
we don't have fast method to jump to sheet if we have many sheets

Expected Results:
we have fast method to jump to sheet if we have many sheets


Reproducible: Always


User Profile Reset: No



Additional Info:
follow from https://ask.libreoffice.org/en/question/222890/can-i-jump-to-a-specific-worksheet-via-keyboard-shortcuts/
Comment 1 Roman Kuznetsov 2019-12-28 20:43:33 UTC
Created attachment 156820 [details]
Mockup
Comment 2 Xavier Van Wijmeersch 2019-12-29 11:20:58 UTC
First i thought its a ok but after reading the question on the given link 'ask libreoffice' and the answers i read there am not for this.
I tested with a spreadsheet with 10 sheet and the proposed item is more a click and point solution.
Most heavy workbooks have a first sheet with all name's on it.
Then "just type the sheetname into the range field (name box) of the formula bar leftmost. An info box "Go To Sheet" will appear and just press" its very fast.
But this is only my own opinion. -1

Best regards
Comment 3 Heiko Tietze 2020-01-06 16:36:15 UTC
How about >100 sheets? Sounds like a bad approach to me as well. But why should we limit the user? 

So +1 from my side, but -1 to the shortcut. Ctrl+G is assigned to "repeat search". Furthermore, the newly introduced function would be needed by only a few users and we must not spend precious shortcuts for it.
Comment 4 jackandmixers 2020-01-22 01:43:01 UTC
Hey, new guy to UX here!

What about adding another button to this search feature instead of replacing it? So for example the hotkeys could be Shift+Ctrl+G instead of having to swap around the interface.

Alternatively, as I am unfamiliar with some of the technology, what about adopting a page out of video editor's books and create customizable hotkeys? Then the user could map their shortcuts to whatever buttons they want.

(Again, I'm a total newbie to UX design, so I hope this doesn't prove unhelpful. Thanks!)
Comment 5 Heiko Tietze 2020-01-22 09:14:52 UTC
(In reply to jackandmixers from comment #4)
> Hey, new guy to UX here!

Welcome aboard!

> ... create customizable hotkeys?

If the function is execute per UNO command, no reason not to use this technology, it will become part of tools > customization and therefore can be manually assigned to a shortcut. 

Everything we implement as default is very hard to remove later. That is the UNO command itself and the shortcuts too.
Comment 6 Heiko Tietze 2021-05-20 13:37:28 UTC
Ctrl+G is the shortcut at MSO Excel. Additional to GoToSheet it offers GoToRange, which is actually a selection. Don't see a similar command, although we have a large number of selection commands. So ideally this dialog is not only useful to jump to a certain sheet but also to select (and got to) a range.
Comment 7 Heiko Tietze 2021-05-20 13:38:24 UTC
It might be worth to consider using either the Navigator or the Find $ Replace dialog for the task. Or both.
Comment 8 Regina Henschel 2021-05-20 19:55:14 UTC
We have already .uno::SelectTables. In older versions is was integrated in the 'Sheet' menu, nowadays you need to add it. It is command "Select Sheets...". It opens a dialog with a list of all sheets. It is up to the user to assign a shortcut to this dialog.

Unfortunately the dialog has no other way to select a sheet then click on its name in the list or -for keyboard users- to navigate in the list with up and down arrow. I think additional ways to select a list item would be good. This might be a search field. Only the additional way needs to improve accessibility.

And we have the list of sheets in the Navigator and the Navigator can be uses separate from the side bar, so is parallel available. But here too a method is missing to comfortable select a sheet, in case there is a huge number of sheets.
Comment 9 Heiko Tietze 2021-05-21 07:19:15 UTC
(In reply to Regina Henschel from comment #8)
> We have already .uno::SelectTables. ...

Good catch, also the search field. 

This sounds now like an interesting easyhack.
SID_SELECT_TABLES is handled in sc/source/ui/view/tabvwsh3.cxx
Comment 10 Laurent BP 2022-05-21 07:29:37 UTC
I was looking at this enhancement request, and I noticed that there already exists a uno command JumpToTable for the Navigator.
Do we need to create a new uno command (GoToTable p.e.), or is it possible to reuse JumToTable?
Comment 11 Laurent BP 2022-05-22 07:37:12 UTC
(In reply to Heiko Tietze from comment #9)
> This sounds now like an interesting easyhack.
> SID_SELECT_TABLES is handled in sc/source/ui/view/tabvwsh3.cxx

Hi Heiko,
May I consider you as the mentor for this easyhack?
I proposed this change:
https://gerrit.libreoffice.org/c/core/+/134714
There is not yet the search field, as it uses Select Sheets dialog, but it works as expected with a custom keyboard shortcut.
Comment 12 Commit Notification 2022-06-01 22:31:38 UTC
Laurent BP committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/help/commit/6cad3f7596e2296adda304ab1c613a429bb6ae93

tdf#129674 New command Go to Sheet
Comment 13 Heiko Tietze 2022-06-02 05:53:12 UTC
(In reply to Laurent BP from comment #11)
> May I consider you as the mentor for this easyhack?

It's a lot of code and I therefore just +1'ed and let have Hossein the final word - if he has spare time to review. Feel free to submit anyway if you are confident.
Comment 14 Commit Notification 2022-06-02 18:31:21 UTC
Olivier Hallot committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/help/commit/1252663b4ac9c1f1220b56f855629734f745944a

tdf#129674 Add index bookmark
Comment 15 Laurent BP 2022-06-02 18:32:07 UTC
(In reply to Heiko Tietze from comment #13)
> It's a lot of code and I therefore just +1'ed and let have Hossein the final
> word - if he has spare time to review. Feel free to submit anyway if you are
> confident.

Actually, there is still a bug with translation: normally, with KeyID locale, qtz code should automatically be added to any string which should be translated; it works fine in dialog UI, but not in menu. I can't find why...
Comment 16 Heiko Tietze 2022-06-02 19:31:15 UTC
(In reply to Laurent BP from comment #15)
> normally, with KeyID locale, qtz code should automatically be added to any string 

Isn't this done by some script mechanism passing strings to weblate, Cloph?
Comment 17 Commit Notification 2022-06-07 11:44:12 UTC
Laurent BP committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/d93e9430bfbf6fa8a679ea2d4d98f955774026f6

tdf#129674 Add GoTo Sheet command

It will be available in 7.4.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 18 Commit Notification 2022-09-22 13:54:26 UTC
Laurent BP committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/7251b2ecd728bb6bd1af4cc4199da3f06e2e1ca3

tdf#129674 "Go to Sheet" UITest

It will be available in 7.5.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.