using Gtk 4.0; template $BzAppTile: Button { styles [ "card", "app-tile", ] child: Box { margin-start: 12; margin-end: 12; margin-top: 12; margin-bottom: 12; orientation: horizontal; spacing: 15; can-focus: false; Image { pixel-size: 64; paintable: bind try {template.group as <$BzEntryGroup>.ui-entry as <$BzResult>.object as <$BzEntry>.icon-paintable, template.icon-override}; styles ["icon-dropshadow"] } Box content_box { valign: center; hexpand: true; orientation: vertical; spacing: 4; Box { orientation: horizontal; spacing: 6; Label { css-name: "app-tile-title"; styles [ "heading", ] xalign: 0.0; ellipsize: end; label: bind template.group as <$BzEntryGroup>.title; } Image { css-name: "app-tile-verified-check"; styles [ "verified", ] visible: bind template.group as <$BzEntryGroup>.is-verified; icon-name: "verified-checkmark-symbolic"; pixel-size: 14; accessibility { label: _("Verified"); } } } Label { css-name: "app-tile-description"; xalign: 0.0; yalign: 0.0; wrap: true; ellipsize: end; vexpand: true; lines: bind $description_line_amount($is_zero(template.group as <$BzEntryGroup>.removable) as ) as ; label: bind template.group as <$BzEntryGroup>.description; } } }; }