dotCMS / dotCMS/core

UVE Style Editor Property Change Reverses Contentlet Order

Open
#35,114 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

OKR : Customer Support stale Team : Scout
Dominant language
Java
Stars
970
Forks
486
Avg merge
3d 33m
Merged PRs (30d)
170

Description

https://github.com/user-attachments/assets/ff3a84d8-382e-4d2a-8332-24f923477182

Problem Statement

The Universal Visual Editor (UVE) includes a "Style Editor" feature designed to manage dynamic, user-defined properties for contentlets (e.g., styles, values). These properties are editable and tied to individual contentlets.

However, when a style property of any contentlet within a container is modified using the Style Editor, the order of all contentlets within that container unexpectedly reverses. For example, if a container has contentlets A and B, changing a style property for A or B will result in the order becoming B then A.

This problem is consistently reproducible in both Headless and Traditional rendering modes. It represents a severe flaw as property changes should only affect the properties themselves, not alter the structural integrity or order of contentlets, containers, or any other page elements. This bug severely impacts content editors and developers by causing unintended page layout shifts, making the Style Editor unreliable for maintaining consistent page structures.

https://github.com/user-attachments/assets/81f56e3a-192a-4204-94fb-e1306b203f38

Steps to Reproduce

If video is not possible, follow these detailed steps:

  1. Access a page in the UVE (Universal Visual Editor).
  2. Add a container to the page.
  3. Inside the container, add at least two contentlets, ensuring they are in a specific order (e.g., "Contentlet A" followed by "Contentlet B").
  4. Select either Contentlet A or Contentlet B.
  5. Open the "Style Editor" for the selected contentlet.
  6. Modify the value of any existing dynamic style property.
  7. Save the changes made in the Style Editor.
  8. Observe the contentlets within the container on the page.

Expected Result: The order of contentlets within the container remains unchanged (A - B). Only the style property of the modified contentlet should be updated.
Actual Result: The order of contentlets within the container is reversed (B - A).

Acceptance Criteria

To resolve this issue, the following objective must be met:

  • Modifying a dynamic style property via the UVE's Style Editor for a contentlet MUST NOT alter the order of contentlets within its container.
  • Modifying a dynamic style property via the UVE's Style Editor for a contentlet MUST NOT alter the order of containers or any other structural elements on the page.
  • The only change resulting from a Style Editor property modification should be the value of the specific property being edited.
dotCMS Version

Latest from main branch

Severity

Low - Minor issue or cosmetic

Links

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the reversal in the UVE Style Editor in both Headless and Traditional rendering modes, then trace the property-save path and how it updates contentlets in a container. Done means changing a dynamic style property updates only that property and preserves the order of contentlets, containers, and other page elements.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.