Bug 104868 - Text frame objects do not honor Z-order arrangement and allow selection with overlapping or nested Text frame objects.
Summary: Text frame objects do not honor Z-order arrangement and allow selection with ...
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
4.3.7.2 release
Hardware: x86-64 (AMD64) All
: medium enhancement
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: Frame Z-Order
  Show dependency treegraph
 
Reported: 2016-12-22 16:28 UTC by James B. Byrne
Modified: 2024-01-12 10:25 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
LO Template with multiple frames unable to edit frame inside frame (11.84 KB, application/vnd.oasis.opendocument.text-template)
2016-12-22 16:28 UTC, James B. Byrne
Details
sample as FODT with Text Frame layout from OTT (36.47 KB, application/vnd.oasis.opendocument.text)
2016-12-25 14:20 UTC, V Stuart Foote
Details

Note You need to log in before you can comment on or make changes to this bug.
Description James B. Byrne 2016-12-22 16:28:44 UTC
Created attachment 129880 [details]
LO Template with multiple frames unable to edit frame inside frame

I opened an ODT format file created by OpenOffice in 2013.  The document contains frames included within frames used for layout purposes.  I discovered that in this document I cannot edit the text content of an included frame unless I first delete the included frame and then undo the delete after which the text of the restored frame can be edited.  However, this remedy is only temporary.  If I delete and undo a different included frame then the first becomes locked to editing again.

Saving the document as a template does not change the behaviour of any subsequent documents created from that template.

The issue with this document is encountered in LO 4.3, 5.0, 5.1 and 5.2 on both CentOS-6.8 and OSX-10.11.
Comment 1 V Stuart Foote 2016-12-25 14:20:00 UTC
Created attachment 129937 [details]
sample as FODT with Text Frame layout from OTT

With the document created from the template, the text frame object(s) can be selected and modified as any frame object.

But because the sub-frames are anchored to each of the three main frames (Frame1, Frame2 and Frame9 as it opens for me) they overlap--and mouse text cursor selection defaults to the containing frame. If the containing frame is shrunk to not overlap, focus of cursor selection onto the other sub-frames occurs.

Don't believe this is incorrect, just annoying. Seems like you should be able to select the object and then have text cursor focus into the object.

Also, you don't have to delete and restore the frame to gain access to its text. Just identify the frame holding the text of interest (the frame object can be selected, then select the "Object" context menu and get the Name field from the Options tab).

Please verify that you can gain cursor focus to the text frame via the Navigator.

