caleb531 / jcanvas

A jQuery plugin that makes the HTML5 canvas easy to work with.
https://projects.calebevans.me/jcanvas/
MIT License
626 stars 192 forks source link

Doesn't work with Chromium on Archlinux #26

Closed contradictioned closed 12 years ago

contradictioned commented 12 years ago

On my Archlinux system with:

$ uname -a Linux laptop 3.4.5-1-ARCH #1 SMP PREEMPT Mon Jul 16 20:28:56 UTC 2012 i686 GNU/Linux

Chromium: Version 21.0.1180.57 (148591)

Just no drawings are visible. When manually getting a 2d-context and filling styles, it works. When using Firefox on the same machine jcanvas works.

Update: Just drawArc() doesn't work, the other shapes do. Update 2: With start and end params, the drawing works. Update3: Seems the problem occures when drawing a full cycle (360°)

caleb531 commented 12 years ago

Yes, I've been emailed once or twice about this issue before. However, the issue inherently derives from a bug in the Chromium version of Ubuntu.

How does this happen?

When drawing arcs, jCanvas considers zero degrees to be north (12:00) of the arc (instead of east (3:00)). I made this decision because I thought it was more intuitive (since it was more clock-like). To implement this behavior, I subtracted 90 degrees from both the start and end angles of the arc. Doing so works on every browser (because it should), except, as you've discovered, on the Linux version of Chromium.

Apparently, Chrome on Linux does not like an angle value of -90 degrees (or -pi/2 radians, if you like math). I find it absolutely bizarre which leads me to deem the issue a bug with Chromium on Linux.

To prove this, I made a simple test case, which I then ran inside VirtualBox running Ubuntu 11. Please feel free to try it, although I'm pretty sure it will fail in the same way on Linux. Therefore, I can only suggest filing a bug report for Chromium, based on all of the reasoning given above.

contradictioned commented 12 years ago

Okay, thanks for that. While playing around with the degrees, I have discovered this behaviour too, seems really strange.

Well, I join filing a bug for Chromium...