Bug 118831 - Vertical alignment default should be top, not bottom
Summary: Vertical alignment default should be top, not bottom
Status: RESOLVED WONTFIX
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
3.3.0 release
Hardware: All All
: medium enhancement
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: needsUXEval
Depends on:
Blocks:
 
Reported: 2018-07-18 16:19 UTC by Daniel Collins
Modified: 2018-07-25 12:46 UTC (History)
6 users (show)

See Also:
Crash report or crash signature:


Attachments
Example of default vertical alignment (23.90 KB, application/vnd.oasis.opendocument.spreadsheet)
2018-07-18 16:22 UTC, Daniel Collins
Details
Example of bottom vertical alignment (10.72 KB, application/vnd.oasis.opendocument.spreadsheet)
2018-07-23 01:26 UTC, Kenneth Hanson
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Collins 2018-07-18 16:19:44 UTC
Description:
Currently the default for vertical alignment sets contents to the bottom of a cell. This seems counter to how most readers parse a page from top-down. For example, if a table is made with wrapped text in the cells, and one cell is much shorter than an adjacent, it's hard to connect the default/bottom-aligned text with the adjacent text that starts higher up the page. (And this is exacerbated if cells are colored or grid lines are shut off.)

This can be solved by setting vertical alignment to "top", of course, but I'm unclear why the default use-case would ever be bottom in the first place.

Steps to Reproduce:
1. Make table with at least two columns.
2. Set Properties: Wrap text automatically in all cells.
3. Fill one column with short text, the other with longer text.

Actual Results:
Note that the short text is by default aligned to bottom of cell, making it difficult to tell visually which adjacent text it is matched with. 

Expected Results:
Per standard top-down reading, one would expect top-aligned text, and first lines of adjacent cells matching vertical position.


Reproducible: Always


User Profile Reset: No



Additional Info:
Comment 1 Daniel Collins 2018-07-18 16:22:41 UTC
Created attachment 143623 [details]
Example of default vertical alignment

Table with two columns, and wrapped text of different lengths. Note that with default vertical alignment, text in short first column is hard to tell which right-hand text it is matched with (especially in case of colored cells or grid lines turned off).
Comment 2 Jean-Baptiste Faure 2018-07-19 13:29:45 UTC
It's an enhancement for a very particular use-case. Templates are useful to tackle different use-cases. From my point-of-view, no need to change the default for that.

I suggest to close this as WontFix.

Best regards. JBF
Comment 3 Daniel Collins 2018-07-19 19:40:39 UTC
Disagree with prior comment; I don't see what particular use-case is implied here, other than universal reading top-to-bottom. I'd be interested in seeing: What other use case is there (in which default bottom alignment is helpful)?
Comment 4 Jean-Baptiste Faure 2018-07-19 20:19:25 UTC
Spreadsheet is primarily intended to do computations and the cells to contain numbers. So vertical alignment does not have any importance.
So I think it is easier to create your own templates with the vertical alignment you want than changing the behavior of the software for all users who didn't ask for anything.

Best regards. JBF
Comment 5 Xavier Van Wijmeersch 2018-07-20 09:14:05 UTC
I agree with Jean Batiste Faure
 use your own templates and don't force on others things they don't need

