Feature Language Change Conflicting Files NPM Resource Changed PR-6.2-dev Pending

User tests: Successful: Unsuccessful:

avatar TLWebdesign
TLWebdesign
10 Apr 2026

Pull Request resolves # .

  • I read the Generative AI policy and my contribution is either not created with the help of AI or is compatible with the policy and GNU/GPL 2 or later.

Summary of Changes

This pull request adds module assignment inheritance for menu items.
This is one of the projects from the Joomla 8 Sprint. More info here: https://developer.joomla.org/features/45-joomla-6-x/53-simplify-onboarding/995-ui-ux-intelligent-module-assignment.html

  • Adds an optional inherit flag to #__modules_menu.
  • Adds a component option to enable or disable module inheritance (opt-in).
  • Extends the module assignment UI with inheritance controls for parent menu items.
  • Supports Inherit for direct children and Inherit all for the full descendant tree.
  • Materializes inherited module assignments when menu items are saved, copied, or moved.
  • Preserves inheritance settings when modules are copied or duplicated.
  • Improves the module assignment tree UI by locking inherited items, showing an “Inherited from ancestor” badge, and clearing inheritance when using the global “Assign to menu items -> None” action.
  • Adds accessibility labels for the inheritance dropdowns.

Testing Instructions

  1. Go to System -> Manage -> Extensions -> Modules -> Options.
  2. Enable module inheritance.
  3. Create or edit a site module.
  4. Open the Menu Assignment tab.
  5. Select a parent menu item that has child menu items.
  6. Set the parent item inheritance dropdown to Direct sub-items.
  7. Confirm only direct child menu items are selected and locked.
  8. Change the parent item inheritance dropdown to All sub-items.
  9. Confirm all descendant menu items are selected and locked.
  10. Confirm descendant inheritance dropdowns are hidden and replaced with an Inherited from ancestor badge.
  11. Save the module.
  12. Reopen the module and confirm the inheritance setting is retained only on the configured parent item.
  13. Create a new child menu item below the inherited parent.
  14. Confirm the module assignment is applied to the new child menu item after saving.
  15. Move a menu item or subtree below a parent with inheritance enabled.
  16. Confirm inherited module assignments are applied to the moved item or subtree.
  17. In the module assignment tree, click the global None button.
  18. Confirm all menu assignments are unchecked and all inheritance dropdown values are reset to No inheritance.

Actual result BEFORE applying this Pull Request

  • Module assignments can only be configured manually per module and menu item.
  • When assigning a module to a parent menu item, child menu items do not automatically receive that module assignment. Site administrators need to manually select each child item, and newly created or moved child menu items do not inherit the parent’s module assignment.
  • There is no UI to indicate or manage module assignment inheritance in the menu assignment tree.

Expected result AFTER applying this Pull Request

  • When module inheritance is enabled, site administrators can configure module assignment inheritance directly in the module assignment tree.
  • A parent menu item can be set to inherit assignments to direct children or to all descendants. Inherited child items are automatically selected and locked in the UI, while descendant inheritance controls covered by Inherit all show an Inherited from ancestor badge instead of a misleading
    disabled dropdown.
  • Saving, copying, and moving menu items applies the relevant inherited module assignments automatically. The assignment UI remains accessible, and the inheritance dropdowns have meaningful accessible names.

Link to documentations

Please select:

  • Documentation link for guide.joomla.org:

  • No documentation changes for guide.joomla.org needed

  • Pull Request link for manual.joomla.org:

  • No documentation changes for manual.joomla.org needed

avatar TLWebdesign TLWebdesign - open - 10 Apr 2026
avatar TLWebdesign TLWebdesign - change - 10 Apr 2026
Status New ⇒ Pending
avatar joomla-cms-bot joomla-cms-bot - change - 10 Apr 2026
Category ⇒ SQL Administration com_admin Postgresql com_menus com_modules Language & Strings Repository NPM Change JavaScript Installation
avatar TLWebdesign TLWebdesign - change - 10 Apr 2026
The description was changed
avatar TLWebdesign TLWebdesign - edited - 10 Apr 2026
avatar TLWebdesign TLWebdesign - change - 10 Apr 2026
Labels Added: Language Change NPM Resource Changed PR-6.2-dev
avatar TLWebdesign TLWebdesign - change - 10 Apr 2026
The description was changed
avatar TLWebdesign TLWebdesign - edited - 10 Apr 2026
avatar github-actions[bot]
github-actions[bot] - comment - 12 Apr 2026

