adobe / adobe/aem-core-wcm-components

Panel Selector for Accordion/Tabs/Carousel missing when page loaded first in Preview

Open
#2,833 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
796
Forks
776
Avg merge
3d 22h
Merged PRs (30d)
8

Description

Bug Present as of Version: 2.25.5-SNAPSHOT

If the page editor is first loaded in Preview mode and then switched to Edit mode the Panel Selector icon in the component toolbar does not show for Accordion, Carousel, and Tabs components. The author must refresh the entire page (in Edit mode) to restore the Panel Selector icon in the toolbar.

This is b/c the HTL code in the .html files for Accordion/Carousel/Tabs only sets the `data-panelcontainer` value if `wcmmode.edit` which is only true if the page is loaded in Edit mode. Swapping from Preview mode to Edit mode does not refresh the page, and thus does not re-run the HTML.

Example from tabs.html:
```
data-panelcontainer="${wcmmode.edit && 'tabs'}"
```
should be updated to
```
data-panelcontainer="${!wcmmode.disabled && 'tabs'}"
```

This update should be made in all 3 components.

**Special Note:** This issue is NOT reproducible in the WCM Core Brand Library of Core Components Examples, b/c the wrapping `Demo` component forces the `wcmmode` of the displayed child components to `Edit`, thus masking the bug.

Contributor guide

Open the contributing guide

Research direction

Start with tabs.html and the corresponding Accordion and Carousel HTML templates, then inspect how each sets the data-panelcontainer value. Update all three components so the Panel Selector remains available after switching from Preview to Edit without a full refresh, and verify the toolbar behavior in that sequence.

Written by the indexing model from the issue text.

Assessment

Tech stack
html
Domain
frontend
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.