So i suggest also a WONTFIX
Comment 6 Daniel Collins 2018-07-20 18:39:06 UTC
"does not have any importance" is a non-argument. If it doesn't matter, then you shouldn't care is the default is to the top, matching standard reading style.
Comment 7 Jean-Baptiste Faure 2018-07-20 18:49:25 UTC
(In reply to Daniel Collins from comment #6)
> "does not have any importance" is a non-argument. If it doesn't matter, then
> you shouldn't care is the default is to the top, matching standard reading
> style.

The problem is not what is the default, the problem is changing the current default. That need developer time, testers time, translator time, and community time to explain to millions users why the appearance of their spreadsheets has changed.

It seems you have some reluctance to use template; you can ask for help on this subject on users mailing-list or on asklibo. You should have a look on https://documentation.libreoffice.org/assets/Uploads/Documentation/en/CG4.1/PDF/CG4104-StylesAndTemplates.pdf

Best regards. JBF
Comment 8 Daniel Collins 2018-07-22 00:06:31 UTC
So it sounds like no one can make any explanation whatsoever for why the default behavior is as it is. If the "wrap text automatically" feature is important enough to include, then it should have reasonably thought-out default behavior, i.e., match other types of documents formatted top-down. If you lack the resources or technical capacity to make that happen, then so be it.
Comment 9 V Stuart Foote 2018-07-22 03:39:37 UTC
Kohei, Eike, *

Looking at calc's format shell [1] would there be any reason the default vertical alignment SID_ALIGN_ANY_VDEFAULT, when non-justified, could not be changed to allign to TOP of cell?

=-ref-=

[1] https://opengrok.libreoffice.org/xref/core/sc/source/ui/view/formatsh.cxx

#1315
#2366
#2441
Comment 10 Regina Henschel 2018-07-22 11:49:05 UTC
The current default behavior is the same as in Excel. So I wouldn't change that.

If someone needs other default settings, it is easy to create a document template with the desired settings.
Comment 11 V Stuart Foote 2018-07-22 12:52:32 UTC
(In reply to Regina Henschel from comment #10)
> The current default behavior is the same as in Excel. So I wouldn't change
> that.
> 
> If someone needs other default settings, it is easy to create a document
> template with the desired settings.

Yes, that is correct. Excel (2016 and earlier) like OOo/AOO/LibreOffice Calc all format use vertical alignment to bottom as default.

Question is if there is any technical reason that vertical align top can not be used as a default in LibreOffice, and if formatting for SID_ALIGN_ANY_VDEFAULT can be made configurable to allow users to set their preference.

Default should remain to bottom to maintain legacy use and interoperability with Excel, but users could then set their vertical allignment to top, or to center, or to bottom in profile--probably done via Expert configuration--without requiring use of a template.
Comment 12 Kenneth Hanson 2018-07-23 01:24:58 UTC
Not sure that I would call this a technical reason, but I think bottom alignment might make sense assuming that the stereotypical spreadsheet contains mostly simple numeric data. For example:

1. Column headers with variable number of lines look better (maybe?)
2. Single line numerical data with variable font sizes appear aligned at baseline.

That being said, I make a *lot* of text heavy spreadsheets like the example in comment 1, and I always change the vertical alignment to "top" in those cases.
Comment 13 Kenneth Hanson 2018-07-23 01:26:28 UTC
Created attachment 143700 [details]
Example of bottom vertical alignment

Example for previous comment.
Comment 14 Eike Rathke 2018-07-24 12:30:21 UTC
(In reply to V Stuart Foote from comment #11)
> Question is if there is any technical reason that vertical align top can not
> be used as a default in LibreOffice, and if formatting for
> SID_ALIGN_ANY_VDEFAULT can be made configurable to allow users to set their
> preference.
If that would be configurable you'd also expect that opening the same
document in a different LibreOffice version or another application
displays with the same V-alignment, so the aligment will have to be
stored if different from bottom. Loading such document then with
a different alignment-default will have no effect because the stored
value would be top (for example).

Also, numbers probably should not be top-aligned per default.

> Default should remain to bottom to maintain legacy use and interoperability
> with Excel, but users could then set their vertical allignment to top, or to
> center, or to bottom in profile--probably done via Expert
> configuration--without requiring use of a template.
What would you expect if a default V-alignment document was loaded (thus
created with an application that has default bottom alignment) and the
user has set default top alignment? I'd still expect the bottom
alignment because that's how the document was created, so
document-locally switching the default to bottom alignment again. When
switching to top again and saving the document we're back at square one
above, but why expect switching a default (view) option altering the
document?

I see no use in this "switch default behaviour" that would confuse more
things than it would solve as the actual use case here (align some cells
with text content of different length/height to top) can be easily done
by applying a top alignment style for the infrequent cases where
actually needed.
Comment 15 V Stuart Foote 2018-07-24 15:36:31 UTC
OK then, 

1) compatibility (legacy & interoperability)
2) non-ODF compliant (so profile
3) only a corner case for multi column textual entry (numeric is better served bottom alligned)

so by dev and UX consensus => WF
Comment 16 Daniel Collins 2018-07-24 16:19:14 UTC
(In reply to Kenneth Hanson from comment #12)

The case of column headers is a reasonable argument, thank you for that.
Comment 17 Kenneth Hanson 2018-07-25 12:46:31 UTC
(In reply to Daniel Collins from comment #16)
> (In reply to Kenneth Hanson from comment #12)
> 
> The case of column headers is a reasonable argument, thank you for that.

Happy to help :)