Is it OK that frame styles based on "None" are trying to be anchored to the page?

Create a new document. Type “hello” and press the Enter key twice. In the menu bar, click “Insert”, then select “Frame”, “Frame”. There will be opened a window with the settings of the frame. Note the settings in the “Position” section of the “Type” tab:

  • Horizontal: Center, Paragraph area
  • Vertical: Top, Paragraph text area

Adjust the width: Width = Relative to paragraph area, 100%
and then click OK to insert the frame.

Then select it and create a new frame style based on it by using the “New Style from Selection” option on the “Styles” pane. Call this style, for example, Foo. Note that the Foo style is currently based on the Frame style.

Delete the existing frame.

Create a new frame, but don’t adjust its properties manually, and instead apply the Foo style to it.

Everything will be fine. Then save the document, close it, and open again. Everything will be fine.

Then open the properties of the Foo style, select the “Organizer” tab, and change the value of “Inherit from” from “Frame” to “None”. Save the document, close it, and open again. You will see that the frame is now on the very top of the page, that is, above the “hello”, and its horizonatl and vertical options has changed:

  • Horizontal: Center, Entire page
  • Vertical: Top, Page text area

I don’t know whether this is a bug, but this is very strange.

Does anybody know why this happens and whether this is a bug? Is it documentted somewhere?

My LO version is 7.2.2.2. Which is yours?
From experimenting, your behaviour seems to be related to initial frame deletion, though I can’t be 100% sure because I don’t always experience the mishap.

My personal experience tells me frame styles are more exposed to “glitches” than others. Among others: if you modify the style of a selected frame, it is not always immediately updated; you might need to assign another style et restyle it with the modified style.

IMHO, this is yet another bug but you need to describe very accurately the context (LO version and OS). Of course this can happen only with .odt files because other formats have no frame styles.

1 Like

My LO version is 7.1.5.2, on Windows.

From experimenting, your behaviour seems to be related to initial frame deletion, though I can’t be 100% sure because I don’t always experience the mishap.

No, there is no need to delete initial frame to observe this issue. The following “works” as well: 1. Create a new document, type “hello” on the first line, create a frame of below it, change the width of the frame to “relative to paragraph, 100%”, 2. create a style from this frame, and set it to be inherited from “None”, 3. create a second frame below the first, apply the newly created style to it (everything is fine, yet), 4. Save, close, and open the document. You will see that both frames had moved above the word “hello”. I have cross-posted it to bugzilla: 145785 – Is it OK that frame styles based on “None” are trying to be anchored to the page? (documentfoundation.org)

I followed exactly your new procedure twice and don’t experience the glitch.

However, I noticed sometimes the horizontal alignment is changed to Entire page. What puzzles me is it is not systematic.

Why don’t you create your frame style from scratch? It will be inherited from -None- and there will be no “rebasing” which obviously is causing problem. As I already mentioned, frame styles are more “fragile” than other categories and the fewer fundamental changes there are (inheritance is a critical setting), the better you are.

I agree with you that frame style managing should be better handled.

Why don’t you create your frame style from scratch?

But how? I know how to use the Styles pane, but I’m not sure which exact way you mean.

Right-click anywhere below the list of existing style names and New. If you right-click on a style name and New, you create a style inheriting from the selected one. Only a click below the list gives a -None--based style.

I have always been suspicious about all these “… from selection” because you never know exactly what is taken as a reference (may be polluted by unexpected direct formatting).

Got it. It was a surpise that I can create a style by clicking the empty space. The issue is still here, but now it is more obvious and easier to reproduce. When I create the style by clicking the empty space and “New”, the position settings on the “Type” tab don’t have paragraph-related options.

  • For horizontal, the available options are “Left page border”, “Right page border”, “Entire page”, “Page text area”.
  • For vertical, the available options are “Entire page” and “Page text area”.

And to see the options that I actually need — “Paragraph area” and “Paragraph text area”, the options that guarantee that a frame will stay in place and will not be moved to the top of the page — will be available only after I change the inheriting of the style from “None” to “Frame”.

Do you have the same “behavior” of settings? If the answer is “yes”, then this is a mystery to me why the frames don’t “move up” in your case.

Since the default anchoring mode in the full-fresh “new” creation is To page, change first the anchoring mode to another one, like To paragraph. The positioning options are constrained by the anchor mode (not all possibilities are available in all modes).

Thus not having to tweak inheritance gives you more reliability (as usual).

But I don’t see an option to change anchoring from “To page” to “To paragraph” when I create a frame style from scratch. Where you change it?

image

It looks to me like you are using a broken LibreOffice.



If I were you, I would first go with LibreOffice in Safe Mode. Select Help>Restart in Safe Mode from the menu. If the problem does not exist anymore, you have go back to Factory settings || or || to reset the user profile.


Note:
Please note that the user profile usually remains unaffected by a new installation.


With me:
Version: 7.2.2.2 (x64) / LibreOffice Community
Build ID: 02b2acce88a210515b4a5bb2e46cbfb63fe97d56
CPU threads: 8; OS: Windows 10.0 Build 19044; UI render: Skia/Raster; VCL: win
Locale: de-DE (de_DE); UI: de-DE
Calc: CL

I have restared it in the safe mode just now, but this doesn’t change how the window look.

What version of LO and operating system are you using? LO 7.1.5.2 on Windows 7 (32-bit) in my case. (upd. I see, you just edited the post.)

See my extended comment above.


If you had given your information about the operating system correctly a little earlier, I could have spared my comments, since neither the operating system nor the LibreOffice versions are comparable.

Try to make the best of what you have.

There is a drastic change in frame style configuration between 7.1.x and 7.2.x releases.

Before 7.2, you had to create your frame style as a derivative of either Formula or Frame to define the anchor mode, respectively As Character or To Paragraph. This was a serious limitation, opening numerous issues.

7.2 fixed this anomaly. Now, Frame style anchor mode is clearly configured and modified as part of the Type settings. This is one of the improvements in 7.2. If you work intensively with frames (as I do), I highly recommend you upgrade to 7.2.x.

2 Likes

Thanks. This is actually a solution. To fix the issue that is described in the starting post, it was necessary to update to 7.2.2.2. Also, now I create frame styles from scratch.