This pull request has conflicts, please resolve those before we can evaluate the pull request.

avatar TLWebdesign TLWebdesign - change - 30 Apr 2026
Labels Added: Conflicting Files
avatar joomla-cms-bot joomla-cms-bot - change - 30 Apr 2026
Category SQL Administration com_admin Postgresql com_menus com_modules Language & Strings Repository NPM Change JavaScript Installation ⇒ SQL Administration com_admin Postgresql com_menus com_modules Language & Strings Installation JavaScript
avatar brianteeman
brianteeman - comment - 9 May 2026

@TLWebdesign any chance of fixing the conflicts and moving out of draft status so it can be tested in time for the 6.2 release please

avatar TLWebdesign TLWebdesign - change - 9 May 2026
Labels Added: Feature
Removed: Conflicting Files NPM Resource Changed
avatar TLWebdesign
TLWebdesign - comment - 9 May 2026

@brianteeman i think i fixed it now.

avatar exlemor exlemor - test_item - 13 May 2026 - Tested successfully
avatar exlemor
exlemor - comment - 13 May 2026

I have tested this item ✅ successfully on 008aaaf

I have successfully tested this PR. Seems to work great now! (hug)

Thanks @TLWebdesign!


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar exlemor
exlemor - comment - 13 May 2026

I have tested this item ✅ successfully on 008aaaf

I have successfully tested this PR. Seems to work great now! (hug)

Thanks @TLWebdesign!


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar LadySolveig
LadySolveig - comment - 14 May 2026

Nice work @TLWebdesign ! Found an inconsistent behaviour when "inherit" or "inherit all" is set on a parent, the subtree items of type url/heading/alias/separator were skipped during force-checking, leaving them unchecked while their siblings
appeared checked. But after save and reload all are checked.

Additionally, switching back to "no inheritance" left these items stuck in their previous checked state with no way
to manually correct it since they are always disabled. Everything is displayed consistently again only after reloading the page.

This is happening on chrome and firefox - I made you a screen-record.

module_inherit.mp4

The changes in my review fixes this inconsistency.

Even though it makes perfect sense to me to mark these types (like alias, url etc.) as well in conjunction with the new "Inherit" option. I still find it confusing that they are marked in the exact same way, given that it is quite obviously impossible to load a module onto them (since there is, after all, no actual page to load a module for these types).

Instead of this...

grafik

I personally would prefer something like this

grafik

I opened a PR on your Repo for this additional style changes,

TLWebdesign#1

Now you can decide, if you only want the js fix from the review or both :)

avatar LadySolveig
LadySolveig - comment - 14 May 2026

Nice work @TLWebdesign ! Found an inconsistent behaviour when "inherit" or "inherit all" is set on a parent, the subtree items of type url/heading/alias/separator were skipped during force-checking, leaving them unchecked while their siblings appeared checked. But after save and reload all are checked.

Additionally, switching back to "no inheritance" left these items stuck in their previous checked state with no way
to manually correct it since they are always disabled. Everything is displayed consistently again only after reloading the page.

This is happening on chrome and firefox - I made you a screen-record.

module_inherit.mp4

The changes in my review fixes this inconsistency.

Even though it makes perfect sense to me to mark these types (like alias, url etc.) as well in conjunction with the new "Inherit" option. I still find it confusing that they are marked in the exact same way, given that it is quite obviously impossible to load a module onto them (since there is, after all, no actual page to load a module for these types).

Instead of this...

grafik

I personally would prefer something like this

grafik

I opened a PR on your Repo for this additional style changes,

TLWebdesign#1

Now you can decide, if you only want the js fix from the review or both :)

avatar TLWebdesign
TLWebdesign - comment - 14 May 2026

Of course i want improvements. Thanks very much 😁

avatar LadySolveig
LadySolveig - comment - 14 May 2026

Only one questiion - if I move a menu item out of subtree that was inherit

grafik

than it is expected behaviour that it stays checked, right?

grafik
avatar TLWebdesign
TLWebdesign - comment - 14 May 2026

Yes things should stay checked.

avatar LadySolveig LadySolveig - test_item - 14 May 2026 - Tested successfully
avatar LadySolveig
LadySolveig - comment - 14 May 2026

