Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In the current implementation, including the production version, when the comment that has media is loading, you can see part of the text but the height of the cell isn't updated until the image is loaded.
before.mov
It's possible to update the height dynamically as the page is loading by observing
webKit.scrollView.contentSize
. For best use experience, it should also show some kind of placeholders during loading.This implementation should also enable correct rendering of features like dropdown or excerpts in comments that add/remove content from the "page". Unfortunately, I couldn't quite get it to work reliably with the
WKWebView
reuse in place. This PR covered WIP.after.mov
Notes
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!)
gets called when all image are loadedwebView.scrollView.contentSize
reports incorrect size that almost never quite matches the scroll height of the pageReaderDetailsViewController
implements something similar but it doesn't have the same constraints: reuse ofWKWebView
.To test:
Regression Notes
Potential unintended areas of impact
What I did to test those areas of impact (or what existing automated tests I relied on)
What automated tests I added (or what prevented me from doing so)
PR submission checklist:
RELEASE-NOTES.txt
if necessary.Testing checklist: