- Fixes up content alignment issues from parallel changes to table view
styling.
- Re-adds view controller presentation within a nav controller (stemming
from parallel changes to table view styling)
- Fixes a bug around overzealous collision detection
Also fixes an unrelated issue. Setting up cv banners performs layout, which
can cause the conversation view controller's trait collection to change.
This can lead to us reenterantly setting up banners and updating trait
collection.
The workaround is to just call -ensureBannerState asynchronously from
-traitCollectionDidChange to break the synchronous chain.
The most significant change here is we defer initial loading of
collision interactions. We shouldn't block the main thread during
conversation presentation.
Instead, we'll perform it at UserInitiatedQoS. Once complete, we'll call
-ensureBannerState. Subsequent banner state updates will use the cached
interactions to find name collisions.
Instead of the delegate showing the share sheet for a tapped-on
attachment, let the CVComponentGenericAttachment do it itself. This
keeps the delegate from dealing with any specific component views
within the conversation.
The wallpaper can't be subview index 0 in ConversationViewController.
UIViewController will only automatically adjust content insets for
scroll view's at index 0.
Instead, let's make it index 1 and set the layer's z-index behind the
collection view.
...never the photo picker. This removes the notion of "attach a photo
as a file", which the previous commits have made equivalent to
attaching a photo any other way.
- More robust handling of large button labels in the collision view
controller
- Fixes for VoiceOver labels and navigation
- Fixes for layout issues when rotating
- Update copy for collision banner
- Remove banner shadow for all banners