Ticket #2348 (closed enhancement: fixed)
Opened 6 years ago
Last modified 4 years ago
Make third level navigation controllable by the INavigationContributor extension point
| Reported by: | kroymann@… | Owned by: | nkantrowitz |
|---|---|---|---|
| Priority: | high | Milestone: | 0.11 |
| Component: | general | Version: | 0.9 |
| Severity: | normal | Keywords: | ctxtnav |
| Cc: | kroymann@…, rupert | ||
| Release Notes: | |||
| API Changes: | |||
Description
At the moment, the third level of navigation is controlled by each main component (Wiki, Browser, etc.) via its process_request method and its ClearSilver template, while the first and second level of navigation (i.e. the 'mainnav' and the 'metanav' categories) is generated using the INavigationContributor extension point. If only the latter method was used, the third level of navigation would be extendable by TracPlugins. This will require changes to the 'header.cs' template, to the main component templates and to the instantiations of INavigationContributor and IRequestHandler.
Attachments
Change History
comment:1 Changed 5 years ago by markus
- Milestone changed from 1.0 to 0.11
- Type changed from defect to enhancement
comment:2 Changed 5 years ago by cmlenz
- Priority changed from normal to high
This is becoming increasinly important… I'm planning to look into it soon-ish.
comment:3 Changed 4 years ago by ThurnerRupert <rupert.thurner@…>
- Cc rupert added
comment:4 Changed 4 years ago by cboos
- Milestone changed from 0.11.1 to 0.11
- Owner changed from jonas to nkantrowitz
This is now doable, but in a different way.
The context navigation (ctxtnav) usually needs much more logic than simply being added to a list, like the INavigationContributor does for mainnav and metanav. So the solution is now to use add_ctxnav while rendering the page, as the ctxtnav <div> content is generated programmatically and should not be placed in templates anymore.
Plugins that want to alter existing ctxtnavs can use the ITemplateStreamFilter approach.
comment:5 Changed 4 years ago by cboos
- Keywords ctxtnav added
- Resolution set to fixed
- Status changed from new to closed
Done in log:/sandbox/ctxtnav@6363, merged in trunk in r6357.



IMHO this should be implemented as soon as we switch to Genshi as more and more plugin devs are in need of it.