I have tested this item ✅ successfully on 0457056


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar LadySolveig
LadySolveig - comment - 14 May 2026

I have tested this item ✅ successfully on 0457056


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar exlemor exlemor - test_item - 14 May 2026 - Tested successfully
avatar exlemor
exlemor - comment - 14 May 2026

I have tested this item ✅ successfully on 0457056

Hi @TLWebdesign, I was able to test this again - successfully (and the grey-out checkbox on Safari for Heading, URL etc are better).

I get the use of the feature, and I like it... the only thing visually that makes it a bit hard on my brain is the placement of the ∨ (caret symbol) between the ∟ and the ✅ on the line, it might be easier to follow visually if the order was:

∟
∨ ∟ ✅
∨ ∟ ⃞

instead of:

∟
∟ ∨ ✅
∟ ∨ ⃞


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar exlemor
exlemor - comment - 14 May 2026

I have tested this item ✅ successfully on 0457056

Hi @TLWebdesign, I was able to test this again - successfully (and the grey-out checkbox on Safari for Heading, URL etc are better).

I get the use of the feature, and I like it... the only thing visually that makes it a bit hard on my brain is the placement of the ∨ (caret symbol) between the ∟ and the ✅ on the line, it might be easier to follow visually if the order was:

∟
∨ ∟ ✅
∨ ∟ ⃞

instead of:

∟
∟ ∨ ✅
∟ ∨ ⃞


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar TLWebdesign TLWebdesign - change - 17 May 2026
Labels Added: Updates Requested
avatar richard67 richard67 - change - 17 May 2026
Labels Removed: Updates Requested
avatar richard67 richard67 - alter_testresult - 17 May 2026 - LadySolveig: Tested successfully
avatar richard67 richard67 - alter_testresult - 17 May 2026 - exlemor: Tested successfully
avatar TLWebdesign
TLWebdesign - comment - 17 May 2026

I get the use of the feature, and I like it... the only thing visually that makes it a bit hard on my brain is the placement of the ∨ (caret symbol) between the ∟ and the ✅ on the line, it might be easier to follow visually if the order was:

That would be separate PR and out of scope of this one. The caret before the content makes sense to me tho because you are expanding the thing that comes after it. instead of what is "around" it if you adjust it like you proposed.

avatar richard67 richard67 - alter_testresult - 17 May 2026 - LadySolveig: Tested successfully
avatar richard67 richard67 - alter_testresult - 17 May 2026 - exlemor: Tested successfully
avatar richard67
richard67 - comment - 17 May 2026

I've restored the previous human test results in the issue tracker as the 2 commits which have invalidated the test count were not related to the tests:

  • The update SQL scripts where changed to use the /** CAN FAIL **/ installer hint. That has been suggested by me and I have verified that it has been applied correctly in this PR.
  • Code comments were improved.
avatar richard67 richard67 - change - 17 May 2026
Status Pending ⇒ Ready to Commit
avatar richard67
richard67 - comment - 17 May 2026

RTC


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar richard67
richard67 - comment - 17 May 2026

RTC


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar brianteeman
brianteeman - comment - 22 May 2026

sorry but I find this really confusing especially understanding the difference between "inherit" and "inherit all"

when i see inherit next to a menu item i assume it means that this menu item inherits its module assignments but it actually means something else "the modules for this menu item are inherited by the child menu items"

avatar brianteeman
brianteeman - comment - 22 May 2026

sorry but I find this really confusing especially understanding the difference between "inherit" and "inherit all"

when i see inherit next to a menu item i assume it means that this menu item inherits its module assignments but it actually means something else "the modules for this menu item are inherited by the child menu items" Except when its "inherited from ancesstor" when it does mean both "the menu item inherits from the parent" AND "the child menu items inherit from this setting"

avatar brianteeman
brianteeman - comment - 22 May 2026

I get the use of the feature, and I like it... the only thing visually that makes it a bit hard on my brain is the placement of the ∨ (caret symbol) between the ∟ and the ✅ on the line, it might be easier to follow visually if the order was:

100% agree with you. Even though I knew there was an open issue for this (#44764) and it was something I had even tried to fix I was still tricked by it with this PR wondering why it was inheriting by sample layouts and nto blog

image
avatar brianteeman
brianteeman - comment - 22 May 2026

i can see that this works but I find it very confusing

avatar TLWebdesign TLWebdesign - change - 22 May 2026
Labels Added: RTC
avatar bembelimen
bembelimen - comment - 23 May 2026

i can see that this works but I find it very confusing

Do you have any idea how to improve?

avatar brianteeman
brianteeman - comment - 23 May 2026

The first is to fix the existing bug with the way items at the same level do not appear to be when one or more also have sublevels

The other is finding different terminology as inherit is the wrong word but I don't have a suggestion yet. (Children inherit form parents but in this UI it's the parents that have the label inherit). Propogate might be a more accurate word but it's not very understandable

avatar brianteeman
brianteeman - comment - 23 May 2026

i wonder if it makes more sense in english to say inheritable instead of inherit

avatar brianteeman
brianteeman - comment - 23 May 2026

i wonder if it makes more sense in english to say inheritable instead of inherit

image
avatar TLWebdesign
TLWebdesign - comment - 23 May 2026

OK so i thought about it and discussed it with codex to be fair. We came up with these two options:
If we want to stay consistent in our naming in feature and in UI i would go for inherit. if we don't think it matters much if we call the feature "module menu inhertance" but n UI we speak about assignments, then the second option would also be an option. I prefer first.

First option

COM_MODULES_ENABLE_INHERITANCE_LABEL="Enable Module Assignment Inheritance"
COM_MODULES_ENABLE_INHERITANCE_DESC="When enabled, child menu items can inherit module assignments from parent menu items on the assignment tab."

COM_MODULES_INHERIT_NONE="No inheritance"
COM_MODULES_INHERIT="Child items inherit"
COM_MODULES_INHERIT_ALL="All descendants inherit"
COM_MODULES_INHERITANCE_MENU_ITEM_LABEL="Inheritance setting for %s"
COM_MODULES_INHERITED_FROM_ANCESTOR="Inherits from ancestor"

Second option

COM_MODULES_ENABLE_INHERITANCE_LABEL="Enable Automatic Child Assignment"
COM_MODULES_ENABLE_INHERITANCE_DESC="When enabled, modules can be automatically assigned to child menu items from the menu assignment tab."

COM_MODULES_INHERIT_NONE="No child assignment"
COM_MODULES_INHERIT="Assign to child items"
COM_MODULES_INHERIT_ALL="Assign to all descendant items"
COM_MODULES_INHERITANCE_MENU_ITEM_LABEL="Child assignment setting for %s"
COM_MODULES_INHERITED_FROM_ANCESTOR="Assigned from ancestor"
avatar rytechsites
rytechsites - comment - 26 May 2026

OK so i thought about it and discussed it with codex to be fair. We came up with these two options: If we want to stay consistent in our naming in feature and in UI i would go for inherit. if we don't think it matters much if we call the feature "module menu inhertance" but n UI we speak about assignments, then the second option would also be an option. I prefer first.

First option

COM_MODULES_ENABLE_INHERITANCE_LABEL="Enable Module Assignment Inheritance"
COM_MODULES_ENABLE_INHERITANCE_DESC="When enabled, child menu items can inherit module assignments from parent menu items on the assignment tab."

COM_MODULES_INHERIT_NONE="No inheritance"
COM_MODULES_INHERIT="Child items inherit"
COM_MODULES_INHERIT_ALL="All descendants inherit"
COM_MODULES_INHERITANCE_MENU_ITEM_LABEL="Inheritance setting for %s"
COM_MODULES_INHERITED_FROM_ANCESTOR="Inherits from ancestor"

Second option

COM_MODULES_ENABLE_INHERITANCE_LABEL="Enable Automatic Child Assignment"
COM_MODULES_ENABLE_INHERITANCE_DESC="When enabled, modules can be automatically assigned to child menu items from the menu assignment tab."

COM_MODULES_INHERIT_NONE="No child assignment"
COM_MODULES_INHERIT="Assign to child items"
COM_MODULES_INHERIT_ALL="Assign to all descendant items"
COM_MODULES_INHERITANCE_MENU_ITEM_LABEL="Child assignment setting for %s"
COM_MODULES_INHERITED_FROM_ANCESTOR="Assigned from ancestor"

I prefer the 2nd option... I think using the turn 'child assignment' goes more inline with parent vs child menu items.

avatar MacJoom
MacJoom - comment - 14 Jun 2026

I need an opinion from a native English speaker here. Technically it works — we just need to agree on the wording. I tend to prefer the second option.

