Bug Hunting Session
Bug 102939 - freeze cells not operating properly with multiple sheets selected
Summary: freeze cells not operating properly with multiple sheets selected
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
unspecified
Hardware: All All
: medium enhancement
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: Sheet Cell-Freeze
  Show dependency treegraph
 
Reported: 2016-10-03 18:00 UTC by Ray Schmitz
Modified: 2018-04-20 15:50 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ray Schmitz 2016-10-03 18:00:20 UTC
User-Agent:       Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36
Build Identifier: 31dd62db80d4e60af04904455ec9c9219178d620

Unlike other functions (e.g., insert column; delete row) which can create the same change in multiple selected sheets at once, freeze cells fails to perform as expected when more than one sheet is selected.

The user-expected behavior when operating on multiple selected sheets that is consistent with other functionality would be for the exact same number of rows and/or columns to be frozen on every selected sheet.  

Choosing to freezing only first row of a selected group of sheets should not alter the status of frozen columns in any of the selected sheets. Similarly, freezing only the first column of a selected group of sheets should not change any existing frozen rows settings within any of the selected sheets.  

However, selecting to freeze both rows and columns for multiple selected sheets should override any previous number of rows and/or columns that may have already been frozen in any of the selected sheets.

Reproducible: Always

Steps to Reproduce:
1. Create multiple sheets with dummy content (e.g., cells marked A1, A2,...An, B1...Bn, C1...n, ....
2. optionally, set pattern of frozen rows and columns in individual sheets
3. Attempt to freeze first rows | first columns | rows & columns of sheets
4. Inspect results under changes.
Actual Results:  
Freeze seems to operate as expected only on the visible sheet; not on the multiple selected sheets.

Expected Results:  
See problem description above.

Observations:
1)
Freeze first row and free first column functions are somehow conflicting.  Even for a single selected sheet, after freezing the first row, choosing freeze first column undoes the frozen first row first without freezing column A.  A second application of freeze first column then gives the desired effect.  The same is true if rows and columns are swapped.  

Also, successive application of freeze first row (column) will turn toggle the freezing of the row (or column) on and off.  HOwever, the menu text does not toggle back and forth between freeze and "unfreeze".  

Maybe this counts as another bug, separate from the failure to operate on multiple sheets.  However, the functionality is closely related as to suggest there is one underlying routine that needs to be reworked.

So:

2)
Conceptually, only 1 pair of underlying functions are needed: freeze 0 to n rows (or 0 to n columns) on selected sheet(s).

With this underlying logic, the existing wordy and cumbersome "freeze cells" submenu ("rows and columns | first row | first column") could be replaced with 2 lines: "freeze rows" and "freeze columns".

The suggested menu text may count as a feature request, rather than a bug, but if UI and underlying function are intertwined, new text to go with the suggested new underlying feature logic (to resolve the bug) would improve usability through greater simplicity and clarity.  Most users do not want to "freeze cells" (in some arbitrary array?!?) - they want to freeze rows and columns.

3)
A possible interim fix would be to grey out freeze cells while more than one sheet is selected or otherwise warn the user that freeze is not working for multiple sheets.

4)
It is quite common to want to make changes to frozen rows or columns of multiple sheets during both development and usage of complex models, and to want to make changes on one axis without altering the existing settings on the other axis.

Listed as minor because the workaround is to adjust each sheet individually; this is a productivity issue with severity scaling linearly with the number of sheets the user might like to do freeze operations upon increases.




Reset User Profile?No
Comment 1 Buovjaga 2016-10-13 18:47:13 UTC
It seems like logically it should work, if you right-click a sheet and click "Select all sheets" and then you would do the freeze.

Let's ask design.
Comment 2 Heiko Tietze 2016-11-01 13:20:22 UTC
Would say its more an expert question how it should behave. @Timur?
Comment 3 Timur 2016-11-04 16:03:54 UTC
Being an average user, I'll just add some thoughts:

(In reply to Ray Schmitz from comment #0)
> The user-expected behavior when operating on multiple selected sheets that
> is consistent with other functionality would be for the exact same number of
> rows and/or columns to be frozen on every selected sheet.  
A. May make sense, IF other issues are also tackled (warning, no text change, grey out icon). There should be Yes-No warning that this will change existing freezes, if any. As a note, MSO 2013 doesn't support this either and it would be useful to know if some suite does.

> Choosing to freezing only first row of a selected group of sheets should not
> alter the status of frozen columns in any of the selected sheets. Similarly,
> freezing only the first column of a selected group of sheets should not
> change any existing frozen rows settings within any of the selected sheets.  
B. This is contrary to the current singe sheet logic and previous paragraph and probably complicates all and should not be accepted.

> Even for a single selected sheet, after freezing the first row, choosing
> freeze first column undoes the frozen first row first without freezing
> column A. A second application of freeze first column then gives the
> desired effect.  The same is true if rows and columns are swapped.  
C. Looks like already reported Bug 99477.

> Also, successive application of freeze first row (column) will turn toggle
> the freezing of the row (or column) on and off.  However, the menu text does
> not toggle back and forth between freeze and "unfreeze".  
D. May make sense for a new lowest enhancement bug, looking separately, but looks contrary to A, so I wouldn't support both.

> Conceptually, only 1 pair of underlying functions are needed: freeze 0 to n
> rows (or 0 to n columns) on selected sheet(s).
> With this underlying logic, the existing wordy and cumbersome "freeze cells"
> submenu ("rows and columns | first row | first column") could be replaced
> with 2 lines: "freeze rows" and "freeze columns".
E. I find "first row" and "first column" handy and probably frequently used. It's more important than a conception that all rows/columns are the same.  Also, there's a single drop-down icon now which looks fine.

> The suggested menu text may count as a feature request, rather than a bug,
> but if UI and underlying function are intertwined, new text to go with the
> suggested new underlying feature logic (to resolve the bug) would improve
> usability through greater simplicity and clarity.  Most users do not want to
> "freeze cells" (in some arbitrary array?!?) - they want to freeze rows and
> columns.
F. Of course, and MSO users don't want to freeze panes, but rows and columns. Personally, I don't find this relevant. It would be useful to search for the bug/source where this was decided. Anyway, discussion may belong to Bug 97105.

> A possible interim fix would be to grey out "freeze cells" while more than one
> sheet is selected or otherwise warn the user that freeze is not working for
> multiple sheets.
G. No interim fixes please. If A. is confirmed, which what this bug is about, there should be Yes-No warning. If not, another bug with Yes warning might be created to warn the user that freeze is not working for multiple sheets. But that is obvious and doesn't lead to any data loss, so of no importance.

> Listed as minor because the workaround is to adjust each sheet individually;
> this is a productivity issue with severity scaling linearly with the number
> of sheets the user might like to do freeze operations upon increases.
H. Looks like enhancement to me, but I won't change this one.
Comment 4 Heiko Tietze 2018-04-20 15:50:13 UTC
(In reply to Timur from comment #3)
> A. May make sense .... There should be Yes-No warning that this will change
> existing freezes, if any. 

Taking the basically agreement into the +1 to allow freezing of multi-selections. As a user-initiated action it's not paramount to have a confirmation for overridden things, but it would be nice to have.

Many thanks for the other arguments, but we better split the topic.