Commit 2a18c668 authored by Carlos Knippschild's avatar Carlos Knippschild Committed by Commit Bot

Revert "[Extensions] Revert changes to icon loading JS function."

This reverts commit e80df6f2.

Reason for revert: seems to have broken builder "Network Service Linux"

Original change's description:
> [Extensions] Revert changes to icon loading JS function.
> 
> Bug: 1049214
> Change-Id: I64018260d06070da03821bbcb72578de62359be3
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2042313
> Reviewed-by: Istiaque Ahmed <lazyboy@chromium.org>
> Commit-Queue: David Bertoni <dbertoni@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#739076}

TBR=lazyboy@chromium.org,dbertoni@chromium.org

Change-Id: I4cf9a417bdf5b13aad77d6a4cb054a27dbe6a42f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 1049214, 1049467
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2043003Reviewed-by: default avatarCarlos Knippschild <carlosk@chromium.org>
Commit-Queue: Carlos Knippschild <carlosk@chromium.org>
Cr-Commit-Position: refs/heads/master@{#739198}
parent 87c6e55d
...@@ -5,22 +5,32 @@ ...@@ -5,22 +5,32 @@
var SetIconCommon = requireNative('setIcon').SetIconCommon; var SetIconCommon = requireNative('setIcon').SetIconCommon;
function loadImagePath(path, callback) { function loadImagePath(path, callback) {
var img = new Image(); let fetchPromise = fetch(path);
img.onerror = function() {
console.error('Could not load action icon \'' + path + '\'.'); let blobPromise = $Promise.then(fetchPromise, function(response) {
}; if (!response.ok) {
img.onload = function() { throw new $Error.self('Could not load action icon \'' + path + '\'.');
var canvas = document.createElement('canvas'); }
canvas.width = img.width; return response.blob();
canvas.height = img.height });
let imagePromise = $Promise.then(blobPromise, function(blob) {
return createImageBitmap(blob);
});
let imageDataPromise = $Promise.then(imagePromise, function(image) {
var canvas = new OffscreenCanvas(image.width, image.height);
var canvas_context = canvas.getContext('2d'); var canvas_context = canvas.getContext('2d');
canvas_context.clearRect(0, 0, canvas.width, canvas.height); canvas_context.clearRect(0, 0, canvas.width, canvas.height);
canvas_context.drawImage(img, 0, 0, canvas.width, canvas.height); canvas_context.drawImage(image, 0, 0, canvas.width, canvas.height);
var imageData = canvas_context.getImageData(0, 0, canvas.width, var imageData = canvas_context.getImageData(0, 0, canvas.width,
canvas.height); canvas.height);
callback(imageData); callback(imageData);
}; });
img.src = path;
$Promise.catch(imageDataPromise, function(error) {
console.error(error);
});
} }
function smellsLikeImageData(imageData) { function smellsLikeImageData(imageData) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment