Skip to content

fix: Icon row placeholder shows the colour the page or application inherits EXO-90337 - #578

Merged
MayTekayaa merged 1 commit into
feature/devxfrom
exo-90337
Oct 7, 2026
Merged

MayTekayaa merged 1 commit into
feature/devxfrom
exo-90337

Conversation

@MayTekayaa

Copy link
Copy Markdown
Contributor

Symptom

With a Page & Apps icon colour set in Branding, the Edit Page drawer's Icon row shows its dimmed Inherited swatch in the built-in grey, not the configured colour; the application editor shows the grey too once the page stores an icon colour (EXO-90337, PO feedback on US04).

Cause

The shared text input (Meeds-io/social, styling-inputs/TextInput.vue) passed the built-in #707070 as the Icon row's placeholder at every level, by design of note 51586 §4 (D6). The PO ruled on EXO-90337 that the page-level row shows the platform's customised colour and the application-level row shows the page's; nothing is stored until the user picks (D6 kept). The editors never resolved that colour.

Fix

  • ApplicationUtils.getThemeColor(name): the value of a branding theme variable as computed at the document root, null when the branding stylesheet emits initial.
  • EditPageDrawer.vue: the platform's --allPagesAppIconColor.
  • common-layout/EditApplicationDrawer.vue: the page root container's stored icon colour, else the platform's.
  • The site layout editor drawers are unchanged and keep the built-in grey.

Known limit, left to the PO: a colour the site stores on its own page area (the site layout editor's page properties, middleCenterContainer) is inherited by every page of the site at view time but is not read by the page editor, which renders the page alone, outside the site layout that carries that colour, and reads the theme at the document root; the page and application placeholders then show the platform's colour, and covering it needs a fetch of the site layout at open.

Depends on the iconPlaceholder prop of the shared text input in Meeds-io/social, same task id.

Verified with eslint on the changed files and a headless Chrome check of getThemeColor: an initial custom property computes to the empty string, a set one and transparent come back as written. No committed JS test (frontend-vue.md).

Knowledge: owed by the eXIP's knowledge update (EXO-90341), gated at the feature/mips integration PR.

This change is classified N3 at a7b90cd: editor-side placeholder only, no REST/DAO/schema/ACL surface touched (classification.md §3); the delivery is N1 by max-severity at the feature/mips integration PR.

🤖 Generated with Claude Code

…herits EXO-90337

**Symptom**

With a Page & Apps icon colour set in Branding, the Edit Page drawer's Icon row shows its dimmed `Inherited` swatch in the built-in grey, not the configured colour; the application editor shows the grey too once the page stores an icon colour.

**Cause**

The shared text input (Meeds-io/social, `styling-inputs/TextInput.vue`) passed the built-in `#707070` as the Icon row's placeholder at every level, by design of note 51586 §4 (D6). The PO ruled on EXO-90337 that the page-level row shows the platform's customised colour and the application-level row shows the page's; nothing is stored until the user picks (D6 kept). The editors never resolved that colour.

**Fix**

- `ApplicationUtils.getThemeColor(name)`: the value of a branding theme variable as computed at the document root, null when the branding stylesheet emits `initial`.
- `EditPageDrawer.vue`: the platform's `--allPagesAppIconColor`.
- `common-layout/EditApplicationDrawer.vue`: the page root container's stored icon colour, else the platform's.
- The site layout editor drawers are unchanged and keep the built-in grey.

Known limit, left to the PO: a colour the site stores on its own page area (the site layout editor's page properties, `middleCenterContainer`) is inherited by every page of the site at view time but is not read by the page editor, which renders the page alone, outside the site layout that carries that colour, and reads the theme at the document root; the page and application placeholders then show the platform's colour, and covering it needs a fetch of the site layout at open.

Depends on the `iconPlaceholder` prop of the shared text input in Meeds-io/social under the same task id.

Verified with eslint on the changed files and a headless Chrome check of `getThemeColor`: an `initial` custom property computes to the empty string, a set one and `transparent` come back as written. No committed JS test (frontend-vue.md).

This change is classified N3: editor-side placeholder only, no REST/DAO/schema/ACL surface touched (`classification.md` §3); the delivery is N1 by max-severity at the `feature/mips` integration PR.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@sonarqubecloud

sonarqubecloud Bot commented Oct 6, 2026

Copy link
Copy Markdown

@MayTekayaa
MayTekayaa merged commit 116aacc into feature/devx Oct 7, 2026
6 checks passed
@MayTekayaa
MayTekayaa deleted the exo-90337 branch October 7, 2026 08:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

partialCIBuild Perform Partial CI Build

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant