Skip to content

Commit

Permalink
Revert "[webauthn] Port fingerprint enrollment assets to lottie"
Browse files Browse the repository at this point in the history
This reverts commit 98450e6.

Reason for revert: crbug.com/1104105

Original change's description:
> [webauthn] Port fingerprint enrollment assets to lottie
> 
> Replace the fingerprint enrollment APNGs on the webauthn fingerprint
> enrollment page by lottie versions. This shaves ~200kb and adds a
> transparent background to the fingerprint animation that partially fixes
> issue 1041877.
> 
> Also, add "hidden" and "singleLoop" attributes to lottie to match the
> APNG img tag behaviour; and update the wrapper to allow dynamically
> loading another animation into the same element.
> 
> Finally, this updates the settings UI worker CSP to allow the lottie
> worker.
> 
> Fixed: 1082312
> Change-Id: I0c92663ec6e1bfd76c03f995b6e96d210f26173f
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2116557
> Commit-Queue: Nina Satragno <nsatragno@chromium.org>
> Reviewed-by: Malay Keshav <malaykeshav@chromium.org>
> Reviewed-by: dpapad <dpapad@chromium.org>
> Reviewed-by: Mitsuru Oshima <oshima@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#786933}

TBR=oshima@chromium.org,dpapad@chromium.org,nsatragno@chromium.org,malaykeshav@chromium.org

