compose view which tracks events and displays message contents