[PAGES-109] New bar of inherited child areas are visible Created: 12/Oct/16  Updated: 23/Jan/17  Resolved: 20/Jan/17

Status: Closed
Project: Magnolia pages module
Component/s: None
Affects Version/s: 5.4.9, 5.5
Fix Version/s: 5.4.10, 5.5.2

Type: Bug Priority: Blocker
Reporter: Frank Sommer Assignee: Evzen Fochr
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: 0d
Time Spent: 2d 3h
Original Estimate: Not Specified

Attachments: PNG File 5-4-8-works.png     PNG File 5-4-9-failure.png     Java Archive File magnolia-blossom-sample-module-3.1.4-SNAPSHOT.jar     File magnolia-blossom-sample-module-3.1.4-SNAPSHOT.jar     XML File website.home.test.xml    
Issue Links:
relation
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Date of First Response:
Sprint: Kromeriz 79
Story Points: 13

 Description   

After an upgrade to Magnolia 5.4.9 the new bars and placeholders of nested areas in our inherited footer area will be shown. With that an adding of components in the inherited content is possible. But an editing is not possible. In Magnolia 5.4.8 everything works fine and adding of new components in nested areas are not possible. See attached screenshots.

This bug is crititcal because the editor adds components to the inherited home page footer content.

BTW. Setting the area to editable=false is not possible, because we use Blossom for area definition and there is no option for that in the corresponding annotation.

Issue caused by bbecb1416dccced31f98778125c67f033b4d1e1e / 958c9fa51b7b28cc9b103de9732c36a86865645b QA fix ClassCastException by removing non-diplayed components as well get rid of cast (introduced by PAGES-62)



 Comments   
Comment by Evzen Fochr [ 04/Jan/17 ]

Cause of issue is component.delete(); that sets component parent (area) to component child area as its new parent while processing page elements in PageEditorConnector@processMgnlElements(). Component is holder of inherited attribute and if we remove it, we loose this information for element children.

Comment by Evzen Fochr [ 04/Jan/17 ]

Espen Jervidalo
Some notes from hipchat:
Rendering:
You can inherit an area and turn off inheritance for child-areas. We can't just stop processing the tree, when an inherited element is reached see (MAGNOLIA-4080)
Areas themselves are not inherited. So if you define properties on an area, they will be lost when inherited. Why? This is also the reason why we lose that property when removing components in the page-editor.
Page-editor processing:
We remove areas which do not have controlbars in ...dom.processor.AreaProcessor#process
The reason for removing the components is that we ended up with components having components as child-elements, which is wrong.
Some alternatives:
Rendering:
Inherit areas as well. Not sure about the consequences.
Mark areas as inherited.
Page-editor:
Do not remove the areas from the element-structure to prevent components having child-components.

Generated at Mon Feb 12 06:15:43 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.