Apache OpenOffice (AOO) Bugzilla – Issue 95907
Paragraph Indent not regarded when a numbered list is started
Last modified: 2013-08-07 14:44:00 UTC
I think there is a bug in OOo 3.0.0 concerning the indentation of bulleted or numbered lists. The indentation used to work in versions 2.x (I tested 2.0.3 and 2.4.1), so this would be a regression. It seems to me that there are situations when OOo3 puts bullet lists in the left margin (and is not using the left indent of the paragraph). With bullet lists I mean lists activated using the bullet and numbering icons in the formating toolbar. If the STYLE DEFINITION of the paragraph has 0,0 cm left indent, then OOo3 puts the bullet list in the left margin regardless of what is the actual indent of the paragraph. OOo 2.x used to check what was the ACTUAL LEFT INDENT of the paragraph and used that as the base indent position for the bullet list. Because indents can be given using several methods (not just the style definition), OOo3 often misses the correct indent position. For example, if you indent paragraphs using the indent icons on the formating toolbar or the indent icon on the horizontal ruler, OOo3 does not recognize that as an indent when bullet lists are positioned.
If you have a paragraph indent of e.g. 4cm and you start a numbered/bulleted list, the indent will not be regarded as it was done in OO 2.x. The list gets its default indents.
Reason for the changed behavior in OOo 3.0: Since OOo 3.0 new list level attributes are used for position and space of the list label and the text. These new list level attributes do not no longer the paragraph indent values. Proposed solution: When starting a default bullet/numbering list, the created list style should take over the indent values of the paragraph as its list level indent values.
*** Issue 98241 has been marked as a duplicate of this issue. ***
Due to limited resources I have to re-target a solution of this issue to the next release, namely OOo 3.2
I reported Issue 98241 and found out that not only documents created with OOo 2.4 are effected. Attached you will find a test document created with OOo 3.0.0. The indent of lists is missing in OOo 3.0.1 and 3.1 (dev snapshots) but not in OOo 3.0.0. Some cws between m9 and m15 has changed the indent behavior of list styles. (PS: We use paragraph indents for nearly all paragraphs in the technical documentations (instructions for machines) in our company - for better readability, place for pictograms, etc. So, it is annoying (especially for users in productive environments) that minor updates of OOo change the behavior of styles formatting.)
Created attachment 59739 [details] ignored indent in >=3.0.1 but not in 3.0.0
OD->lendo: I am sorry. First, your issue is a different issue as this one. Second, the behavior in OOo 3.0 regarding the indent values at list items is wrong. This has been corrected in OOo 3.0.1 by issue 96772. In the given document the list style "Numbering 1" is directly applied to the paragraphs. The paragraphs itself have no intent values set. The paragraph style of the second part of these paragraphs is "Marginalia", which has indent values set. According to the specification about the introduction of the new list level attributes - see http://specs.openoffice.org/writer/numbering/NewListLevelAttrs.odt - the indent values of the list style has to be applied and not the indent value of the paragraph style.
OD I am reading your specification doc and it says: 1.4.1 ... "Existing paragraph's indent attributes overrule the new attributes first-line-indent and indent-at of the list level of a list style, which is directly applied to the paragraph. In this case the alignment position for the list label is the sum of the paragraph's indent attributes first-line and left- margin. The general indent of the text of the list item is the paragraph's indent attribute left-margin." ... and 1.4.2 ... "Existing paragraph style's indent attributes first-line and left- margin overrule the new attributes first-line-indent and indent-at of the list levels of a list style, which is applied to the paragraph style. The new attributes first-line-indent and indent-at of a list level of a list style, which is applied to the paragraph style, are applied under the following conditions: * The paragraph style has no own indent attributes first-line and left-margin specified. * The paragraph, which has this paragraph style applied1, has no own indent attributes first-line and left-margin specified." ... This is clearly not how it has been implemented. All of my existing paragraph indents have been reset to "0" for all of my bulleted text. Regardless of whether it is in the specification or not, it is obviously not acceptable to implement bullets and numbering in a way that ignores current paragraph indentation. This would imply that the user would need to setup and apply different bullet and numbering styles separately for each indented text styling. This is both onerous and ridiculously over complex. Also if I may add Items 2.1, 2.2.1 and 2.3 are completely unacceptable! In this section it is clearly being stated that a properly bulleted and laid out document sent to a user of an early version of OOo will not render that bulleting correctly as all of the settings will be returned to "0." That's worse than anything MS Word has ever done in my experience! Personally, once again I am uninstalling OOo 3.x for the 4th time (including go- oo.org builds) and returning to 2.4.
For those interested, the go-oo 3.0 (not 3.0.1) build does not have this issue. Unfortunately the go-oo 3.0 build also has this issue: 92968 (so you've been warned). http://qa.openoffice.org/issues/show_bug.cgi?id=92968
OD->corigo: The specification for the new list level attributes should (and in my honest opinion is) implemented as stated in the specification. If you recognize any defect in this area, please submit a corresponding issue and attach the corresponding documents, if needed and possible. BTW 1st, there is a difference between unset attributes and explicit set attribute with value '0'. If the left indent of a paragraph is explicitly set to '0', the intent values of a potential applied list style is not used. BTW 2nd, one of the reasons of the introduction of the new list level attributes is that these are the ones which Microsoft Word is using with the behavior regarding the indent values as described in the specification. BTW 3rd, I am sorry that I am not perfect and that I have overlooked/overseen the one or the other usability issue during the specification and implementation of the new list level attributes. But, I take this issue seriously and I am planning to fix it for OOo 3.2. Thus, constructive feedback is welcome.
This report appropriately describes the issue already. Specifically: bulleted content in legacy documents that was indented with a paragraph style is no longer displaying the appropriate indent in version 3.0.1. 1. In 3.0 build create a new Text document 2. Create a style with a paragraph indent of 1.27 cm 3. With the selected style click the bullet button and type some text 3.a. Bulleted content has both the indent of the existing paragraph (x) and the default bullet indent (y) .... so the indent is x+y 4. Open the text document in version 3.0.1 ... the bulleted text has an indent of y (the default for bulleted content). The paragraph indent has been completely ignored. This is contrary to the statement in the specification!
OD->corigo: First, what you have described is not the defect which marttikarjalainen has described in this issue. Second, your description is something like lendo had already reported in this issue, where I already replied that the OOo 3.0 has a defect regarding the "new list level attributes" specification, which has been fixed in OOo 3.0.1. Third, the behavior of OOo 3.0.1 regarding the indent values of the document created by your given steps is exactly, what the "new list level attributes" specification states. The list style is directly applied to the paragraph. The paragraph has no indent values. Thus, the list style's indent values are used. The indent values of the paragraph style, which is applied to the paragraph, are ignored.
You said: "The list style is directly applied to the paragraph. The paragraph has no indent values. Thus, the list style's indent values are used. The indent values of the paragraph style, which is applied to the paragraph, are ignored."... but that is incorrect to my statement. In my statement I said that the paragraph DOES have indent values, but that the bulleting is ignoring those values as if they are not set.
In my reading of the original post by marttikarjalainen we are talking about the exact same thing. I do not see any variation between our respective reports, other than, potentially, the methodology used to set the paragraph indent.
OD->corigo: Your last statement makes the difference - set indent attributes directly at the paragraph are not the same as set indent attributes at the paragraph style. In your given steps a paragraph style has been created with indent values. This paragraph style is then applied to a paragraph. Thus, the paragraph itself has no indent values - the paragraph got its indent values from its applied paragraph style. The list style, which is applied via the toolbar button "Bullet On/Off" is directly applied to the paragraph. Thus, the list style's indent values overrule the indent values of the paragraph style, as stated in the specification. I also forgot to mentioned that the button "Numbering On/Off" and "Bullet On/Off" also has the effect that possible directly set indent attributes of the current paragraph (or the selected paragraphs) are reset - only paragraph indent attributes are reset, not the ones of the applied paragraph style. Exactly, this additional functionality needs to be reworked in a fix for this issue. As stated in my proposed solution the actual applied paragraph indent values will be recognized on function "Numbering On/Off" respectively "Bullet On/Off" and these values will be applied to the newly created list style.
I'm not super clear on your last post... If I understand you correctly you are stating that because my style was set by style and not directly to the paragraph, that it is a different case than the one posted. Ok, if so: 1. do you want me to enter the separate bug as you suggested above. 2. Do you accept that this is a bug?
OD->corigo: I think you understand my last post about the difference between directly set indent attributes at the paragraph and set indent attribute at the paragraph style. If your use case is: "A paragraph has certain indent attributes via its paragraph style and function/button "Numbering On/Off" respectively "Bullet On/Off" is perform to start a new list, then the current valid indent values are ignored, but should be considered". Then I propose to handle your use case by a fix for this issue.
Just to be clear, you are talking about 3.0.2 not 3.2 for implementation. I am currently being forced to use older versions of OOo in order to view my documents with correct formatting and I really don't see myself waiting 2 years for version 3.2.
OD->corigo: No, I am talking about OOo 3.2. Release of OOo 3.2 is planned for September 2009 - see http://wiki.services.openoffice.org/wiki/OOoRelease32
*** Issue 101554 has been marked as a duplicate of this issue. ***
Could somebody suggest a work around for this issue, other then moving back to a previous version of OOo? As 3.10 for example solves some other layout issues I have.
A possible workaround is to perform the action manually, which I have proposed as a solution for this issue: - changing the indent values of the automatically created list style. This can be done by the following steps after you have started a new list using the corresponding icons in the toolbar: - open context menu of the paragraph, at which you have started the list. - choose context menu item "Numbering/Bullets" --> Bullets and Numbering dialog pops up - choose pane "Position" - adjust the values of "Aligned at", "Indent at" and the tab stop position accordingly -- for the given document this could be "4cm", "4.5 cm" and "4.5 cm"
I really don't think "manual" is ever a solution. I would recommend creating a few list styles that match your required indentations, and apply them as needed. In this way it will stay correctly formatted even (and if ever) after 3.2 (purportedly) solves this issue (but not the original design flaw).
Please let me comment corigo's last comment: - I have never said, that my proposed workaround is the "ever solution". A community member ask for a workaround and I tried to help with my proposed workaround. - corigo's proposed workaround by creating certain list styles is also a good workaround. - I am not very amused about the corigo's hints, that -- this issue probably will not be solved - <quote>... (and if ever) solved ...</quote> -- that there is a <quote>design flaw</quote> I am expecting more constructive criticism in an open-source project. BTW, one of the reasons for the new list level attributes and its specification and behavior are the list level attributes and its behavior in Microsoft Word. Thus, the new list level attributes helps OOo Writer to be more interoperable with Microsoft Word. Just my 2 cents.
Dear od, I have already given my clear criticism of the definitive design flaw above. Specifically that it complete breaks backwards compatability between versions of OOo. Interoperability between MSO should take a backseat to interoperability between OOo versions. This relates to my post on Feb 19 and the specification items 2.1, 2.2.1, and 2.3. Do not mis-understand that we are unappreciative of the fact that this is a largely volunteer, community based project. None-the-less when the "Community" experiences a complete and UN-forewarned restructuring of their existing document layouts, there will certainly be an outcry. At least I am trying to be humorous, when what I really want to do is go cry in my soup. Especially when my soup is going to be very cold by September 2009.
OD->corigo: Ok. Regarding backward compatibility in general: I think it is valid to evolve and improve OOo. This means new features and changes to OOo. New features in general can not be handled by older versions. Otherwise such new features are not needed. Thus, it is quite normal that new features break the backward compatibility, especially when the new features are introduced in the OpenDocument file format. Regarding backward compatibility for new feature "new list level attributes": The specification has been announced early in January 2008 on mailing list announce@specs.openoffice.org. A developer snapshot containing this feature was available in March 2008. Thus, this change was not <quote>UN-forewarned</quote>. This feature is also a ODF 1.2 feature and when you configure OOo to store ODF 1.1 (Menu - Tools - Options - Load/Save - General), the former list level attributes are used for lists in new text documents. And sorry that I am not 110% perfect in the realization of this feature. Yes, there might be the one or the other defect. Yes, there might be the one or the other usability issue regarding this feature. But be sure that I will do my best to find corresponding solutions for these problems and that I am open for proposed solutions from others.
We won't debate the availability of information... very few of the User community are going to be on the Spec mailing list, or even read it if they are. The release notes tell us next to nothing about changes in the system. So, as users we are more or less completely in the dark until it is too late. Doing the sort of Due Diligence that you are proposing simply isn't practical. Of course, the issue at stake here, is the lack of forward compatability. I.e. my old documents can't open in a usable form in the new software... That's about a 50% grade (only 1/2 of the cases considered) forget 110%. But now it sounds like I'm beating up on you, and that's not what I want to do. So tell me how we (I) can help you?
*** Issue 103914 has been marked as a duplicate of this issue. ***
working on implementation of proposed solution from 2008-11-13 in cws sw32numbf01. OD->corigo: If You have text documents from former OOo versions which are not imported correct regarding lists, then please submit corresponding issues. You can directly assign these issues to me (od@openoffice.org). Please set MRU (mru@openoffice.org) on CC. If You want You can also send these text documents directly via email to me (od@openoffice.org) with the defect description. Then I will perform a pre-evaluation and we can group the text documents showing the same defect into one issue.
fixed in cws sw32numbf01 - changed file: /sw/source/ui/wrtsh/wrtsh1.cxx, rev. 275483
further adjustment needed for correct handling of paragraph indent values, when the list level indent values have to be taken - changed file: /sw/source/core/text/itrcrsr.cxx, rev. 275703
OD->MRU: Checked in internal installation set of cws sw32numbf01 - please verify.
further adjustments of the fix due to the MRU's testing results - changed file: /sw/source/ui/wrtsh/wrtsh1.cxx, rev. 275780
OD->MRU: Checked adjusted fix in internal installation set of cws sw32numbf01 - please verify.
Verified fix in CWS sw32numbf02.
Checked in DEV300m59.