-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Closed
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work listplatform-views: hcppIssues which affect the HCPP platform views backendIssues which affect the HCPP platform views backendteam-androidOwned by Android platform teamOwned by Android platform teamtriaged-androidTriaged by Android platform teamTriaged by Android platform team
Description
See the video. Given that the size of the portion that isn't cleared is dependent on scroll speed, I'd suspect this is because we aren't pushing an update for the final frame where the platform view is gone.
Perhaps we have a bug here?
flutter/engine/src/flutter/shell/platform/android/external_view_embedder/external_view_embedder_2.cc
Line 73 in 71294d3
| if (!FrameHasPlatformLayers()) { |
Do we push updates to the platform view on frames n-m, n-(m-1), ..., n-1, but forget to push updates on frame n when the PV is fully off screen? It sort of looks like that, based on
if (!FrameHasPlatformLayers()) {
frame->Submit();
// If the previous frame had platform views, hide the overlay surface.
HideOverlayLayerIfNeeded();
jni_facade_->applyTransaction();
return;
}Isn't that only maybe hiding the (flutter) overlay on top of the platform view? Not actually sure what frame->Submit(); does.
hcpp_not_clearing.mp4
Metadata
Metadata
Assignees
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work listplatform-views: hcppIssues which affect the HCPP platform views backendIssues which affect the HCPP platform views backendteam-androidOwned by Android platform teamOwned by Android platform teamtriaged-androidTriaged by Android platform teamTriaged by Android platform team