Change-Id: Ib2bc499f7e48b213182e1a31a1c079a35fda306f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2290845
Reviewed-by: Nina Satragno <nsatragno@chromium.org>
Commit-Queue: Nina Satragno <nsatragno@chromium.org>
Cr-Commit-Position: refs/heads/master@{#787216}
  • Loading branch information
nsatragno authored and Commit Bot committed Jul 10, 2020
1 parent cb86794 commit 444670e
Show file tree
Hide file tree
Showing 16 changed files with 125 additions and 212 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ const test::UIPath kFingerprintPositionPage = {"fingerprint-setup",
const test::UIPath kProgressPage = {"fingerprint-setup",
"startFingerprintEnroll"};
const test::UIPath kFingerprintArc = {"fingerprint-setup", "arc"};
const test::UIPath kScanningAnimation = {"fingerprint-setup", "arc",
"scanningAnimation"};
const test::UIPath kCheckmarkAnimation = {"fingerprint-setup", "arc",
"checkmarkAnimation"};
const test::UIPath kDoneButton = {"fingerprint-setup", "done"};
const test::UIPath kDoItLaterButton = {"fingerprint-setup", "setupLater"};
const test::UIPath kNextButtonOnStart = {"fingerprint-setup", "next"};
Expand All @@ -40,9 +40,6 @@ const test::UIPath kAddAnotherFingerButton = {"fingerprint-setup",
"addAnotherFinger"};

constexpr char kTestFingerprintDataString[] = "testFinger";
constexpr char kAnimationUrlAttribute[] = "animationUrl";
constexpr char kCheckmarkAnimationUrl[] =
"chrome://theme/IDR_FINGERPRINT_COMPLETE_TICK";

int kMaxAllowedFingerprints = 3;

Expand Down Expand Up @@ -107,9 +104,7 @@ class FingerprintSetupTest : public OobeBaseTest {
test::OobeJS().ExpectVisiblePath(kFingerprintArc);
test::OobeJS().CreateVisibilityWaiter(true, kDoneButton)->Wait();
test::OobeJS().ExpectHiddenPath(kSkipButtonOnProgress);
test::OobeJS().ExpectVisiblePath(kScanningAnimation);
test::OobeJS().ExpectAttributeEQ(kAnimationUrlAttribute, kScanningAnimation,
std::string(kCheckmarkAnimationUrl));
test::OobeJS().ExpectVisiblePath(kCheckmarkAnimation);
test::OobeJS().ExpectVisiblePath(kAddAnotherFingerButton);
}

Expand Down
2 changes: 0 additions & 2 deletions chrome/browser/ui/webui/settings/settings_ui.cc
Original file line number Diff line number Diff line change
Expand Up @@ -161,8 +161,6 @@ SettingsUI::SettingsUI(content::WebUI* web_ui)
Profile* profile = Profile::FromWebUI(web_ui);
content::WebUIDataSource* html_source =
content::WebUIDataSource::Create(chrome::kChromeUISettingsHost);
html_source->OverrideContentSecurityPolicy(
network::mojom::CSPDirectiveName::WorkerSrc, "worker-src blob: 'self';");

AddSettingsPageUIHandler(std::make_unique<AppearanceHandler>(web_ui));

Expand Down
173 changes: 65 additions & 108 deletions chrome/test/data/webui/cr_elements/cr_lottie_tests.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,90 +11,47 @@
/** @fileoverview Suite of tests for cr-lottie. */
suite('cr_lottie_test', function() {
/**
* A data url that produces a sample solid green json lottie animation.
* A data url that produces a sample json lottie animation.
* @type {string}
*/
const SAMPLE_LOTTIE_GREEN =
'data:application/json;base64,eyJ2IjoiNC42LjkiLCJmciI6NjAsImlwIjowLCJvc' +
'CI6MjAwLCJ3Ijo4MDAsImgiOjYwMCwiZGRkIjowLCJhc3NldHMiOltdLCJsYXllcnMiOlt' +
'7ImluZCI6MSwidHkiOjEsInNjIjoiIzAwZmYwMCIsImFvIjowLCJpcCI6MCwib3AiOjIwM' +
'Cwic3QiOjAsInNyIjoxLCJzdyI6ODAwLCJzaCI6NjAwLCJibSI6MCwia3MiOnsibyI6eyJ' +
'hIjowLCJrIjoxMDB9LCJyIjp7ImEiOjAsImsiOlswLDAsMF19LCJwIjp7ImEiOjAsImsiO' +
'lszMDAsMjAwLDBdfSwiYSI6eyJhIjowLCJrIjpbMzAwLDIwMCwwXX0sInMiOnsiYSI6MCw' +
'iayI6WzEwMCwxMDAsMTAwXX19fV19';
const SAMPLE_LOTTIE = 'data:application/json;base64,eyJ2IjoiNC42LjkiLCJmci' +
'I6NjAsImlwIjowLCJvcCI6MjAwLCJ3Ijo4MDAsImgiOjYwMCwiZGRkIjowLCJhc3NldHM' +
'iOltdLCJsYXllcnMiOlt7ImluZCI6MSwidHkiOjEsInNjIjoiIzAwZmYwMCIsImFvIjow' +
'LCJpcCI6MCwib3AiOjIwMCwic3QiOjAsInNyIjoxLCJzdyI6ODAwLCJzaCI6NjAwLCJib' +
'SI6MCwia3MiOnsibyI6eyJhIjowLCJrIjoxMDB9LCJyIjp7ImEiOjAsImsiOlswLDAsMF' +
'19LCJwIjp7ImEiOjAsImsiOlszMDAsMjAwLDBdfSwiYSI6eyJhIjowLCJrIjpbMzAwLDI' +
'wMCwwXX0sInMiOnsiYSI6MCwiayI6WzEwMCwxMDAsMTAwXX19fV19';

/**
* A data url that produces a sample solid blue json lottie animation.
* A dataURL of an image for how a frame of the above |sampleLottie| animation
* looks like.
* @type {string}
*/
const SAMPLE_LOTTIE_BLUE =
'data:application/json;base64,eyJhc3NldHMiOltdLCJkZGQiOjAsImZyIjo2MCwia' +
'CI6NjAwLCJpcCI6MCwibGF5ZXJzIjpbeyJhbyI6MCwiYm0iOjAsImluZCI6MSwiaXAiOjA' +
'sImtzIjp7ImEiOnsiYSI6MCwiayI6WzMwMCwyMDAsMF19LCJvIjp7ImEiOjAsImsiOjEwM' +
'H0sInAiOnsiYSI6MCwiayI6WzMwMCwyMDAsMF19LCJyIjp7ImEiOjAsImsiOlswLDAsMF1' +
'9LCJzIjp7ImEiOjAsImsiOlsxMDAsMTAwLDEwMF19fSwib3AiOjIwMCwic2MiOiIjMDAwM' +
'GZmIiwic2giOjYwMCwic3IiOjEsInN0IjowLCJzdyI6ODAwLCJ0eSI6MX1dLCJvcCI6MjA' +
'wLCJ2IjoiNC42LjkiLCJ3Ijo4MDB9';

/**
* A dataURL of an image for how a frame of the above |SAMPLE_LOTTIE_GREEN|
* animation looks like.
* @type {string}
*/
const EXPECTED_FRAME_GREEN =
'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABALDA4MChAODQ4' +
'SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ' +
'2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2N' +
'jY2NjY2NjY2NjY2NjY2NjY2P/wAARCADIASwDASIAAhEBAxEB/8QAGAABAQEBAQAAAAAAA' +
'AAAAAAAAAMGBwX/xAAdEAEAAAYDAAAAAAAAAAAAAAAAAQIDBDRzBrHB/8QAGAEBAAMBAAA' +
'AAAAAAAAAAAAAAAIEBgX/xAAbEQEAAgIDAAAAAAAAAAAAAAAAAQIyMwQFgf/aAAwDAQACE' +
'QMRAD8A5+ADotlhW+uXpZGywrfXL0szNspY++UgCKIAAAAAAAAAAAAAAAAAAAAAAAAAAAA' +
'yfL82hr9i1jJ8vzaGv2K5wt0L3Xb49eAA7jSAAOi2WFb65elkbLCt9cvSzM2ylj75SAIog' +
'AAAAAAAAAAAAAAAAAAAAAAAAAAADJ8vzaGv2LWMny/Noa/YrnC3Qvddvj14ADuNIAA6LZY' +
'Vvrl6WRssK31y9LMzbKWPvlIAiiAAAAAAAAAAAAAAAAAAAAAAAAAAAAMny/Noa/YtYyfL8' +
'2hr9iucLdC912+PXgAO40gADotlhW+uXpZGywrfXL0szNspY++UgCKIAAAAAAAAAAAAAAA' +
'AAAAAAAAAAAAAyfL82hr9i1jJ8vzaGv2K5wt0L3Xb49eAA7jSAAOi2WFb65elkbLCt9cvS' +
'zM2ylj75SAIogAAAAAAAAAAAAAAAAAAAAAAAAAAADJ8vzaGv2LWMny/Noa/YrnC3Qvddvj' +
'14ADuNIAA6LZYVvrl6WRssK31y9LMzbKWPvlIAiiAAAAAAAAAAAAAAAAAAAAAAAAAAAAMn' +
'y/Noa/YtYyfL82hr9iucLdC912+PXgAO40gADotlhW+uXpZGywrfXL0szNspY++UgCKIAA' +
'AAAAAAAAAAAAAAAAAAAAAAAAAAyfL82hr9i1jJ8vzaGv2K5wt0L3Xb49eAA7jSAAOi2WFb' +
'65elkbLCt9cvSzM2ylj75SAIogAAAAAAAAAAAAAAAAAAAAAAAAAAADJ8vzaGv2LWMny/No' +
'a/YrnC3Qvddvj14ADuNIAA6LZYVvrl6WRssK31y9LMzbKWPvlIAiiAAAAAAAAAAAAAAAAA' +
'AAAAAAAAAAAMny/Noa/YtYyfL82hr9iucLdC912+PXgAO40gADotlhW+uXpZGywrfXL0sz' +
'NspY++UgCKIAAAAAAAAAAAAAAAAAAAAAAAAAAAAyfL82hr9i1jJ8vzaGv2K5wt0L3Xb49e' +
'AA7jSAAOi2WFb65elkbLCt9cvSzM2ylj75SAIogAAAAAAAAAAAAAAAAAAAAAAAAAAADJ8v' +
'zaGv2LWMny/Noa/YrnC3Qvddvj14ADuNIAA6LZYVvrl6WRssK31y9LMzbKWPvlIAiiAAAA' +
'AAAAAAAAAAAAAAAAAAAAAAAAMny/Noa/YtYyfL82hr9iucLdC912+PXgAO40gADotlhW+u' +
'XpYGZtlLH3ykARRAAAAAAAAAAAAAAAAAAAAAAAAAAAAGT5fm0NfsQXOFuhe67fHrwAHcaR' +
'//Z';

/**
* A dataURL of an image for how a frame of the above |SAMPLE_LOTTIE_BLUE|
* animation looks like.
* @type {string}
*/
const EXPECTED_FRAME_BLUE =
'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABALDA4MChAODQ4' +
'SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ' +
'2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2N' +
'jY2NjY2NjY2NjY2NjY2NjY2P/wAARCADIASwDASIAAhEBAxEB/8QAGAABAQEBAQAAAAAAA' +
'AAAAAAAAAQBAwf/xAAZEAEAAwEBAAAAAAAAAAAAAAAAATJxAgT/xAAaAQEAAgMBAAAAAAA' +
'AAAAAAAAAAgYBAwQF/8QAGxEBAAICAwAAAAAAAAAAAAAAAAECBTEyNIH/2gAMAwEAAhEDE' +
'QA/APPwAW8UjGs4pGNXmnGHNIAmwAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ/TeMUJ/TeMebl' +
'OtPidNuICqt4AC3ikY1nFIxq804w5pAE2AAAAAAAAAAAAAAAAAAAAAAAAAAAABP6bxihP6' +
'bxjzcp1p8TptxAVVvAAW8UjGs4pGNXmnGHNIAmwAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ/T' +
'eMUJ/TeMeblOtPidNuICqt4AC3ikY1nFIxq804w5pAE2AAAAAAAAAAAAAAAAAAAAAAAAAA' +
'AABP6bxihP6bxjzcp1p8TptxAVVvAAW8UjGs4pGNXmnGHNIAmwAAAAAAAAAAAAAAAAAAAA' +
'AAAAAAAAJ/TeMUJ/TeMeblOtPidNuICqt4AC3ikY1nFIxq804w5pAE2AAAAAAAAAAAAAAA' +
'AAAAAAAAAAAAABP6bxihP6bxjzcp1p8TptxAVVvAAW8UjGs4pGNXmnGHNIAmwAAAAAAAAA' +
'AAAAAAAAAAAAAAAAAAAJ/TeMUJ/TeMeblOtPidNuICqt4AC3ikY1nFIxq804w5pAE2AAAA' +
'AAAAAAAAAAAAAAAAAAAAAAAABP6bxihP6bxjzcp1p8TptxAVVvAAW8UjGs4pGNXmnGHNIA' +
'mwAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ/TeMUJ/TeMeblOtPidNuICqt4AC3ikY1nFIxq80' +
'4w5pAE2AAAAAAAAAAAAAAAAAAAAAAAAAAAABP6bxihP6bxjzcp1p8TptxAVVvAAW8UjGs4' +
'pGNXmnGHNIAmwAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ/TeMUJ/TeMeblOtPidNuICqt4AC3' +
'ikY1nFIxq804w5pAE2AAAAAAAAAAAAAAAAAAAAAAAAAAAABP6bxihP6bxjzcp1p8TptxAV' +
'VvAAW8UjGgvNOMOaQBNgAAAAAAAAAAAAAAAAAAAAAAAAAAAAT+m8YDzcp1p8TptxAVVvf/' +
'9k=';
const EXPECTED_FRAME = 'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD' +
'/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1R' +
'V19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY' +
'2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wAARCADIASwDASIAAhEBAx' +
'EB/8QAGAABAQEBAQAAAAAAAAAAAAAAAAMGBwX/xAAdEAEAAAYDAAAAAAAAAAAAAAAAAQI' +
'DBDRzBrHB/8QAGAEBAAMBAAAAAAAAAAAAAAAAAAIEBgX/xAAbEQEAAgIDAAAAAAAAAAAA' +
'AAAAAQIyMwQFgf/aAAwDAQACEQMRAD8A5+ADotlhW+uXpZGywrfXL0szNspY++UgCKIAA' +
'AAAAAAAAAAAAAAAAAAAAAAAAAAyfL82hr9i1jJ8vzaGv2K5wt0L3Xb49eAA7jSAAOi2WF' +
'b65elkbLCt9cvSzM2ylj75SAIogAAAAAAAAAAAAAAAAAAAAAAAAAAADJ8vzaGv2LWMny/' +
'Noa/YrnC3Qvddvj14ADuNIAA6LZYVvrl6WRssK31y9LMzbKWPvlIAiiAAAAAAAAAAAAAA' +
'AAAAAAAAAAAAAAMny/Noa/YtYyfL82hr9iucLdC912+PXgAO40gADotlhW+uXpZGywrfX' +
'L0szNspY++UgCKIAAAAAAAAAAAAAAAAAAAAAAAAAAAAyfL82hr9i1jJ8vzaGv2K5wt0L3' +
'Xb49eAA7jSAAOi2WFb65elkbLCt9cvSzM2ylj75SAIogAAAAAAAAAAAAAAAAAAAAAAAAA' +
'AADJ8vzaGv2LWMny/Noa/YrnC3Qvddvj14ADuNIAA6LZYVvrl6WRssK31y9LMzbKWPvlI' +
'AiiAAAAAAAAAAAAAAAAAAAAAAAAAAAAMny/Noa/YtYyfL82hr9iucLdC912+PXgAO40gA' +
'DotlhW+uXpZGywrfXL0szNspY++UgCKIAAAAAAAAAAAAAAAAAAAAAAAAAAAAyfL82hr9i' +
'1jJ8vzaGv2K5wt0L3Xb49eAA7jSAAOi2WFb65elkbLCt9cvSzM2ylj75SAIogAAAAAAAA' +
'AAAAAAAAAAAAAAAAAAADJ8vzaGv2LWMny/Noa/YrnC3Qvddvj14ADuNIAA6LZYVvrl6WR' +
'ssK31y9LMzbKWPvlIAiiAAAAAAAAAAAAAAAAAAAAAAAAAAAAMny/Noa/YtYyfL82hr9iu' +
'cLdC912+PXgAO40gADotlhW+uXpZGywrfXL0szNspY++UgCKIAAAAAAAAAAAAAAAAAAAA' +
'AAAAAAAAyfL82hr9i1jJ8vzaGv2K5wt0L3Xb49eAA7jSAAOi2WFb65elkbLCt9cvSzM2y' +
'lj75SAIogAAAAAAAAAAAAAAAAAAAAAAAAAAADJ8vzaGv2LWMny/Noa/YrnC3Qvddvj14A' +
'DuNIAA6LZYVvrl6WRssK31y9LMzbKWPvlIAiiAAAAAAAAAAAAAAAAAAAAAAAAAAAAMny/' +
'Noa/YtYyfL82hr9iucLdC912+PXgAO40gADotlhW+uXpYGZtlLH3ykARRAAAAAAAAAAAA' +
'AAAAAAAAAAAAAAAAGT5fm0NfsQXOFuhe67fHrwAHcaR//Z';

/** @type {!CrLottieElement} */
let crLottieElement;
Expand All @@ -105,28 +62,12 @@ suite('cr_lottie_test', function() {
/** @type {?HTMLCanvasElement} */
let canvas = null;

/** @type {Promise} */
let waitForInitializeEvent;

/** @type {Promise} */
let waitForPlayingEvent;

/** @type {Promise} */
let waitForResizeEvent;

setup(function() {
PolymerTest.clearBody();
crLottieElement = document.createElement('cr-lottie');
crLottieElement.animationUrl = SAMPLE_LOTTIE_GREEN;
crLottieElement.animationUrl = SAMPLE_LOTTIE;
crLottieElement.autoplay = true;

waitForInitializeEvent =
test_util.eventToPromise('cr-lottie-initialized', crLottieElement);
waitForPlayingEvent =
test_util.eventToPromise('cr-lottie-playing', crLottieElement);
waitForResizeEvent =
test_util.eventToPromise('cr-lottie-resized', crLottieElement);

container = document.createElement('div');
container.style.width = '300px';
container.style.height = '200px';
Expand All @@ -140,20 +81,29 @@ suite('cr_lottie_test', function() {

test('TestInitializeAnimationAndAutoPlay', async () => {
assertFalse(crLottieElement.isAnimationLoaded_);
const waitForInitializeEvent =
test_util.eventToPromise('cr-lottie-initialized', crLottieElement);
await waitForInitializeEvent;
assertTrue(crLottieElement.isAnimationLoaded_);

const waitForPlayingEvent =
test_util.eventToPromise('cr-lottie-playing', crLottieElement);
await waitForPlayingEvent;
});

// TODO(crbug.com/1021474): flaky.
test.skip('TestResize', async () => {
const waitForInitializeEvent =
test_util.eventToPromise('cr-lottie-initialized', crLottieElement);
await waitForInitializeEvent;

const waitForPlayingEvent =
test_util.eventToPromise('cr-lottie-playing', crLottieElement);
await waitForPlayingEvent;
await waitForResizeEvent;

const newHeight = 300;
const newWidth = 400;
waitForResizeEvent =
const waitForResizeEvent =
test_util.eventToPromise('cr-lottie-resized', crLottieElement)
.then(function(e) {
assertEquals(e.detail.height, newHeight);
Expand All @@ -167,18 +117,23 @@ suite('cr_lottie_test', function() {
});

test('TestPlayPause', async () => {
const waitForInitializeEvent =
test_util.eventToPromise('cr-lottie-initialized', crLottieElement);
await waitForInitializeEvent;

const waitForPlayingEvent =
test_util.eventToPromise('cr-lottie-playing', crLottieElement);
await waitForPlayingEvent;

const waitForPauseEvent =
test_util.eventToPromise('cr-lottie-paused', crLottieElement);
crLottieElement.setPlay(false);
await waitForPauseEvent;

waitForPlayingEvent =
const waitForPlayingEventAgain =
test_util.eventToPromise('cr-lottie-playing', crLottieElement);
crLottieElement.setPlay(true);
await waitForPlayingEvent;
await waitForPlayingEventAgain;
});

test('TestPlayBeforeInit', async () => {
Expand All @@ -190,7 +145,12 @@ suite('cr_lottie_test', function() {
crLottieElement.setPlay(true);
assertTrue(crLottieElement.autoplay);

const waitForInitializeEvent =
test_util.eventToPromise('cr-lottie-initialized', crLottieElement);
await waitForInitializeEvent;

const waitForPlayingEvent =
test_util.eventToPromise('cr-lottie-playing', crLottieElement);
await waitForPlayingEvent;
});

Expand All @@ -202,25 +162,22 @@ suite('cr_lottie_test', function() {
// Note: This issue is only observed in tests.
const kRaceTimeout = 2000;

const waitForInitializeEvent =
test_util.eventToPromise('cr-lottie-initialized', crLottieElement);
await waitForInitializeEvent;

const waitForPlayingEvent =
test_util.eventToPromise('cr-lottie-playing', crLottieElement);
await waitForPlayingEvent;

const waitForFrameRender = new Promise(function(resolve) {
setTimeout(resolve, kRaceTimeout);
}).then(function() {
const actualFrame =
crLottieElement.canvasElement_.toDataURL('image/jpeg', 0.5);
assertEquals(actualFrame, EXPECTED_FRAME_GREEN);
assertEquals(actualFrame, EXPECTED_FRAME);
});

await waitForFrameRender;
});

test('TestHidden', async () => {
await waitForPlayingEvent;

assertFalse(crLottieElement.$$('canvas').hidden);
crLottieElement.hidden = true;
assertTrue(crLottieElement.$$('canvas').hidden);
});
});
10 changes: 1 addition & 9 deletions third_party/lottie/lottie_worker.js
Original file line number Diff line number Diff line change
Expand Up @@ -12226,12 +12226,11 @@ sendInitializedEvent = function() {
* animation.
*/
initAnimation = function(animationData, initParams, canvas) {
if (!animationData || !initParams) {
if (currentAnimation || !animationData || !initParams) {
return;
}

var ctx = canvas.getContext("2d");

currentAnimation = lottiejs.loadAnimation({
renderer: 'canvas',
loop: initParams.loop,
Expand Down Expand Up @@ -12310,13 +12309,6 @@ onmessage = function(evt) {
return;
}

// Stop and clear the current animation to initialize a new one with the
// provided animation data.
if (currentAnimation && evt.data.animationData) {
currentAnimation.stop();
currentAnimation = null;
}

updateCanvasSize(canvas, evt.data.drawSize);
initAnimation(evt.data.animationData, evt.data.params, canvas);
updateAnimationState(evt.data.control);
Expand Down
2 changes: 1 addition & 1 deletion third_party/lottie/lottie_worker.min.js

Large diffs are not rendered by default.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added ui/resources/default_100_percent/common/tick.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions ui/resources/ui_resources.grd
Original file line number Diff line number Diff line change
Expand Up @@ -114,8 +114,8 @@
<structure type="chrome_scaled_image" name="IDR_EASY_UNLOCK_UNLOCKED_HOVER" file="common/easy_unlock_unlocked_hover.png" />
<structure type="chrome_scaled_image" name="IDR_EASY_UNLOCK_UNLOCKED_PRESSED" file="common/easy_unlock_unlocked_pressed.png" />
<if expr="not is_android">
<structure type="chrome_html" name="IDR_FINGERPRINT_COMPLETE_TICK" file="vector/common/tick.json" compress="gzip" />
<structure type="chrome_html" name="IDR_FINGERPRINT_ICON_ANIMATION" file="vector/common/fingerprint_enrollment.json" compress="gzip" />
<structure type="chrome_scaled_image" name="IDR_FINGERPRINT_COMPLETE_TICK" file="common/tick.png" />
<structure type="chrome_scaled_image" name="IDR_FINGERPRINT_ICON_ANIMATION" file="common/fingerprint.png" />
</if>
<if expr="is_macosx or is_ios">
<structure type="chrome_scaled_image" name="IDR_FOLDER_CLOSED" file="mac/folder.png" />
Expand Down
Loading

0 comments on commit 444670e

Please sign in to comment.