avatar brianteeman
brianteeman - comment - 15 Jun 2026

@MacJoom we had a meeting about this last week. There should be a lot of changes coming - not just the strings - as other issues were identified with the UI

avatar MacJoom
MacJoom - comment - 15 Jun 2026

@MacJoom we had a meeting about this last week. There should be a lot of changes coming - not just the strings - as other issues were identified with the UI

Thanks i have it on 'Do not merge'

avatar MacJoom
MacJoom - comment - 11 Jul 2026

@TLWebdesign are there upcoming changes? as there are updates requested... Thank you

avatar MacJoom MacJoom - change - 13 Jul 2026
Status Ready to Commit ⇒ Pending
avatar MacJoom
MacJoom - comment - 13 Jul 2026

Back to pending


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar MacJoom
MacJoom - comment - 13 Jul 2026

Back to pending


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar MacJoom
MacJoom - comment - 13 Jul 2026

Back to pending


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar MacJoom
MacJoom - comment - 13 Jul 2026

Back to pending


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar TLWebdesign
TLWebdesign - comment - 14 Jul 2026

Yeah good idea. I need a couple days to get this going again. Hope to have it done soon. I wonMt do any specific promised anymore it seems i can't keep em.

avatar TLWebdesign TLWebdesign - change - 20 Jul 2026
Labels Added: Updates Requested
Removed: RTC
avatar TLWebdesign
TLWebdesign - comment - 20 Jul 2026

@MacJoom the updates that were requested and discussed have been implemented now.

avatar brianteeman
brianteeman - comment - 20 Jul 2026

all looks good to me

avatar ThomasFinnern ThomasFinnern - test_item - 24 Jul 2026 - Tested successfully
avatar ThomasFinnern
ThomasFinnern - comment - 24 Jul 2026

I have tested this item ✅ successfully on 07bee78

Stepped through Testing instruction 1-18
Anyone for front end ?


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar ThomasFinnern
ThomasFinnern - comment - 24 Jul 2026

I have tested this item ✅ successfully on 07bee78

Stepped through Testing instruction 1-18
Anyone for front end ?


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar exlemor
exlemor - comment - 31 Jul 2026

@TLWebdesign - I assume there were some changes that were not updated in the Testing Instructions as I can not find Inherit and Inherit All - I'm seeing Inherit to: None / All Direct sub-items / All sub-items.

Can you please 🙏 update the testing instructions so that we matching in our testing what you are expecting / wanting us to test initially?

During Happy Friday PR testing July 31st - Martin, Thomas and I were trying to test it and came up with this and also found a bug most likely - Martin will write a comment with screenshots.

avatar MacJoom
MacJoom - comment - 31 Jul 2026
Screenshot 2026-07-31 171552 Screenshot 2026-07-31 171623 Screenshot 2026-07-31 171641

I do not expect "Workflows" to be marked as it is not a direct sub item

avatar MacJoom
MacJoom - comment - 31 Jul 2026
Screenshot 2026-07-31 171552 Screenshot 2026-07-31 171623 Screenshot 2026-07-31 171641

I do not expect "Workflows" to be marked as it is not a direct sub item
The display is wrong. Workflows was marked correctly.

avatar MacJoom
MacJoom - comment - 31 Jul 2026
Screenshot 2026-07-31 171552 Screenshot 2026-07-31 171623 Screenshot 2026-07-31 171641

I do not expect "Workflows" to be marked as it is not a direct sub item
The display is wrong. Workflows was marked correctly.
Fix might be: #48125

avatar MacJoom
MacJoom - comment - 31 Jul 2026
Screenshot 2026-07-31 171552 Screenshot 2026-07-31 171623 Screenshot 2026-07-31 171641

I do not expect "Workflows" to be marked as it is not a direct sub item
The display is wrong. Workflows was marked correctly.
Fix is #48125 (now tested by me...)

avatar MacJoom
MacJoom - comment - 31 Jul 2026
Screenshot 2026-07-31 171641

I do not expect "Workflows" to be marked as it is not a direct sub item
The display is wrong. Workflows was marked correctly.
Fix is #48125 (now tested by me...)

avatar MacJoom
MacJoom - comment - 31 Jul 2026
Screenshot 2026-07-31 172741 Strange enough it works further below
avatar MacJoom
MacJoom - comment - 31 Jul 2026
Screenshot 2026-07-31 172741 Strange enough it works further below
avatar MacJoom
MacJoom - comment - 31 Jul 2026

