Scrolled and Viewport widgets
Requirements for Scrolled
There are two traits for the widget that should be scrolled.
For the widget struct:
For the widget state:
Widget Scrolled
Does the scrolling and display of the ScrollBars.
Widget View and Viewport
Create a separate buffer, render the widget to this temp buffer. Then apply a col/row based offset and copy the temp buffer to the actual one.
The reason for two of those is: I can't impl the StatefulWidget trait in a way that it works with both Widget and StatefulWidget. So View works for Widget and Viewport for StatefulWidget.
There are convenience methods in Scrolled to add a View/Viewport.