@Cor, @Regina -- any perspective from the standards side as to behavior of nested Text Frames?
Comment 2 Cor Nouws 2016-12-28 09:49:28 UTC
(In reply to V Stuart Foote from comment #1)

> @Cor, @Regina -- any perspective from the standards side as to behavior of
> nested Text Frames?

Not from my side, Stuart.
But I recognize the behavior as being the same for as long as I remember. Your explanation is correct and shows ways to handle this as user.
Comment 3 James B. Byrne 2016-12-28 15:41:49 UTC
If I use the navigator window then I can access the embedded frame text providing I know the frame name.  Which is functional if not very convenient or obvious.

Within LO if I select the frame and I right-click the resulting pop-up menu then it does not provide an OBJECT option.  The only menus that do are the Edit, Insert and Format drop-downs. The Object entry on the Edit drop-down is greyed out and not available.  That on the Insert has no Name sub-selection, and in any case all of the sub options are greyed out if there is a frame already selected. The Object selection on the Format drop-down has a Name sub-option but that is greyed out along with everything else, saving only the Description option.

So, unless your suggested alternative is missing some important step of which I have no knowledge I do not see how I can follow your instructions.

I realise that the information hereunder does not really apply to LO 'per se'.  Nonetheless, this difficulty is not evidenced in any OpenOffice version that I have on any of the three OSes that I run both it and LO on. Using the exact same file LO always evidences this behaviour whereas OpenOffice always permits direct access to the text.  This is specifically a LO implementation issue.
Comment 4 V Stuart Foote 2016-12-28 16:32:34 UTC
(In reply to James B. Byrne from comment #3)

> Within LO if I select the frame and I right-click the resulting pop-up menu
> then it does not provide an OBJECT option.  The only menus that do are the
> Edit, Insert and Format drop-downs. The Object entry on the Edit drop-down
> is greyed out and not available.  That on the Insert has no Name
> sub-selection, and in any case all of the sub options are greyed out if
> there is a frame already selected. The Object selection on the Format
> drop-down has a Name sub-option but that is greyed out along with everything
> else, saving only the Description option.
> 
> So, unless your suggested alternative is missing some important step of
> which I have no knowledge I do not see how I can follow your instructions.
> 

Correct, just the three outer frames can be mouse selected as they each block selection of overlapping/nested frames.

But until the Frame actually has focus (not just the text cursor on selection in Navigator) the Text Frame object is not exposed. 

Trivial to expose for editing with Navigator:

Mouse select the frame (text cursor moves into the object, but object handles are not active). 

Context menu -> select "Text frame" -> select "Edit" (object handles activate, and Frame object dialog opens).

Setting enhancement here, as the Text frame objects should allow Z-order "arrangement" to permit GUI focus of overlapping/nested Text frames.

"Text frame objects do not honor Z-order arrangement and allow selection with overlapping or nested Text frame objects."

@Reginna, is that the right way to describe the enhancement? And does ODF support it?
Comment 5 Regina Henschel 2016-12-28 18:07:38 UTC
If mouse click does not work for you, you can use the Navigator.
You can double click the frame name. This put the cursor inside the frame text. Right-click > Edit switches to object mode where you can style the frame itself.

Or you use the "little Navigator". Find the drop-down triangle in the top-left corner of the Navigator. It opens a window "Navigation". The second icon from left, in the first row selects the kind "Text Frame". With the up and down icons on the right you can now traverse the frames. When you have select the correct one, press F2 key to set the cursor into its text. Click Esc-key to leave text mode and go back to object mode.

If one frame is in object mode (= green handles) you can traverse the frames with the tab key. Here again the F2 key sets the frame to text mode.

@V Stuart Foote:
The <draw:frame> supports the attribute "draw:z-index" in ODF. But LibreOffice has no UI for it and does not write and does not preserve this attribute. Instead it uses the rule, that in absence of this attribute, the order in which the elements occur in the file, is used.
The z-order is a graphic property and would apply to other graphic objects and other modules too. I think, it is not the correct approach here. Do you remember the discussion about z-order and Navigator in Draw?

If you are in Draw/Impress and want to access an object, which is behind another one, then you can use ALT-click. This does not work in Writer (and not in Calc). Perhaps this should be implemented for Writer (and Calc) too? And switching between object mode and text mode can be improved too, or do you know a way, which I have missed?
Comment 6 James B. Byrne 2016-12-28 19:06:39 UTC
This is one little addition to the information I provided.  There are two (2) other frames embedded within the outer frame.  These are overlaid by the frame that I am having difficulties with.  However, I can edit the text in each of these two frames without having to use the navigator.
Comment 7 Regina Henschel 2016-12-29 11:35:23 UTC
I was wrong in regard to z-index. In a Writer document the frames have a z-index.

(In reply to V Stuart Foote from comment #4)

> Correct, just the three outer frames can be mouse selected as they each
> block selection of overlapping/nested frames.

I cannot confirm that. In the file "GiftCert3Up.ott" I click the border line area and the inner frame is selected (=has green handles).

> 
> But until the Frame actually has focus (not just the text cursor on
> selection in Navigator) the Text Frame object is not exposed.

??
 
> 
> Trivial to expose for editing with Navigator:
> 
> Mouse select the frame (text cursor moves into the object, but object
> handles are not active). 
> 
> Context menu -> select "Text frame" -> select "Edit" (object handles
> activate, and Frame object dialog opens).

That means, you want to style the frame, not to work on its content. If the frame is in the mode to work on the content, you only need to press Esc key to change to object mode (=green handles). No need for Navigator.

> 
> Setting enhancement here, as the Text frame objects should allow Z-order
> "arrangement" to permit GUI focus of overlapping/nested Text frames.

Frames act on the stacking-order icons same as drawings objects. What do you want to "enhance"?

> 
> "Text frame objects do not honor Z-order arrangement and allow selection
> with overlapping or nested Text frame objects."

Text frames honor z-order. It is stored correctly to the file and read back correctly. 

If you cannot directly get the text "Not valid unless countersigned", the reason is the wrap property "Through, In background" of the frame. Uncheck "In background" and you can click into the text without problems.

I do not see, what the bug is in this report.
Comment 8 James B. Byrne 2016-12-29 13:51:54 UTC
I can confirm that in LO 4.3.7.2 if I unset the background option of the frame then I can edit the text.  This requires that a colour be selected for the fill and 100% transparency employed to obtain the same print result.

I also note that on CentOS-6.8 both LO 5.1 and 5.2 crash and enter document recovery repeatedly when I attempt to open from the mouse right-click pop-up menu the frame, or object, in question on this document.  If the background option is not checked then this behaviour is no longer observed.
Comment 9 James B. Byrne 2016-12-29 14:09:25 UTC
(In reply to Regina Henschel from comment #7)

> 
> Text frames honor z-order. It is stored correctly to the file and read back
> correctly. 
> 
> If you cannot directly get the text "Not valid unless countersigned", the
> reason is the wrap property "Through, In background" of the frame. Uncheck
> "In background" and you can click into the text without problems.
> 
> I do not see, what the bug is in this report.

Then the behaviour is not what an end-user would reasonably expect.  If one can select a frame then one naturally assumes that the frame's contents are thereby exposed for editing unless they are explicitly protected.  Setting the background property does not to my mind constitute a form of content protection, but merely a default positioning for final rendering of the contained elements.  This property should not affect the ability of the user to edit the elements.