Fixed canvas clearning #2405

Ylian Saint-Hilaire committed Mar 21, 2021 at 02:58 UTC 8a28008ee169936ece437e23f30c1d95e199749e
1 file changed +4 -3
views/default.handlebars
+4 -3
@@ -9698,12 +9698,12 @@
9698 var user = (mode == 0)?userinfo:currentUser;
9699 var x = '<input id=p2file type=file style=width:100% accept="image/*" onchange=account_manageImageEx()><div style=width:100%><canvas id=p2canvas width=256 height=256 style="width:256px;height:256px;margin-left:60px;margin-top:8px;border-radius:16px;box-shadow: 0px 0px 15px #000" onclick=account_canvasClick() /></div>';
9700 setDialogMode(2, "Manage Account Image", 7, account_manageImageEx2, x, user._id);
9701 - var ctx = Q('p2canvas').getContext("2d");
9701 + var ctx = Q('p2canvas').getContext('2d');
9702 if (user.accountImageRnd == null) { user.accountImageRnd = Math.floor(Math.random() * 9999999999); }
9703 var arg = '';
9704 if (mode == 1) { arg = '&id=' + user._id.split('/')[2]; }
9705 var myImg = new Image();
9706 - myImg.onload = function() { ctx.drawImage(myImg, 0, 0); };
9706 + myImg.onload = function() { ctx.clearRect(0, 0, 256, 256); ctx.drawImage(myImg, 0, 0); };
9707 myImg.src = ((user.flags != null) && (user.flags & 1))?('userimage.ashx?rnd=' + user.accountImageRnd + arg):'images/user-256.png';
9708 QE('idx_dlgDeleteButton', (user.flags != null) && (user.flags & 1));
9709 QE('idx_dlgOkButton', false);
@@ -9718,10 +9718,11 @@
9718 var cx = 0, cy = 0, min = Math.min(img.width, img.height);
9719 if (img.width > min) { cx = (img.width - min) / 2; }
9720 if (img.height > min) { cy = (img.height - min) / 2; }
9721 - var ctx = Q('p2canvas').getContext("2d");
9721 + var ctx = Q('p2canvas').getContext('2d');
9722 ctx.imageSmoothingEnabled = true;
9723 ctx.webkitImageSmoothingEnabled = true;
9724 ctx.mozImageSmoothingEnabled = true;
9725 + ctx.clearRect(0, 0, 256, 256);
9726 ctx.drawImage(img, cx, cy, min, min, 0, 0, 256, 256);
9727 QE('idx_dlgOkButton', true);
9728 }