From 1bc0b68368a94ea71241afc4f8b6071459a4b824 Mon Sep 17 00:00:00 2001
From: Samuel Renault <58853195+srenault-meeds@users.noreply.github.com>
Date: Fri, 16 Oct 2026 09:38:25 +0200
Subject: [PATCH 1/4] fix: the task drawer's actions menu takes the drawers and
popups background set in Branding EXO-91408 (#673)
(cherry picked from commit e07cffcad6399b9d73780c4a5f81358963ca616e)
---
.../main/webapp/vue-app/taskDrawer/components/TaskDrawer.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/webapps/src/main/webapp/vue-app/taskDrawer/components/TaskDrawer.vue b/webapps/src/main/webapp/vue-app/taskDrawer/components/TaskDrawer.vue
index ecba40ad9..c9847096c 100644
--- a/webapps/src/main/webapp/vue-app/taskDrawer/components/TaskDrawer.vue
+++ b/webapps/src/main/webapp/vue-app/taskDrawer/components/TaskDrawer.vue
@@ -77,7 +77,7 @@
fa-ellipsis-v
-
+
Date: Fri, 16 Oct 2026 10:58:33 +0200
Subject: [PATCH 2/4] fix: the Tasks app shows the application background set
in Branding, colour and image EXO-91474 (#674)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
**Symptom**: with a background set for applications in Branding, the
rows of the Tasks list, and of a project's List view, stayed light grey
instead of showing it, and a background image set for applications
showed nowhere in the Tasks app.
**Cause**: the rows were painted with `@tableBackgroundAccent`
(`tasks.less`), a fixed grey that no Branding key drives. The
`TasksManagement` portlet opts out of the frame's background colour
(`no-layout-background-color`), and its two cards, the tab bar and the
tab content (`TasksManagement.vue`), paint
`application-background-color`, opaque by default, over the image that
the portlet frame (`PORTLET-FRAGMENT`) still painted.
**Fix**:
- the rows are transparent and keep their border, so they show the
application background;
- both cards carry `application-background-image` beside
`application-background-color`, and the portlet's `layout-css-class`
gains `no-layout-background-image`, so the frame paints neither and the
gap between the cards shows the page for the image as for the colour.
The image is painted per card, fitted to each card's box.
No automated test: CSS and template classes only (`frontend-vue.md`, no
JS unit test). Checked on a running 7.3.x `feature/ai-contribution`
server: the rows show the Branding application colour; the Branding
application image shows on the tab bar and on the content card, and
through the rows, on the Tasks tab and on a project's List view.
Knowledge: pending โ EXO-91474
This change is classified N3 at `b47b02feb`: no REST/DAO/schema/ACL
surface touched (`classification.md` ยง3).
๐ค Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Opus 5.5 (1M context)
(cherry picked from commit 70c60cfeb1fd2b306b48d1eeb9da8a24a46a4aa8)
---
webapps/src/main/webapp/WEB-INF/portlet.xml | 2 +-
webapps/src/main/webapp/skin/css/tasks.less | 3 ++-
.../vue-app/tasks-management/components/TasksManagement.vue | 4 ++--
3 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/webapps/src/main/webapp/WEB-INF/portlet.xml b/webapps/src/main/webapp/WEB-INF/portlet.xml
index 79ba66b86..5f09454c7 100644
--- a/webapps/src/main/webapp/WEB-INF/portlet.xml
+++ b/webapps/src/main/webapp/WEB-INF/portlet.xml
@@ -63,7 +63,7 @@
layout-css-class
- no-layout-background-color no-layout-border-radius no-layout-border
+ no-layout-background-color no-layout-background-image no-layout-border-radius no-layout-border
text/html
diff --git a/webapps/src/main/webapp/skin/css/tasks.less b/webapps/src/main/webapp/skin/css/tasks.less
index 116897f8f..ba81cb3e9 100644
--- a/webapps/src/main/webapp/skin/css/tasks.less
+++ b/webapps/src/main/webapp/skin/css/tasks.less
@@ -1340,7 +1340,8 @@
}
.tasksListItem {
.taskListItemView {
- background-color: @tableBackgroundAccent;
+ /* Rows show the application background set in Branding, colour and image */
+ background-color: transparent;
border: 1px solid @tableBorder;
border-radius: 4px;
cursor: pointer;
diff --git a/webapps/src/main/webapp/vue-app/tasks-management/components/TasksManagement.vue b/webapps/src/main/webapp/vue-app/tasks-management/components/TasksManagement.vue
index 0f0ca2935..d31d369fd 100644
--- a/webapps/src/main/webapp/vue-app/tasks-management/components/TasksManagement.vue
+++ b/webapps/src/main/webapp/vue-app/tasks-management/components/TasksManagement.vue
@@ -21,7 +21,7 @@
v-if="showTabs"
v-model="tab"
slider-size="4"
- class="tasksMenuParent application-background-color application-border application-border-radius-top">
+ class="tasksMenuParent application-background-color application-background-image application-border application-border-radius-top">
{{ $t('label.projects') }}
@@ -32,7 +32,7 @@
+ class="application-background-color application-background-image application-border">
From b71b55cdbfa148c3f06361d0bec1d2b1ba8660f9 Mon Sep 17 00:00:00 2001
From: Samuel Renault <58853195+srenault-meeds@users.noreply.github.com>
Date: Fri, 16 Oct 2026 12:36:07 +0200
Subject: [PATCH 3/4] fix: the project picker's dropdown takes the drawers and
popups background set in Branding EXO-91383 (#672)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Symptom: with a Drawers & Popup background set in Branding and Theme,
the
suggestions list of the project picker of a task event, in the
engagement center's rule form, stays white, with dark grey suggestions.
Cause: the suggestions menu is detached to the page's root application
container and keeps Vuetify's white surface. The picker's content-class
attribute lands on its input, not on the menu: Vuetify 2 takes the menu
content class only from menu-props, and the string form of menu-props
carries flags only.
Fix: menu-props takes its object form, keeping the closeOnClick and
closeOnContentClick flags, and adds the content classes layout-drawer,
which paints the Drawers & Popup colour on the menu, and
application-menu,
which lets the suggestions take the drawer text colour, size, weight and
style instead of the fixed dark grey, the page text size and the normal
weight and style the platform gives menu items, as Meeds-io/social#6233
does for exo-identity-suggester. The string's "maxHeight = 100" entry
was
read as an unknown flag and set no height, so the menu keeps its default
height.
Not covered: a Drawers & Popup background image is hidden by the list's
solid drawer colour.
Knowledge: Meeds-io/eng-standards#440
This change is classified N2 (at 97bf5ab0c7: a shared component of the
addon's common module, rendering only, no REST/DAO/schema/ACL surface) โ
its approver must be an Archi/Dev who knows it is N2, not an approval on
AI review alone.
๐ค Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Opus 5.5 (1M context)
(cherry picked from commit 2a9ff0e5d4b12ff866c49963e490a10df712cee0)
---
.../tasks-management/components/Project/ProjectSuggester.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/webapps/src/main/webapp/vue-app/tasks-management/components/Project/ProjectSuggester.vue b/webapps/src/main/webapp/vue-app/tasks-management/components/Project/ProjectSuggester.vue
index b8b7f80b8..1b7c256dc 100644
--- a/webapps/src/main/webapp/vue-app/tasks-management/components/Project/ProjectSuggester.vue
+++ b/webapps/src/main/webapp/vue-app/tasks-management/components/Project/ProjectSuggester.vue
@@ -28,7 +28,7 @@ Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
:multiple="multiple"
:hide-no-data="hideNoData"
append-icon=""
- menu-props="closeOnClick, closeOnContentClick, maxHeight = 100"
+ :menu-props="{ closeOnClick: true, closeOnContentClick: true, contentClass: 'application-menu layout-drawer' }"
class="identitySuggester identitySuggesterInputStyle"
content-class="identitySuggesterContent"
width="100%"
From 83e7470cb6b746a6c75cce8d7b230e4f1d6390cd Mon Sep 17 00:00:00 2001
From: jihed525
Date: Wed, 28 Oct 2026 09:46:54 +0100
Subject: [PATCH 4/4] fix: the task drawer's actions menu labels follow the
drawers and popups text colour EXO-91408
The actions menu is attached inside the drawer and its list is
transparent, so it shows the Drawers & Popup background set in Branding,
but without application-menu its items keep the fixed dark grey the
platform gives menu items. A dark drawer background then gets dark
labels. The menu takes application-menu, as social's
PinneableDrawer.vue and ActivityCommentMenu.vue do.
Co-Authored-By: Claude Opus 5.5
---
.../main/webapp/vue-app/taskDrawer/components/TaskDrawer.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/webapps/src/main/webapp/vue-app/taskDrawer/components/TaskDrawer.vue b/webapps/src/main/webapp/vue-app/taskDrawer/components/TaskDrawer.vue
index c9847096c..6e2f391f8 100644
--- a/webapps/src/main/webapp/vue-app/taskDrawer/components/TaskDrawer.vue
+++ b/webapps/src/main/webapp/vue-app/taskDrawer/components/TaskDrawer.vue
@@ -65,7 +65,7 @@
:left="!$vuetify.rtl"
:right="$vuetify.rtl"
transition="slide-x-reverse-transition"
- content-class="taskActionMenu z-index-modal"
+ content-class="taskActionMenu z-index-modal application-menu"
offset-y
attach>