New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 662456 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Last visit > 30 days ago
Closed: Nov 2016
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Bug



Sign in to add a comment

[Android][Client] Screen flickers when resizing CRD window in split-screen mode

Project Member Reported by joedow@chromium.org, Nov 4 2016

Issue description

Need to investigate this.  It looks like the video surface is being resized and redrawn for a frame before our activity is started again.  This results in the current desktop image being shrunk and then expanded which appears as a flicker.

 
Status: Started (was: Assigned)
Project Member

Comment 2 by bugdroid1@chromium.org, Nov 7 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/41c6db6d1a394e6e3a12c60ad7a4696045c527bf

commit 41c6db6d1a394e6e3a12c60ad7a4696045c527bf
Author: joedow <joedow@chromium.org>
Date: Mon Nov 07 21:17:54 2016

Fix screen flicker when resizing CRD window in split-screen mode

This problem had two sources:
1.) The default background color for Android apps is white, but we use
black to clear our canvas.  When dragging, this white background is
shown when the window is resized past the boundaries of the image we
render.  When the user stops dragging and the window is resized, white
is briefly shown followed by black.

The fix here is to use black for our default background color.  DEBUG
builds will show a flash since the debug color is green, but Release
builds will look clean.

2.) When resizing, we received events in a different order than when we
first start the Desktop activity.  These events could cause a premature
reposition of the canvas (due to either screen or image dimensions not
being set).  If we didn't have both, our calculations would be off and
we would render the image incorrectly for one frame before receiving the
rest of the info and correctly drawing the image.  The differences in
these two frames would cause a flash.

The fix here is to ensure we have both screen and image dimensions
before repositioning the image and requesting the frame to be rendered.

BUG= 662456 

Review-Url: https://codereview.chromium.org/2484743003
Cr-Commit-Position: refs/heads/master@{#430378}

[modify] https://crrev.com/41c6db6d1a394e6e3a12c60ad7a4696045c527bf/remoting/android/java/src/org/chromium/chromoting/Desktop.java
[modify] https://crrev.com/41c6db6d1a394e6e3a12c60ad7a4696045c527bf/remoting/android/java/src/org/chromium/chromoting/DesktopCanvas.java
[modify] https://crrev.com/41c6db6d1a394e6e3a12c60ad7a4696045c527bf/remoting/android/java/src/org/chromium/chromoting/RenderData.java

Owner: ajnolley@chromium.org
Status: Fixed (was: Started)
Status: Verified (was: Fixed)
verified Fixed in 56.0.2913.4. Screen does not flicker when resizing the CRD window in split-screen mode

Sign in to add a comment