Regression:Flickering of resume and cancel button is seen after hitting tab key for first instance.
Reported by
vku...@etouch.net,
Sep 20 2016
|
|||||
Issue descriptionChrome Version:55.0.2866.0 Revision 5237db09cd8a30328742e4f6b1ee2edb692e936b-refs/heads/master@{#419628} (32/64 Bit) OS:Windows(7,8,8.1,10),Mac OS X(10.10.5, 10.11.4) What steps will reproduce the problem? (1)Launch chrome and navigate to http://www.azurespeed.com/Azure/Download (2)Click on 2-3 download files,click on 'pause' button from list of download bar. (3)Press ctrl+J and hit tab key till focus reaches resume and cancel button,observe. Actual:Flickering of resume and cancel button is seen after hitting tab key for first instance. Expected:No such flickering should be seen of resume and cancel button after hitting tab key for first instance. This is a regression issue broken in 'M54' and below is the manual regression range: Good build: 54.0.2838.3 Bad build: 54.0.2839.0
,
Sep 22 2016
I think this is actually an issue because I removed a use of the 700 weight Roboto on this page (previously in buttons now occupied by the search box). when the first Roboto 700 weight text is shown, there's flicker. this is because it's actually a different font-family. Kenji: any ideas here? we don't want the first time a font-weight/family is used to flicker. this is how we're loading the fonts: https://cs.chromium.org/chromium/src/ui/webui/resources/css/roboto.css?q=Roboto.css&sq=package:chromium&dr
,
Sep 22 2016
er, actually a different src: / url() being loaded**
,
Sep 22 2016
I'm seeing a ~40ms latency on my windows laptop (see attached timeline). The bold font is not readily available* so Chrome ends up painting a blank button in the meantime, hence the flickering. Are you using the Font Loading API to make sure that the fonts you will need are readily available in memory**? *: I/O cost, decompression/font instanciation cost. **: this should work, if not then we have a bug to fix.
,
Sep 22 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/19579a56f727f6577f2f97fb71fd2c1224f2c692 commit 19579a56f727f6577f2f97fb71fd2c1224f2c692 Author: dbeam <dbeam@chromium.org> Date: Thu Sep 22 18:22:06 2016 MD Downloads: hack to fix font flicker bug This renders a tiny bit of bold-weighted Roboto off screen so that the first time users hit bold Roboto (i.e. with keyboard focus on PAUSE/CANCEL/RESUME buttons) it doesn't flicker. BUG= 640121 , 648522 R=tsergeant@chromium.org CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation Review-Url: https://codereview.chromium.org/2361733002 Cr-Commit-Position: refs/heads/master@{#420400} [modify] https://crrev.com/19579a56f727f6577f2f97fb71fd2c1224f2c692/chrome/browser/resources/md_downloads/downloads.html [modify] https://crrev.com/19579a56f727f6577f2f97fb71fd2c1224f2c692/chrome/browser/resources/md_downloads/vulcanized.html
,
Sep 22 2016
kenji: this does use Font Loading API https://codereview.chromium.org/2361973002/diff/1/chrome/browser/resources/md_downloads/downloads.js
,
Sep 22 2016
,
Sep 23 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f0beb1b34582ae0766013f6b84809f381d796fc3 commit f0beb1b34582ae0766013f6b84809f381d796fc3 Author: dbeam <dbeam@chromium.org> Date: Fri Sep 23 00:59:09 2016 MD Downloads: preload bold Roboto in a better way R=tsergeant@chromium.org BUG= 648522 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation Review-Url: https://codereview.chromium.org/2361973002 Cr-Commit-Position: refs/heads/master@{#420517} [modify] https://crrev.com/f0beb1b34582ae0766013f6b84809f381d796fc3/chrome/browser/resources/md_downloads/compiled_resources2.gyp [modify] https://crrev.com/f0beb1b34582ae0766013f6b84809f381d796fc3/chrome/browser/resources/md_downloads/crisper.js [modify] https://crrev.com/f0beb1b34582ae0766013f6b84809f381d796fc3/chrome/browser/resources/md_downloads/downloads.html [modify] https://crrev.com/f0beb1b34582ae0766013f6b84809f381d796fc3/chrome/browser/resources/md_downloads/downloads.js [modify] https://crrev.com/f0beb1b34582ae0766013f6b84809f381d796fc3/chrome/browser/resources/md_downloads/vulcanized.html
,
Sep 23 2016
,
Sep 27 2016
David: how did you end up fixing the issue (The hack in #5 seems to be gone, I'm only seeing calls to the font loading API)? Was it a timing issue (call happening too late)? When load() resolves, the Font should be ready to go (i.e. decompressed and available to Blink). So, the earlier the call is made the lower the chance of a FOUT. Note: for perfection, one might want to hook on the load() call(s).
,
Sep 27 2016
JFYI, you don't have to repeat the "src:" value of @font-face in downloads.js. Instead, you can just call
document.fonts.load("bold 12px Roboto");
,
Sep 27 2016
Kenji: assuming you meant me, new FontFace('Roboto', 'url(...)', {weight: bold}).load()
Kunihiko: thank you for the tip, I will probably send you a review shortly
,
Sep 28 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/857b53d7a574041a734745cd4b2b3220637122bb commit 857b53d7a574041a734745cd4b2b3220637122bb Author: dbeam <dbeam@chromium.org> Date: Wed Sep 28 00:07:17 2016 MD Downloads: simplify font preloading further R=ksakamoto@chromium.org BUG= 648522 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation Review-Url: https://codereview.chromium.org/2374763002 Cr-Commit-Position: refs/heads/master@{#421393} [modify] https://crrev.com/857b53d7a574041a734745cd4b2b3220637122bb/chrome/browser/resources/md_downloads/crisper.js [modify] https://crrev.com/857b53d7a574041a734745cd4b2b3220637122bb/chrome/browser/resources/md_downloads/downloads.js |
|||||
►
Sign in to add a comment |
|||||
Comment 1 by msrchandra@chromium.org
, Sep 20 2016Owner: dbeam@chromium.org
Status: Assigned (was: Unconfirmed)