Convert {scroll-tablelayout} macro to a standalone macro

Description

Currently scroll-tablelayout is a user macro executing the scroll-pi macro. This has several drawbacks:

  • User macros are slow because the complete render chain must be processed again for the content, which is absolutely unnecessary in this case.

    • May cause big slowdowns if many tables are on one page

  • When the user macro renders, it is unclear which exporter plugin's instance of the pi macro is called, because the SourceTransformer might not be able to perform macro prefixing in this case.

    • This is not a real issue right now, but it will cause classloading issues when using thread locals in the macro implementation or when trying to fetch a plugin-local class from the request attribute store.

Environment

None

Status

Assignee

Unassigned

Reporter

Jens Rutschmann (K15t)

Labels

None

Participants

None

Deployment

None

Sprint

None

Fix versions

Priority

Major
Configure