Testing instructions:
Step 6 instead of "inherit" select "Direct sub-items"
Step 8 instead of "inherit all" select "All sub-items"

avatar TLWebdesign TLWebdesign - change - 31 Jul 2026
The description was changed
avatar TLWebdesign TLWebdesign - edited - 31 Jul 2026
avatar TLWebdesign TLWebdesign - change - 31 Jul 2026
The description was changed
avatar TLWebdesign TLWebdesign - edited - 31 Jul 2026
avatar TLWebdesign
TLWebdesign - comment - 31 Jul 2026

Testing instructions:

Step 6 instead of "inherit" select "Direct sub-items"

Step 8 instead of "inherit all" select "All sub-items"

Thanks i updated the instructions. 👍

avatar TLWebdesign TLWebdesign - change - 31 Jul 2026
Labels Removed: Updates Requested
avatar brianteeman
brianteeman - comment - 1 Aug 2026

@MacJoom just confirming that your "bug" was just a result of the cosmetic issue that has been fixed in the other PR which made things look nexted when they were not etc

avatar brianteeman
brianteeman - comment - 1 Aug 2026

I just spent 30 minutes checking to see why I couldnt see any of the new menu assignment options. I had completely forgotten that I needed to enable the option first.

Does this really need to be an option that you enable. From what I can see (i could be mistaken) enabling this by default has no negative effect.

avatar brianteeman
brianteeman - comment - 1 Aug 2026

When you set an inheritance it checks the menu items
When you unset an inheritance it keeps the menu items checked
that all makes sense

Until you have a three level menu as the 2nd level now says interit none but the items below are checked

Inherit all sub-items

image

Change to inherit none

image

Proposed solution

To avoid confusion with someone saying why does it say inherit none but they appear to be inherited I propose to change the language string from NONE to Not Set

image
avatar brianteeman brianteeman - test_item - 1 Aug 2026 - Tested successfully
avatar brianteeman
brianteeman - comment - 1 Aug 2026

I have tested this item ✅ successfully on 07bee78

marking as a successful test as it does what it says. I would still like to see the changed language string and to reconsider it being off by default


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar brianteeman
brianteeman - comment - 1 Aug 2026

I have tested this item ✅ successfully on 07bee78

marking as a successful test as it does what it says. I would still like to see the changed language string and to reconsider it being off by default


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar MacJoom
MacJoom - comment - 2 Aug 2026
Screenshot 2026-08-02 153127 If a module is set to inherit to “All sub-items”, rows are set for grandchildren. Later changing the source to “Direct sub-items” leaves the old grandchild rows checked as baseline assignments in the UI and they get saved back as manual rows. Result: the module continues displaying on menu items that are no longer covered by inheritance. Screenshot 2026-08-02 153227
avatar MacJoom
MacJoom - comment - 2 Aug 2026
Screenshot 2026-08-02 153127 If a module is set to inherit to “All sub-items”, rows are set for grandchildren. Later changing the source to “Direct sub-items” leaves the old grandchild rows checked as baseline assignments in the UI and they get saved back as manual rows. Result: the module continues displaying on menu items that are no longer covered by inheritance. Screenshot 2026-08-02 153227

I would expect the grandchildren to be set back to the original state - or do i overlook something?

avatar TLWebdesign
TLWebdesign - comment - 2 Aug 2026
Screenshot 2026-08-02 153127

If a module is set to inherit to “All sub-items”, rows are set for grandchildren. Later changing the source to “Direct sub-items” leaves the old grandchild rows checked as baseline assignments in the UI and they get saved back as manual rows. Result: the module continues displaying on menu items that are no longer covered by inheritance.

Screenshot 2026-08-02 153227

I would expect the grandchildren to be set back to the original state - or do i overlook something?

Yes that is intended behaviour. You turned inheritance on. Then when you unset inheritance we never remove already assigned items so things just don't dissapear by themselves.

avatar MacJoom
MacJoom - comment - 2 Aug 2026

I disagree - when i remove inheritance i expect the previous state to be restored. Would you consider adding a second field that carry the previous state?

Screenshot 2026-08-02 153127 If a module is set to inherit to “All sub-items”, rows are set for grandchildren. Later changing the source to “Direct sub-items” leaves the old grandchild rows checked as baseline assignments in the UI and they get saved back as manual rows. Result: the module continues displaying on menu items that are no longer covered by inheritance. Screenshot 2026-08-02 153227 I would expect the grandchildren to be set back to the original state - or do i overlook something?

