This is actually pretty easy to change! And it isn’t Drupal core, this default is provided by the entity
module
- The
entity
module allows entities to define a (or multiple?)local_task_provider
: https://github.com/farmOS/farmOS/blob/2b430c04b8e66c83913e70932903aecd7ec3b0d5/modules/core/asset/src/Entity/Asset.php#L45-L47 - Right now we are using the
DefaultEntityLocalTaskProvider
class provided byentity
: src/Menu/DefaultEntityLocalTaskProvider.php · 8.x-1.x · project / entity · GitLab - I copied and modified that class slightly to set the
parent_id
instead ofbase_route
for the “Edit” and “Revisions” tabs to put them in sub-tabs.
I also changed the top-level “View” tab to read the asset bundle eg: “Plant”. This is just hard-coded for an example, it might be a bit complicated to dynamically add the bundle here. But “View” just doesn’t seem entirely appropriate if “Edit” is one of it’s sub-tabs? We could leave this as “Asset” but then it becomes confusing to have “Logs” and “Assets” as the neighboring tabs… So tldr there might be a better option for the name of this top-level tab, I just thought the bundle “Plant” seems like a decent choice