This uses a work around AdwBanner not having APIs for setting a custom child on its internal GtkOverlay child.
It adds a custom widget (CcListRowInfoButton) using the GtkWidget API and binds the widget visibility to the AdwBanner.visible property.
This workaround ignores AdwBanner.revealed and relies on its "visible" property so that we avoid having a "hide" animation when switching between an app that shows the banner to one that doesn't.
An app page is static populated and the banner is supposed to be displayed when the page loads and not later.
Fixes #2782 (closed)