Yes that is intended behaviour. You turned inheritance on. Then when you unset inheritance we never remove already assigned items so things just don't dissapear by themselves.

I disagree - when i remove inheritance i expect the previous state to be restored. Would you consider adding a second field that carry the previous state?

avatar TLWebdesign
TLWebdesign - comment - 2 Aug 2026

No that is not wanted. This has been discussed and agreed on with multiple people during development and considered the way it should be. Not planning to change that now.

avatar brianteeman
brianteeman - comment - 2 Aug 2026

Unless I misunderstood your request @MacJoom then this is already possible

thorium_iN5AUAxHkY.mp4
avatar rytechsites
rytechsites - comment - 4 Aug 2026

I disagree - when i remove inheritance i expect the previous state to be restored. Would you consider adding a second field that carry the previous state?

Screenshot 2026-08-02 153127 If a module is set to inherit to “All sub-items”, rows are set for grandchildren. Later changing the source to “Direct sub-items” leaves the old grandchild rows checked as baseline assignments in the UI and they get saved back as manual rows. Result: the module continues displaying on menu items that are no longer covered by inheritance. Screenshot 2026-08-02 153227 I would expect the grandchildren to be set back to the original state - or do i overlook something?

Yes that is intended behaviour. You turned inheritance on. Then when you unset inheritance we never remove already assigned items so things just don't dissapear by themselves.

I disagree - when i remove inheritance i expect the previous state to be restored. Would you consider adding a second field that carry the previous state?

I don't think at this stage we can add that functionality. Since module versions is a functionality in J6, does Module versions include the 'menu selection'? If so, then yes you can already do this.

avatar TLWebdesign
TLWebdesign - comment - 4 Aug 2026

I have tested this item ✅ successfully on 07bee78

marking as a successful test as it does what it says. I would still like to see the changed language string and to reconsider it being off by default


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

Should i change that language string now? It will undo the test, right? Not sure if i should do it now or later.

avatar brianteeman
brianteeman - comment - 4 Aug 2026

I can always mark the test again, that is if you agree with the change

avatar brianteeman
brianteeman - comment - 4 Aug 2026

I still wonder if it should be enabled by default. It doesn't break anything and it would be one less Secret setting

avatar TLWebdesign
TLWebdesign - comment - 4 Aug 2026

I still wonder if it should be enabled by default. It doesn't break anything and it would be one less Secret setting

Yeah i' e been thinking about that. But i feel not having it enabled by default does make the layout a bit cleaner and probably less overwhelming for not so tech savy users. When it is enabled it does add a lot more stuff to the view. Especially if you try it out. Also having it enabled by default would make it the issue martin talked about; not unselecting after enabling inheritance a bigger issue because people who are not looking for the feature will turn it on and off out of curiousity and then their menu items are all selected. Of course a page refresh is an easy fix. I just don't want to make things more "complicated" than it needs to be. So i'm torn about it. @bembelimen @LadySolveig @rytechsites what do you think about this?

avatar TLWebdesign
TLWebdesign - comment - 4 Aug 2026

I updated the language constant to Not set. Thanks 😊

avatar brianteeman
brianteeman - comment - 4 Aug 2026

strange it didnt reset the tests


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar brianteeman
brianteeman - comment - 4 Aug 2026

strange it didnt reset the tests


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/47570.

avatar richard67
richard67 - comment - 4 Aug 2026

strange it didnt reset the tests

Yes, strange. I have just triggered a branch update, but that also did not reset the tests in the issue tracker.

They can be reset with the "Alter test" feature in the issue tracker.

Shall I do that?

avatar brianteeman
brianteeman - comment - 4 Aug 2026

@richard67 your call but I only knew it hadnt reset because I went to put my new success test message so probably not worth your time

avatar LadySolveig
LadySolveig - comment - 7 Aug 2026

For me personally, this is quite a complex feature, one that I probably wouldn’t even enable on most sites. It’s great that power users now have this option, but I agree with @TLWebdesign it can certainly be overwhelming and quickly become confusing for less experienced users. I wouldn’t enable it by default.

avatar TLWebdesign
TLWebdesign - comment - 13 Aug 2026

