[Libreoffice-ux-advise] [Bug 152550] Drop the "Basic Fonts" option dialogs

bugzilla-daemon at bugs.documentfoundation.org bugzilla-daemon at bugs.documentfoundation.org
Sun Dec 18 07:23:12 UTC 2022


https://bugs.documentfoundation.org/show_bug.cgi?id=152550

--- Comment #6 from Mike Kaganski <mikekaganski at hotmail.com> ---
(In reply to Eyal Rozenberg from comment #3)
> > I agree that the settings discussed here are very problematic. These
> > settings control these things:
> > 
> > 1. User defaults stored in registrymodifications.xcu, used for new documents
> > created when no default template is set:
> >    <item oor:path="/org.openoffice.Office.Writer/DefaultFont*">
> > 2. <style:default-style style:family="paragraph"> element in
> > the current document;
> > 3. Properties of *some* user-visible pre-defined styles, like "Default
> > Paragraph Style" (which has internal name of "Standard").
> 
> Can you clarify the difference between (2.) and (3.)? Is (3.) outside of the
> current document? Is it in the default template, if one exists?

Let me try once more (sorry, the following is TL;DR).
I suppose that it could look more confusing than it actually is, just because
of this confusing dialog.

Please start from the file format / document in mind.
The document has a set of defaults for *any* paragraphs (in ODF, these are
stored in the <style:default-style style:family="paragraph">). These defaults
are used when any given setting is not set in a given style inheritance
hierarchy, so the <style:default-style style:family="paragraph"> may be
considered an implicit root of all <style:style style:name="*"
style:family="paragraph"> inheritance trees.

Remove any given property from a given ODF, and the program would need to use
some default. If there is a configurable setting for it, the default value
could (?) be obtained from there (tdf#150377). Or a hardcoded default should be
used. Use of hardcoded default instead of a configurable setting has its own
pros, like making documents more predictable even with some settings missing
from them - *if* the hardcoded default is not likely to change across versions
and locales and such.

A document may be created from a template. A template is a document; and
creating from a document basically copies everything (just a little bit
simplifying), so *everything defined in the template* is used instead of any
default or configuration - so defaults/settings are not relevant for template
case.

There is an option to not use any template (and this is the default); it has
some own advantages (already mentioned flexibility). People may want to keep
using it (e.g., because they simply don't want to bother with setting up a
template; or because of some other considerations), and at the same time, they
might want to define some custom properties for newly created documents
(basically, they need something like partial "templates"). This is implemented
by having some configurable user settings like '<item
oor:path="/org.openoffice.Office.Writer/DefaultFont*">' in
registrymodifications.xcu, used only when creating new documents, and only when
no template is used for that.

====

With all that (I hope the description is reasonable complete), the behavior is
flexible and defined. But the problem arises when one, for some completely
weird reason, decides to merge three things in one control in a strange place.
The place choice is the least of the problems here - because it's easy to move
it anywhere; but no matter where you move it, it will be not less confusing,
unless it's split into three (and there is already a place for one of the
three).

The specific controls there are font names and sizes:

* Default
* Heading
* List
* Caption
* Index

First, let's skip the most problematic "Default", and look at the rest. They
all control only *two* things each:
- the respective properties of respective paragraph styles in the current
document;
- the user settings under <item
oor:path="/org.openoffice.Office.Writer/DefaultFont*"> in
registrymodifications.xcu.

What a user will *see* in the controls when they open this dialog? They will
see the values from the current document (you can't have the dialog when Writer
document is not current). There's no way to get the values from
registrymodifications.xcu - only if they happen to be the same, e.g. because
the current document is just created without a template, and the styles are not
changed from the defaults...

What will be saved when you press OK? Both. Previously, there was a "[ ]
Current document only" checkbox in the bottom of that page, allowing only store
that in the styles in current document, but without updating the user defaults
in registrymodifications.xcu ... but I don't see it there anymore at least in
7.4.3.2 (I am sure there was some misguided decision to "simplify" the UI
related to this).

Now let's look at the most problematic "Default" entry.

1. What does it control?

- The respective properties of <style:default-style style:family="paragraph">
(i.e., the root of *all* paragraph hierarchies);
- the user settings under <item
oor:path="/org.openoffice.Office.Writer/DefaultFont*"> in
registrymodifications.xcu.

Is this all? No. When setting the <style:default-style
style:family="paragraph"> properties, it *also* resets respective properties in
<style:style style:name="Standard" style:family="paragraph"> (i.e., the font
properties of the "Default Paragraph Style").

So, there are *three* things that it controls.

2. What do you see in the controls when opening the dialog?

You see the value of the respective properties in the "Default Paragraph
Style". Not what is stored in style:default-style, nor what is set in
registrymodifications.xcu.

Given all that, I wonder how on earth a user could figure all the
interrelations of this just by looking on the dialog, reading help, and even
much of experimenting, without actually looking inside ODFs and
registrymodifications.xcu...

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Libreoffice-ux-advise mailing list