Seems consensus is we want it behind a setting. So i think it is ready like this?

avatar brianteeman
brianteeman - comment - 13 Aug 2026

Seems consensus is we want it behind a setting. So i think it is ready like this?

i wish we were consistent on this.

avatar angieradtke
angieradtke - comment - 25 Aug 2026

I was just on Tom’s test server checking out the current implementation. I wasn’t a super user there, though.

The view within the Menu Assignments section confused me a bit at first. It seems I now have two ways to select checkboxes: one is via the “Select/Deselect” buttons next to the menu items, and the other is via the new selection options.

At first glance, it wasn’t immediately clear to me which selection is relevant for module assignment and what function the additional selection serves. After taking a closer look, the difference becomes clearer, but I wonder if we should distinguish the two functions even more clearly for users—or perhaps even standardize them. However, I haven’t delved deeply enough into the current implementation yet to be able to make a definitive judgment.

On the other hand, we should perhaps test what happens when a module is loaded within a menu module. I’m not sure if this could have any implications. This scenario could arise, for example, if you want to load a search module in the same area where the menu is displayed.

avatar angieradtke
angieradtke - comment - 25 Aug 2026

I was just on Tom’s test server checking out the current implementation. I wasn’t a super user there, though.

The view within the Menu Assignments section confused me a bit at first. It seems I now have two ways to select checkboxes: one is via the “Select/Deselect” buttons next to the menu items, and the other is via the new selection options.

At first glance, it wasn’t immediately clear to me which selection is relevant for module assignment and what function the additional selection serves. After taking a closer look, the difference becomes clearer, but I wonder if we should distinguish the two functions even more clearly for users—or perhaps even standardize them. However, I haven’t delved deeply enough into the current implementation yet to be able to make a definitive judgment.

On the other hand, we should perhaps test what happens when a module is loaded within a menu module. I’m not sure if this could have any implications. This scenario could arise, for example, if you want to load a search module in the same area where the menu is displayed.
I just tested that, and it worked like expected. :-)

The user-friendliness is a bit of an issue, because when you select something, it’s not immediately clear what it’s for. But since you can disable the entire feature ...

Maybe it’s a helpful “expert mode.” :-)
@brianteeman , I’m sure you’ve checked the accessibility, right?

avatar brianteeman
brianteeman - comment - 25 Aug 2026

@brianteeman , I’m sure you’ve checked the accessibility, right?

as the entire page is not-accessible before this PR its not any worse with this PR

avatar github-actions[bot]
github-actions[bot] - comment - 1 Sep 2026

This pull request has conflicts, please resolve those before we can evaluate the pull request.

avatar TLWebdesign TLWebdesign - change - 1 Sep 2026
Title
…
[6.2] Feature Module Inheritance
[6.3] Feature Module Inheritance
avatar TLWebdesign TLWebdesign - edited - 1 Sep 2026
avatar joomla-cms-bot joomla-cms-bot - change - 1 Sep 2026
Category SQL Administration com_admin Postgresql com_menus com_modules Language & Strings JavaScript Installation ⇒ SQL Administration com_admin Postgresql com_menus com_modules Language & Strings Installation NPM Change JavaScript
avatar richard67 richard67 - change - 1 Sep 2026
Labels Added: Conflicting Files NPM Resource Changed
avatar TLWebdesign
TLWebdesign - comment - 1 Sep 2026

since this one is not going into 6.2 should we just let it be for now and fix all problems when 6.3 alpha 1 is ready? I don't feel like keeping this thing up to date for half a year. Can just fix it all when it is time for 6.3, right?

avatar richard67
richard67 - comment - 1 Sep 2026

since this one is not going into 6.2 should we just let it be for now and fix all problems when 6.3 alpha 1 is ready? I don't feel like keeping this thing up to date for half a year. Can just fix it all when it is time for 6.3, right?

@TLWebdesign I don't know if it will go into 6.2 or not. For now I have allowed myself to fix the merge conflicts in the 2 base.sql files and to rename your update SQL scripts to something newer than the latest one in the branch so your PR would be ready again for 6.2-dev.

avatar TLWebdesign
TLWebdesign - comment - 1 Sep 2026

We're at beta 2 today so yeah it's not going into 6.2 We're past that stage. But thanks for fixing it i guess. Just don't waste too much time on this until it makes sense to fix things when 6.3 is there.

Add a Comment

Login with GitHub to post a comment